/* Safari 『強制』禁止縮放 ==================================================*/ document.documentElement.addEventListener('touchstart', function (e) { if (e.touches.length > 1) e.preventDefault(); }, false); var lastTouchEnd = 0; document.documentElement.addEventListener('touchend', function (e) { var now = (new Date()).getTime(); if (now - lastTouchEnd <= 300) e.preventDefault(); lastTouchEnd = now; }, false); var script = function () { var $body = $('html,body'); var winH = $(window).height(); var winW = $(window).width(); var $win = $(window); var scrollBottom = $(window).scrollTop() + $(window).height(); var conH = $('.container').height(); var headerH = $('header').height(); var imagesLoaded = loading(); imagesLoaded.loadfunc(); imagesLoaded.callback = function () { const currentHash = window.location.hash; if (currentHash) { scrollToAnchor(currentHash); } }; $('#myfooter .backtotop').click(function () { $body.animate({ scrollTop: 0 }, 600); }) const $marqueeInput = $('input.marqueeInput'); const $marqueeSpan = $('.marquee span'); $marqueeInput.on('focus', function () { $marqueeSpan.hide(); // alert(121) }); $marqueeInput.on('blur', function () { $marqueeSpan.show(); }); /* 選單 ------------------------------------------------------------*/ function navde() { winW = $(window).width(); // 確保重新抓取寬度 $('.burger').attr('toggle', '0').removeClass('isclick'); if (winW > 1024) { $('.nav, .mainnav').show(); // 桌機版顯示 $('body,html').css({ 'overflow': '', 'height': '' }); } else { $('.nav, .mainnav').hide(); // 手機版預設隱藏 } } navde(); $('.burger').off('click').on('click', function () { var menuOpen = $(this).attr('toggle'); if (menuOpen == 0) { $('.nav, .mainnav').stop().slideDown(); // 展開 $(this).attr('toggle', '1').addClass('isclick'); $('body,html').css({ 'overflow': 'hidden', 'height': '100vh' }); } else { $('.nav, .mainnav').stop().slideUp(); // 收合 $(this).attr('toggle', '0').removeClass('isclick'); $('body,html').css({ 'overflow': '', 'height': '' }); } }); // 內頁選單select //var thispage = $('body').data('p'); var classList = $('section').attr('class'); var thispage = classList ? classList.split(' ')[0] : ''; console.log(thispage); // var thisrule = $('.wrapper').data('rule'); function navselect() { $('#myheader').find('.nav').find('li[data-p="' + thispage + '"]').addClass('select'); // $('#_foldheader').find('.nav').find('li[data-p="' + thispage + '"]').addClass('select'); // $('#_tabheader').find('.nav').find('li[data-p="' + thispage + '"]').addClass('select'); // $('#_waheader').find('.nav').find('li[data-p="' + thispage + '"]').addClass('select'); // rule // $('#rulesubnav').find('.ruletopbtn').find('a[data-rule="' + thisrule + '"]').addClass('select'); // $('#tabsubnav').find('.ruletopbtn').find('a[data-rule="' + thisrule + '"]').addClass('select'); // $('#wasubnav').find('.ruletopbtn').find('a[data-rule="' + thisrule + '"]').addClass('select'); } navselect() //選單改變顏色 if ($('.rule-how').length) { $('._Note20ultra .capacities label').on('click', function () { $('._Note20ultra #note20ultracolor2').prop("checked", true); }) $('._Note20 .capacities label').on('click', function () { $('._Note20 #note20color3').prop("checked", true); }) $('._Galaxys22 .capacities label').on('click', function () { $('._Galaxys22 #galaxys22color3').prop("checked", true); }) } /* QA ------------------------------------------------------------*/ $('.qna').find('.box').each(function () { $(this).click(function () { $(this).toggleClass('isopen'); if ($(this).hasClass('isopen')) { $(this).find('.txt').slideDown(); } else { $(this).find('.txt').slideUp(); } }) }) /* 熱銷通路切換 -----------------------------------------------------*/ var thisPath = 1, prevPath = '', $btn_tab = $('.soldout .tabbox .tab'); var pathPagechange = function () { if (thisPath !== prevPath) $('.soldout .btnlist').css({ 'opacity': 0, 'z-index': -1, 'height': 0 }) $('.soldout .btnlist[data-list="' + thisPath + '"]').css({ // 'opacity':1, 'height': 'auto', 'z-index': 1 }) var pathAni = new TimelineMax(); pathAni.to($('.soldout .btnlist[data-list ="' + thisPath + '"]'), .3, { css: { opacity: 1, height: 'auto' }, ease: Linear.easeNone }); $btn_tab.removeClass('select'); $btn_tab.eq(thisPath - 1).addClass('select'); prevPath = thisPath; } pathPagechange(thisPath); $btn_tab.click(function () { var $this = $(this); if ($this.hasClass('js-justLink')) return; thisPath = $this.index(); pathPagechange(); }); // tab切換效果 $btn_tab.click(function () { var _ind = $(this).index() - 1, _w = $(this).outerWidth(true); if (_ind === 2) return; TweenMax.to($(this).parent().find('.ovr'), .3, { left: _ind * _w, ease: Quart.easeInOut }); }) /* promo ------------------------------------------------------------*/ // 主選切換 var thisS4 = 0, prevS4 = '', $btn_sec4 = $('.promobox .tabbox .tab'); var sec4Pagechange = function () { if (thisS4 !== prevS4) $('.promobox .inner').fadeOut(0); $('.promobox .inner[data-inner ="' + thisS4 + '"]').fadeIn(500); $btn_sec4.removeClass('select'); $btn_sec4.eq(thisS4).addClass('select'); prevS4 = thisS4; } sec4Pagechange(thisS4); $btn_sec4.click(function () { thisS4 = $(this).index(); sec4Pagechange(); }); //副選單 $('.promobox .inner').each(function () { $(this).find('.submenu').find('li').each(function () { $(this).click(function () { var _ind = $(this).index(); var _thispos = $(this).closest('.inner').find('.listing').find('.one').eq(_ind).offset().top; $body.animate({ scrollTop: _thispos }, 600); }) }) }) /* ses_rule 活動辦法 -----------------------------------------------------*/ // 展開/收合按鈕 $('.secrule.ses').find('.stepbox').each(function () { $(this).find('.btnopen').click(function () { $(this).toggleClass('isclick'); const $inner = $(this).closest('.stepbox').find('.inner'); if ($(this).hasClass('isclick')) { $inner.slideDown(400, function () { }); } else { $inner.slideUp(); } }); }); // 錨點捲動邏輯 function scrollToAnchor(hash) { if (!hash || hash === "#") return; const cleanHash = hash.replace('#', ''); const $target = $('[data-anchor="#' + cleanHash + '"]'); if ($target.length) { setTimeout(function () { const gnbH = $('#static_header_gnb').outerHeight() || 0; const myHeaderH = $('#myheader').outerHeight() || 0; const totalOffset = gnbH + myHeaderH; const targetPos = $target.offset().top - totalOffset; TweenMax.killTweensOf([$('html, body'), window]); TweenMax.to($('html, body'), 0.5, { scrollTop: targetPos, ease: Power2.easeOut, overwrite: "all" }); }, 10); } } // 初始化:檢查網址列是否有 Hash $(window).on('load', function () { const currentHash = window.location.hash; if (currentHash) { setTimeout(function () { scrollToAnchor(currentHash); }, 100); } }); // 監聽網址 Hash $(window).on('hashchange', function () { scrollToAnchor(window.location.hash); }); // 自動隨捲動更新網址 $(window).scroll(function () { const scrollTop = $(window).scrollTop(); const offset = ($('#myheader').outerHeight() || 0) + 150; $('[data-anchor]').each(function () { const top = $(this).offset().top - offset; const bottom = top + $(this).next().outerHeight() + 200; const anchorName = $(this).attr('data-anchor'); if (scrollTop >= top && scrollTop < bottom) { if (window.location.hash !== anchorName) { history.replaceState(null, null, anchorName); } } }); }); /* Fold7 rule how ------------------------------------------------------------*/ var $ruleFold = $('.rule-how ._zfold4'), $ruleFoldInput = $ruleFold.find('input'); $ruleFoldInput.each(function () { $(this).click(function () { if ($ruleFold.find('#zfoldcapacity1').is(":checked")) { $ruleFold.find('#zfoldcolor1').prop('checked', true); $ruleFold.find('#zfoldcolor2,#zfoldcolor3').click(function () { $(this).prop('checked', true); }) } if ($ruleFold.find('#zfoldcapacity2').is(":checked")) { $ruleFold.find('#zfoldcolor1').prop('checked', true); $ruleFold.find('#zfoldcolor2,#zfoldcolor3').click(function () { $(this).prop('checked', true); }) } }) }) /* watch rule how ------------------------------------------------------------*/ var $ruleWa6 = $('.rule-how ._wa6'), $ruleWa6Input = $ruleWa6.find('input'); $ruleWa6Input.each(function () { $(this).click(function () { if ($ruleWa6.find('#wa6type1').is(":checked") && $ruleWa6.find('#wa6capacity2').is(":checked")) { $ruleWa6.find('#wa6color3').prop('checked', true); $ruleWa6.find('#wa6color4').click(function () { $(this).prop('checked', true); }) } if ($ruleWa6.find('#wa6type1').is(":checked") && $ruleWa6.find('#wa6capacity1').is(":checked")) { $ruleWa6.find('#wa6color1').prop('checked', true); $ruleWa6.find('#wa6color2').click(function () { $(this).prop('checked', true); }) } if ($ruleWa6.find('#wa6type2').is(":checked") && $ruleWa6.find('#wa6capacity1').is(":checked")) { $ruleWa6.find('#wa6color5').prop('checked', true); $ruleWa6.find('#wa6color6').click(function () { $(this).prop('checked', true); }) } if ($ruleWa6.find('#wa6type2').is(":checked") && $ruleWa6.find('#wa6capacity2').is(":checked")) { $ruleWa6.find('#wa6color7').prop('checked', true); $ruleWa6.find('#wa6color8').click(function () { $(this).prop('checked', true); }) } }) }) /* result ------------------------------------------------------------*/ $('.more').click(function () { $('.detailcontent').toggleClass('toggle'); }); /* 取消原因 */ $('.lb-reason .selectbox select').click(function () { $('.lb-reason .main').addClass('open'); }); /* resize ------------------------------------------------------------*/ var _resize = function () { winW = $win.width(); winH = $win.height(); docH = $(document).height(); _scroll = $(window).scrollTop(); scrollBottom = $(window).scrollTop() + $(window).height(); headerH = $('header').height(); // promoPos = $('#promo').offset().top; // promoscroll(); // scrollthispage(); navde(); } // $win.scroll(scrollPage); _resize(); $win.resize(function () { _resize(); }); var windowHeight = $(window).height(); // Resize Event $(window).resize(function () { // Check window width has actually changed and it's not just iOS triggering a resize event on scroll if ($(window).width() != windowHeight) { // Update the window width for next time windowHeight = $(window).width(); // Do stuff here _resize(); } }); }; $(function () { //$('#myheader').load('cdn/include/header.html', function () { // $('#myfooter').load('cdn/include/footer.html', function () { // script(); // }); //}); script(); });