From 68fc9e55e538e03f94509731ab41a0c8cf96710f Mon Sep 17 00:00:00 2001 From: George Halkiadakis Date: Mon, 17 Apr 2023 12:12:22 +0300 Subject: setup a real server environment (apache DocumentRoot=/var/www/public) --- public/assets/js/plugins/tabtoggle.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 public/assets/js/plugins/tabtoggle.js (limited to 'public/assets/js/plugins/tabtoggle.js') diff --git a/public/assets/js/plugins/tabtoggle.js b/public/assets/js/plugins/tabtoggle.js new file mode 100644 index 0000000..84a0508 --- /dev/null +++ b/public/assets/js/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' + }); + } + }); +}); -- cgit v1.2.3