blob: 9dfc49bb89f325593ffab7a0bd4e7096a49f51ea (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
+function ($) {
'use strict';
$.fn.historyTabs = function() {
var that = this;
window.addEventListener('popstate', function(event) {
console.log(event);
if (event.state) {
$(that).filter('[href="' + event.state.url + '"]').tab('show');
} else {
$(that).filter('[href="#authentication"]').tab('show');
}
});
return this.each(function(index, element) {
$(element).on('show.bs.tab', function() {
var stateObject = {'url' : $(this).attr('href')};
if (stateObject.url !== window.location.hash) {
window.history.pushState(stateObject, document.title, window.location.pathname + $(this).attr('href'));
}
});
if (!window.location.hash && $(element).is('.active')) {
// Shows the first element if there are no query parameters.
$(element).tab('show');
} else if ($(this).attr('href') === window.location.hash) {
$(element).tab('show');
}
});
};
}(jQuery);
|