$(function(){ var _window = $(window); var _body = $("body"); var userAgent = navigator.userAgent; var width_change = 0; _window.on('scroll', function(event) { var scrollTop = _window.scrollTop(); if(scrollTop > 0){ _body.addClass('is-sticky'); }else{ _body.removeClass('is-sticky'); } }); // 首頁主廣告 // if($(".slide-main-item").length>=1){ // $(".slide_main").owlCarousel({ // loop : true, // items : 1, // nav : true, // navText : ['',''], // dots:true, // autoplay:true, // navSpeed:1000, // autoplayTimeout:9000, // autoplaySpeed:1000, // dotsSpeed:1000, // }); // }; if(_window.width() <= 1024){ width_change = 1024; var nav_n = false; $('.menu-b').on('click',function(){ if(!nav_n){ nav_n = true; $(this).addClass('close'); $('#navbg,#navBox').addClass('open-nav'); $('body').addClass('overflow-hidden'); }else{ nav_n = false; $(this).removeClass('close'); $('#navbg,#navBox').removeClass('open-nav'); $('body').removeClass('overflow-hidden'); } }); $('#navbg').on('click',function(){ nav_n = false; $('.menu-b').removeClass('close'); $('#navbg,#navBox').removeClass('open-nav'); $('body').removeClass('overflow-hidden'); }); $('.area').on('click',function(){ $(this).toggleClass('open'); $('.project').removeClass('open'); }); $('.project').on('click',function(){ $(this).toggleClass('open'); $('.area').removeClass('open'); }); //menu開合 if(/Windows/i.test(userAgent)){ $('#header-nav').on('click','.nav-title-m',function(){ var n = $(this).parent(".open").length; $('#header-nav .nav-item').removeClass('open'); $('#header-nav .nav-subitem').removeClass('open-sub'); if(n == 0){ $(this).parent(".nav-item").addClass('open'); } }).on(' click','.subtitle',function(){ var n = $(this).parent(".open-sub").length; $('#header-nav .nav-subitem').removeClass('open-sub'); if(n == 0){ $(this).parent(".nav-subitem").addClass('open-sub'); } }); }else{ $('#header-nav').on('click','.nav-title-m',function(){ var n = $(this).parent(".open").length; $('#header-nav .nav-item').removeClass('open'); $('#header-nav .nav-subitem').removeClass('open-sub'); if(n == 0){ $(this).parent(".nav-item").addClass('open'); } }).on(' click','.subtitle',function(){ var n = $(this).parent(".open-sub").length; $('#header-nav .nav-subitem').removeClass('open-sub'); if(n == 0){ $(this).parent(".nav-subitem").addClass('open-sub'); } }); } }else{ $('.shopbox').on('mouseleave',function(){ var _this_user=$(this).find('.userbox'), _this_shop=$(this).find('.shopping-cartbox'); if(_this_user.length==1){ $('.userbox').removeClass('open'); }else if(_this_shop.length==1){ $('.shopping-cartbox').removeClass('open'); } }); } _window.on('resize',function(){ if(_window.width() <= 1024 && width_change != 1024){ width_change = 1024; var nav_n = false; $('.menu-b').on('click',function(){ if(!nav_n){ nav_n = true; $(this).addClass('close'); $('#navbg,#navBox').addClass('open-nav'); $('body').addClass('overflow-hidden'); }else{ nav_n = false; $(this).removeClass('close'); $('#navbg,#navBox').removeClass('open-nav'); $('body').removeClass('overflow-hidden'); } }); $('#navbg').on('click',function(){ nav_n = false; $('.menu-b').removeClass('close'); $('#navbg,#navBox').removeClass('open-nav'); $('body').removeClass('overflow-hidden'); }); //menu開合 if(/Windows/i.test(userAgent)){ $('#header-nav').on('click','.nav-title-m',function(){ var n = $(this).parent(".open").length; $('#header-nav .nav-item').removeClass('open'); $('#header-nav .nav-subitem').removeClass('open-sub'); if(n == 0){ $(this).parent(".nav-item").addClass('open'); } }).on(' click','.subtitle',function(){ var n = $(this).parent(".open-sub").length; $('#header-nav .nav-subitem').removeClass('open-sub'); if(n == 0){ $(this).parent(".nav-subitem").addClass('open-sub'); } }); }else{ $('#header-nav').on('click','.nav-title-m',function(){ var n = $(this).parent(".open").length; $('#header-nav .nav-item').removeClass('open'); $('#header-nav .nav-subitem').removeClass('open-sub'); if(n == 0){ $(this).parent(".nav-item").addClass('open'); } }).on(' click','.subtitle',function(){ var n = $(this).parent(".open-sub").length; $('#header-nav .nav-subitem').removeClass('open-sub'); if(n == 0){ $(this).parent(".nav-subitem").addClass('open-sub'); } }); } } }); //點擊率 $(".HITS_BT").on("click",function(e){ e.preventDefault(); if( $.isNumeric($(this).attr('hid')) && $.isNumeric($(this).attr('hdid')) ){ var hid = $(this).attr('hid'); var hdid = $(this).attr('hdid'); var url = $(this).attr('href'); var target = $(this).attr('target'); $.ajax({ url:"/ajax/ajax_add_ad_hits-p.php", type:"POST", cache:false, async:false, data:{Hid: hid , Hdid : hdid}, error:function(d){ alert('網路連線過慢,網頁請重新整理'); }, success:function(d){ if(url){ if(target == '_blank'){ window.open(url); }else if( ( typeof target === 'undefined' ) || (target == '') ){ window.location = url; }else{ } } } }); }else{ alert('這是錯誤的連結'); } }); }); var pageCode = function(option) { var sets = { type : '', contentBoxId : 'Main_Content', pageBox : 'pagebox', pageClass : 'page', nowClass : 'now', mainClass : 'Main_Page' }; var _this = this; //更新設定 $.extend(sets, option); //取得參數 this.params = function() { }; //初始化JS this.init = function() { //取得現在頁數 var now = $('.'+sets.pageBox).find('.'+sets.nowClass).eq('0').attr('send'); $('#'+sets.contentBoxId).on('click','.'+sets.pageClass,function(){ var change = $(this).attr('send'); //和原本的頁數相同時不動作 if(sets.now == change) { return false; } //取得其他參數 var params = _this.params(); _this.update('page='+change+'&'+params); //更新現在頁數 now = $('.'+sets.pageBox).find('.'+sets.nowClass).eq('0').attr('send'); }); }; //更新頁面 this.update = function(data) { //檢查類型設定 if(!sets.type) { alert('請先設定類型'); return false; } var post = 'type='+sets.type; if(data) { post += '&'+data; } $.ajax({ url:'/ajax/ajax_change_page.php', type:'POST', data:post, cache:false, success:function(d) { $('#'+sets.contentBoxId).html(d); } }); }; } function changeCartNum(num){ $('a .cartAmount').html(num); } // ========================================================== // input 數字加減功能 // ========================================================== ;(function($) { $('.amount-wrapper').each(function(i, item) { const target = $(item).find('.amountBox') const targetStep = target.attr('step') * 1 || 1 const targetMax = target.attr('max') * 1 || 99 const targetMin = target.attr('min') * 1 || 0 $(this).on('click', '.fa-minus', function(e) { if(target.val() > targetMin) { const value = target.val() || 0 target.val(value * 1 - targetStep) } }) $(this).on('click', '.fa-plus', function(e) { if(target.val() < targetMax) { const value = target.val() || 0 target.val(value * 1 + targetStep) } }) }) })($) $(function(){ //==================================================== // 字體大小按鈕 start //==================================================== //普通字體 $(".font-size-normal-btn").on("click", function(){ let body = $("body") if(!body.hasClass("font-size-normal")){ body.removeClass("font-size-big").addClass("font-size-normal") } $.ajax({ url:'/ajax/ajax_set_font_size.php', data:{type:'font-size-normal'}, type:'POST' }); }) //大字體 $(".font-size-big-btn").on("click", function(){ let body = $("body") if(!body.hasClass("font-size-big")){ body.removeClass("font-size-normal").addClass("font-size-big") } $.ajax({ url:'/ajax/ajax_set_font_size.php', data:{type:'font-size-big'}, type:'POST' }); }) //==================================================== // 字體大小按鈕 end //==================================================== //==================================================== // 搜尋 start //==================================================== $(".search-btn").on("click", function(){ let keyword = $("#siteSearch").val(); let site = $(this).attr("site"); if(keyword){ window.open("https://www.google.com/search?sitesearch="+site+"&as_q="+keyword) } }) //enter觸發 $("#siteSearch").keyup(function(e){ if(e.keyCode === 13){ $(".search-btn").click() } }) //==================================================== // 搜尋 end //==================================================== //==================================================== // navbar 開關 start //==================================================== //第二層 $(window).on("load resize", function(){ $(".nav-box").off("mouseenter mouseleave click", ".nav-items") $(".nav-sub-item").off("click") let screenWith = document.body.clientWidth if(screenWith < 1200){ $(".nav-box").on("click", ".nav-items", function(e){ //平板手機點第一層不觸發連結 if(($(e.target).parents(".nav-main-item").length > 0) || $(e.target).hasClass("nav-main-item")){ e.preventDefault() } if(!$(this).hasClass("open")){ //平板的話關閉其他open if(screenWith > 575){ $(".nav-items").removeClass("open") } $(this).addClass("open") }else if(($(this).hasClass("open") && ($(e.target).parents(".nav-main-item").length > 0) || $(e.target).hasClass("nav-main-item"))){ $(this).removeClass("open") $(this).find(".nav-sub-item").removeClass("open-third") } }) }else{ $(".nav-items").on("mouseenter", function(){ if(!$(this).hasClass("open")){ $(this).addClass("open") } }) $(".nav-items").on("mouseleave", function(){ if($(this).hasClass("open")){ $(this).removeClass("open") } }) } //如果由漢堡選單轉為橫式選單移除open不然會疊在一起 if((screenWith > 575) & $(".nav-items.open").length > 1){ $(".nav-items").removeClass("open") } //第三層 if(screenWith <= 575){ $(".nav-sub-item").on("click", function(e){ if($(this).next().hasClass("nav-third-group")){ e.preventDefault() if(!$(this).hasClass("open-third")){ $(this).addClass("open-third") }else{ $(this).removeClass("open-third") } } }) }else{ $(".nav-items").off("click") } }) //==================================================== // navbar 開關 end //==================================================== //==================================================== // navbar 最後的子選單超出螢幕則換邊 start //==================================================== $(window).on("load resize", function(){ let target = $(".nav-items:last-of-type"), targetOffsetX = target.offset().left, targetWidth = target.width(), screenWidth = document.body.clientWidth, itemOffset = 76, //子選單有tag時超出的長度 finalOffset = 0 if(screenWidth > 575){ //如果超出螢幕長度就換邊 if((screenWidth - targetOffsetX - targetWidth - itemOffset) <= 0){ finalOffset = -1 * itemOffset } target.find(".nav-sub-items.with-tag").css({ "left": finalOffset + "px" }) } }) //==================================================== // navbar 最後的子選單超出螢幕則換邊 end //==================================================== //==================================================== // 手機板漢堡排 start //==================================================== $(window).on("load", function(){ $(".header .burger-group").on("click", function(){ if($(this).hasClass("open")){ $(this).removeClass("open") $(".header .nav-container").removeClass("open") }else{ $(this).addClass("open") $(".header .nav-container").addClass("open") } }) }) //==================================================== // 手機板漢堡排 end //==================================================== //==================================================== // 回頁首 end //==================================================== $('#goTop').on('click',function(){ $("html,body").animate({scrollTop: 0},800); }); $(window).on('scroll', function(event) { let scrollTop = $(window).scrollTop(); let topBtn = $("#goTop") let bottom = ($(document).height() - $(window).height() - scrollTop) if(scrollTop>0){ topBtn.css("opacity","1"); }else{ topBtn.css("opacity","0"); } //200為預設的bootom,topBtn.height()/2是要讓按鈕卡在中間 if((bottom - topBtn.height()/2) <= ($(".footer").height() - 200)){ topBtn.css("bottom",($(".footer").height() - bottom - topBtn.height()/2)+"px") }else{ topBtn.css("bottom","200px") } }) //==================================================== // 回頁首 end //==================================================== //==================================================== // 通用側欄點擊 start //==================================================== //外層主選單 $(".aside-item").on("click", function(e){ //若有子選單且非點選子選單取消動作 let subMenu = $(this).find(".aside-sub-group") if((subMenu.length > 0) && $(e.target).hasClass("aside-link")){ e.preventDefault() } //開關 if(!$(this).hasClass("now")){ //先除掉其他開啟中的側欄主選單 $(".aside-item").removeClass("now") $(this).addClass("now") }else if($(e.target).hasClass("aside-link")){ //若點選主選單才動作 子選單不觸發 $(this).removeClass("now") } }) //==================================================== // 通用側欄點擊 end //==================================================== //==================================================== // 圖文模組多圖輪播 start //==================================================== $(".block10-carouselPic-carousel").owlCarousel({ dots: true, nav: false, navText : ['',''], responsive: { 0: { items: 1, margin: 0 }, 481: { items: 2, margin: 11 }, 768: { items: 3, margin: 11 }, 1200: { items: 4, margin: 20 } } }) $(document).on("click", ".block10-carouselPic-item", function(){ let target = $("#" + $(this).parents(".block10-carouselPic-group").data("target")) let itemSrc = $(this).find(".block10-carouselPic-pic").prop("src") let itemText = $(this).find(".block10-carouselPic-text").text() target.find(".block10-singlePic-shadow").prop("src", itemSrc) target.find(".block10-singlePic-text").text(itemText) }) //==================================================== // 圖文模組多圖輪播 end //==================================================== //==================================================== // 各頁banner輪播 start //==================================================== if($(".banner-carousel .banner-item").length>=1){ $(".banner-carousel").owlCarousel({ items:1, nav : false, dots:false, autoplay:true, loop:true }); } //==================================================== // 各頁banner輪播 end //==================================================== }) //==================================================== //更新頁碼 start //==================================================== function updatePage(page_data){ let total = parseInt(page_data[0].total_page); let now = parseInt(page_data[0].now_page); //now不是第一頁就n-1是第一頁就1 let prev = (now !== 1) ? (now - 1) : 1 //now不是最後頁就n+1是最後頁就n let next = (now !== total) ? (now + 1) : (now) let pagesHtml = `` if(total <= 1){ //只有一頁隱藏 $('.pagebox:not(.hide)').addClass("hide") }else if(total === 2){ //只有兩頁判斷誰是now $('.pagebox').removeClass("hide") pagesHtml = ` ` }else if(total > 2){ $('.pagebox').removeClass("hide") //三頁以上 分now為第一 最後 中間 三種情況 if(now === 1){ pagesHtml = ` ` }else if(now === total){ pagesHtml = ` ` }else{ pagesHtml = ` ` } } $(".pagebox-first").data("page", 1) $(".pagebox-last").data("page", total) $(".pagebox-prev").data("page", prev) $(".pagebox-next").data("page", next) $(".pagebox-now").text(now) $(".pagebox-end").text(total) $(".pagebox-pages").html(pagesHtml) } //==================================================== //更新頁碼 start //====================================================