JQuery選項卡(Tabs)是現今網頁設計中廣泛使用的一種交互方式,可以讓用戶更加便捷的切換不同的內容。但是,當選項卡中的內容很多時,會導致頁面加載速度變慢,影響用戶體驗。為此,我們可以使用JQuery選項卡滑動刷新技術,優化頁面性能。
$(function () { var $tabs = $('.tabs'); var $nav = $tabs.find('.nav'); var $navItems = $nav.find('li'); var $panels = $tabs.find('.panel'); $nav.on('click', 'a', function (e) { e.preventDefault(); var $this = $(this); var panelId = $this.attr('href'); $navItems.removeClass('active'); $panels.removeClass('active'); $this.closest('li').addClass('active'); $(panelId).addClass('active'); }); function refreshTabs() { var $activeNav = $nav.find('.active'); var activeIndex = $navItems.index($activeNav); var panelWidth = $panels.width(); var panelWrapperWidth = $panels.eq(0).parent().width(); var maxOffset = panelWidth * $panels.length - panelWrapperWidth; var offset = -panelWidth * activeIndex; offset = Math.max(offset, -maxOffset); offset = Math.min(offset, 0); $panels.css('transform', 'translateX(' + offset + 'px)'); } $(window).on('resize', refreshTabs); });
以上代碼通過監控Windows窗口的大小變化觸發選項卡的滑動刷新,當用戶改變窗口大小時,選項卡不會卡在原位置,而是根據當前激活選項卡的位置,計算出選項卡應該滑動到的位置。除此之外,該方法還限制了滑動的最大/小距離,以確保選項卡不會滑出邊界。
上一篇java 和javac
下一篇java 和go選型