summaryrefslogtreecommitdiff
path: root/public/assets/js/_dependency-control/plugins/tabtoggle.js
diff options
context:
space:
mode:
authorGeorge Halkiadakis <gchalkiadakis@sklavenitis.co.gr>2023-04-18 01:11:37 +0300
committerGeorge Halkiadakis <gchalkiadakis@sklavenitis.co.gr>2023-04-18 01:11:37 +0300
commit2b6970d33afd75be5bfef951dc3691d492004d43 (patch)
tree39eba4206ca0c4cd3fecd5ead95580a74e50f3f9 /public/assets/js/_dependency-control/plugins/tabtoggle.js
parent68fc9e55e538e03f94509731ab41a0c8cf96710f (diff)
downloadclassroom-2b6970d33afd75be5bfef951dc3691d492004d43.tar.gz
classroom-2b6970d33afd75be5bfef951dc3691d492004d43.tar.bz2
classroom-2b6970d33afd75be5bfef951dc3691d492004d43.zip
admin back-office environment (skeleton); admin categories
Diffstat (limited to 'public/assets/js/_dependency-control/plugins/tabtoggle.js')
-rw-r--r--public/assets/js/_dependency-control/plugins/tabtoggle.js27
1 files changed, 27 insertions, 0 deletions
diff --git a/public/assets/js/_dependency-control/plugins/tabtoggle.js b/public/assets/js/_dependency-control/plugins/tabtoggle.js
new file mode 100644
index 0000000..84a0508
--- /dev/null
+++ b/public/assets/js/_dependency-control/plugins/tabtoggle.js
@@ -0,0 +1,27 @@
+$$plugins.define('tabtoggle', function (element, options) {
+ var activeTab = element.querySelector(".active");
+ var sliderNav = element.querySelector(".tabToggle__tabs");
+ var activeTabContent = document.querySelector("[data-tabToggle-content].active");
+
+ if (element.querySelector(".tabToggle__tab:nth-child(2)").classList.contains("active")) {
+ sliderNav.classList.add("slide");
+ }
+
+ element.addEventListener("click", function (e) {
+ if (!(e.target.classList.contains("active"))) {
+ activeTab.classList.remove("active");
+ activeTab = e.target;
+
+ activeTab.classList.add("active");
+ sliderNav.classList.toggle("slide");
+ activeTabContent.classList.remove("active");
+ activeTabContent = document.querySelector("[data-tabToggle-content=" + activeTab.dataset.tabtoggleTarget)
+ activeTabContent.classList.add("active");
+
+ window.scrollTo({
+ top: activeTabContent.getBoundingClientRect().top + window.scrollY - document.querySelector(".header").offsetHeight,
+ behavior: 'smooth'
+ });
+ }
+ });
+});