|
|
|
/* ----------------------------------
|
|
|
|
* TABS v1.0.0
|
|
|
|
* Licensed under The MIT License
|
|
|
|
* http://opensource.org/licenses/MIT
|
|
|
|
* ---------------------------------- */
|
|
|
|
|
|
|
|
!function () {
|
|
|
|
"use strict";
|
|
|
|
var getTarget = function (target) {
|
|
|
|
var i, popovers = document.querySelectorAll('.segmented-controller li a');
|
|
|
|
for (; target && target !== document; target = target.parentNode) {
|
|
|
|
for (i = popovers.length; i--;) {
|
|
|
|
if (popovers[i] === target) return target;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
window.addEventListener("touchend", function (e) {
|
|
|
|
var activeTab,
|
|
|
|
activeBody,
|
|
|
|
targetBody,
|
|
|
|
targetTab,
|
|
|
|
className = 'active',
|
|
|
|
classSelector = '.' + className,
|
|
|
|
targetAnchor = getTarget(e.target);
|
|
|
|
|
|
|
|
if (!targetAnchor) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
targetTab = targetAnchor.parentNode;
|
|
|
|
activeTab = targetTab.parentNode.querySelector(classSelector);
|
|
|
|
|
|
|
|
if (activeTab) {
|
|
|
|
activeTab.classList.remove(className);
|
|
|
|
}
|
|
|
|
|
|
|
|
targetTab.classList.add(className);
|
|
|
|
|
|
|
|
if (!targetAnchor.hash) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
targetBody = document.querySelector(targetAnchor.hash);
|
|
|
|
|
|
|
|
if (!targetBody) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
activeBody = targetBody.parentNode.querySelector(classSelector);
|
|
|
|
|
|
|
|
if (activeBody) {
|
|
|
|
activeBody.classList.remove(className);
|
|
|
|
}
|
|
|
|
|
|
|
|
targetBody.classList.add(className);
|
|
|
|
});
|
|
|
|
|
|
|
|
window.addEventListener('click', function (e) {
|
|
|
|
if (getTarget(e.target)) e.preventDefault();
|
|
|
|
});
|
|
|
|
}();
|