PageSourceSearch

https://www.pinsen-dental.com.tw/assets/frontend/javascript/active.js

js pinsen-dental.com.tw collected 2026-10-07 21:53:17 UTC 18,150 bytes, 582 lines download raw bytes

1// 寬版設定
2//$(window).on('load', function() {
3//    $('.page-container').attr('class', 'container-fluid page-container');
4//    window.closeLoading() //執行完js,Loading 再消失
5//});
6
7!(function (window, $) {
8
9    $(function () {
10
11        // fotorama 產品內頁lightBox
12        // 1.取得當前元素的fotorama 設定 關掉click 與 開啟全屏
13        var $fotoramaDiv = jQuery('.fotorama').fotorama({
14            click: false,
15            allowfullscreen: true,
16        });
17
18        // 2. 取得object的API
19        var fotorama = $fotoramaDiv.data('fotorama');
20
21        // 3. 註冊點擊事件
22        $('.fotorama__stage__shaft').click(function () {
23            fotorama.requestFullScreen();
24        });
25
26        // 手機版本選單
27        $(".mobile-nav-btn").click(function () {
28            $("html").toggleClass("overflow");
29        });
30
31        $(window).resize(function () {
32            if (window.innerWidth > 992) {
33                $("html").removeClass("overflow");
34            }
35        });
36
37
38        // Scroll Up
39        $.scrollUp({
40            scrollText: '<i class="fa fa-angle-up"></i>',
41            easingType: 'linear',
42            scrollSpeed: 900,
43            animation: 'slide'
44        })
45        //選單按鈕
46        $('.js_btn_navmenu').on('click', function (e) {
47            e.preventDefault();
48            $('body').toggleClass('js_btn_navmenu_open')
49            //let h = window.innerHeight
50            // $('body').css("height",h)
51            $('body').css("position", "fixed")
52            //$(".js_btn_navmenu_text").css("height",h)
53        });
54        $('.js_btn_navmenu_bg, .js_btn_navmenu_close').on('click', function (e) {
55            e.preventDefault();
56            $('body').toggleClass();
57            // $('body').css("height", "100%")
58            $('body').css("position", "relative")
59            $(".js_btn_navmenu_text").css("height", "100%")
60        });
61        $('.js-nav-btnopen').click(function () {
62            $(this).toggleClass('close');
63            $('.meninmenu').toggleClass('d-block');
64
65
66        });
67        $('.js-nav-btnopen.close').click(function () {
68            $('.meninmenu').toggleClass('d-none');
69        });
70
71
72
73
74        //文字行數限制
75        $(function () {
76            var len = 2;
77            $(".JQellipsis").each(function (i) {
78                if ($(this).text().length > len) {
79                    $(this).attr("title", $(this).text());
80                    var text = $(this).text().substring(0, len - 1) + "...";
81                    $(this).text(text);
82                }
83            });
84        });
85
86
87        //訂單隱藏
88        $(".js-cart-btn").click(function () {
89            $(".js-cart-open").slideToggle();
90        });
91
92
93        //右側icon
94        // $(".js-btn-icon_Community").click(function () {
95        //     $(".js-icon_Community").toggleClass("active");
96        // });
97
98
99        // Mobile Menu
100        $('nav.mobilemenu__nav').meanmenu({
101                meanMenuClose: 'X',
102                meanMenuCloseSize: '18px',
103                meanScreenWidth: '991',
104                meanExpandableChildren: true,
105                meanMenuContainer: '.mobile-menu',
106                onePage: true,
107                meanExpand: "+",
108                meanContract: "–"
109
110
111
112            })
113
114            // Sticky Header
115            !(function stickyHeader() {
116                $(window).on('scroll', function () {
117                    var sticky_menu = $('body')
118                    var pos = sticky_menu.position()
119                    if (sticky_menu.length) {
120                        var windowpos = sticky_menu.top
121                        $(window).on('scroll', function () {
122                            var windowpos = $(window).scrollTop()
123                            if (windowpos > pos.top + 250) {
124                                sticky_menu.addClass('is-sticky')
125                            } else {
126                                sticky_menu.removeClass('is-sticky')
127                            }
128                        })
129                    }
130                })
131            }())
132
133            // Cartbox Toggler
134            !(function cartboxToggler() {
135                var trigger = $('.block__active'),
136                    container = $('.block_content')
137
138                trigger.on('click', function (e) {
139                    e.preventDefault()
140                    container.toggleClass('is-visible')
141                })
142                $('.close__wrap').on('click', function () {
143                    container.removeClass('is-visible')
144                })
145            }())
146
147            // Search Toggler
148            !(function searchToggler() {
149                var trigger = $('.search__active'),
150                    container = $('.search_active')
151
152                trigger.on('click', function (e) {
153                    e.preventDefault()
154                    container.toggleClass('is-visible')
155                })
156                $('.close__wrap').on('click', function () {
157                    container.removeClass('is-visible')
158                })
159            }())
160
161            // Cart Setting Toggler
162            !(function cartSettingToggler() {
163                var trigger = $('.cartbox_active')
164                var container = $('.minicart__active')
165                var settingTrigger = $('.setting__active')
166                var settingLang = $('.setting_lang_active')
167                var settingContainer = $('.setting__block')
168                var settingLangContainer = $('.setting_lang_block')
169
170                trigger.on('click', function (e) {
171                    e.preventDefault()
172                    settingContainer.removeClass('is-visible')
173                    container.toggleClass('is-visible')
174                })
175
176                trigger.on('click', function (e) {
177                    e.preventDefault()
178                    container.toggleClass('')
179                })
180
181                $('.micart__close').on('click', function () {
182                    container.removeClass('is-visible')
183                })
184
185                settingTrigger.on('click', function (e) {
186                    e.preventDefault()
187                    container.removeClass('is-visible')
188                    settingContainer.toggleClass('is-visible')
189                })
190
191                settingTrigger.on('click', function (e) {
192                    e.preventDefault()
193                    settingContainer.toggleClass('')
194                })
195                settingLang.on('click', function (e) {
196                    e.preventDefault()
197                    container.removeClass('is-visible')
198                    settingLangContainer.toggleClass('is-visible')
199                })
200
201                settingLang.on('click', function (e) {
202                    e.preventDefault()
203                    settingLangContainer.toggleClass('')
204                })
205            }())
206
207            // Setting Option
208            !(function settingOption() {
209                var settingItem = $('.currency-trigger')
210
211                settingItem.on('click', function () {
212                    $(this).siblings('.switcher-dropdown').toggleClass('is-visible')
213                })
214            }())
215
216        // Content Slider
217        $('.ya-content-slider').owlCarousel({
218            loop: false,
219            items: 1,
220            lazyLoad: true,
221            nav: false,
222            autoplay: true
223        })
224
225        // Banner Slider
226        $('.slide__activation').owlCarousel({
227            loop: true,
228            margin: 0,
229            nav: true,
230            // video: true,
231            // autoplay: true,
232            // autoplayTimeout: 10000,
233            // animateOut: 'fadeOut',
234            items: 1,
235            navText: ['<i class="fas fa-angle-left"></i>', '<i class="fas fa-angle-right"></i>'],
236            dots: false,
237            lazyLoad: true,
238            // responsive: {
239            //     0: {
240            //         items: 1
241            //     },
242            //     1920: {
243            //         items: 1
244            //     }
245            // }
246        })
247
248        $('.product__slide--6').owlCarousel({
249            loop: false,
250            margin: 0,
251            nav: false,
252            autoplay: false,
253            autoplayTimeout: 10000,
254            items: 4,
255            navText: ['<i class="fas fa-angle-left"></i>', '<i class="fas fa-angle-right"></i>'],
256            dots: true,
257            lazyLoad: true,
258            responsive: {
259                0: {
260                    items: 5
261                },
262                576: {
263                    items: 8
264                },
265                768: {
266                    items: 8
267                },
268                991: {
269                    items: 8
270                },
271                1920: {
272                    items: 12
273                }
274            }
275        });
276
277        // Brand Banner Slider
278        $('.brand__activation').owlCarousel({
279            loop: false,
280            margin: 0,
281            nav: true,
282            autoplay: false,
283            autoplayTimeout: 10000,
284            items: 6,
285            navText: ['<i class="fas fa-angle-left"></i>', '<i class="fas fa-angle-right"></i>'],
286            dots: false,
287            lazyLoad: true,
288            responsive: {
289                0: {
290                    items: 2
291                },
292                1920: {
293                    items: 6
294                },
295                768: {
296                    items: 5
297                },
298                576: {
299                    items: 4
300                },
301                420: {
302                    items: 3
303                }
304            }
305        })
306
307        $('.instagram__activation').owlCarousel({
308            loop: true,
309            margin: 0,
310            nav: false,
311            autoplay: false,
312            autoplayTimeout: 10000,
313            items: 7,
314            dots: false,
315            lazyLoad: true,
316            responsive: {
317                0: {
318                    items: 2
319                },
320                992: {
321                    items: 7
322                },
323                768: {
324                    items: 5
325                },
326                576: {
327                    items: 3
328                }
329            }
330        });
331
332
333
334        // 產品大分類catalog&列表list 輪播
335        $('.productcategory__slide--2, .furniture--5').owlCarousel({
336            loop: false,
337            margin: 0,
338            nav: false,
339            autoplay: false,
340            autoplayTimeout: 10000,
341            items: 3,
342            navText: ['<i class="fas fa-angle-left"></i>', '<i class="fas fa-angle-right"></i>'],
343            dots: true,
344            lazyLoad: true,
345            responsive: {
346                0: {
347                    items: 1
348                },
349                767: {
350                    items: 2
351                },
352                991: {
353                    items: 3
354                },
355                1920: {
356                    items: 3
357                }
358            }
359        })
360
361        // 產品大分類catalog&列表list 輪播
362
363        $('.product__slide--5, .productcategory__slide').owlCarousel({
364            loop: false,
365            margin: 0,
366            nav: false,
367            autoplay: true,
368            autoplayTimeout: 10000,
369            items: 5,
370            navText: ['<i class="fas fa-angle-left"></i>', '<i class="fas fa-angle-right"></i>'],
371            dots: true,
372            lazyLoad: true,
373            responsive: {
374                0: {
375                    items: 1
376                },
377                576: {
378                    items: 2
379                },
380                768: {
381                    items: 4
382                },
383                1920: {
384                    items: 4
385                }
386            }
387        });
388
389        /*=============  Product Activation  ==============*/
390
391        $('.activation--2').owlCarousel({
392            loop: true,
393
394            nav: true,
395            autoplay: false,
396            autoplayTimeout: 10000,
397            items: 2,
398            navText: ['<i class="fas fa-angle-left"></i>', '<i class="fas fa-angle-right"></i>'],
399            dots: false,
400            lazyLoad: true,
401            responsive: {
402                0: {
403                    items: 2
404                },
405                576: {
406                    items: 2
407                },
408                1920: {
409                    items: 2
410                }
411            }
412        });
413
414
415        // 點圖放大lightbox
416        $('.fancybox').fancybox({
417            prevEffect: 'none',
418            nextEffect: 'none',
419            helpers: {
420                title: {
421                    type: 'outside'
422                },
423                thumbs: {
424                    width: 50,
425                    height: 50
426                }
427            }
428        });
429
430        /*============= version_news_01 的圖片輪播 =============*/
431        $('.thumb_active').slick({
432            slidesToShow: 3,
433            slidesToScroll: 1,
434            asNavFor: '.testext_active',
435            dots: false,
436            arrows: false,
437            centerMode: true,
438            focusOnSelect: true,
439            centerPadding: '10px',
440            responsive: [{
441                    breakpoint: 576,
442                    settings: {
443                        dots: false,
444                        slidesToShow: 1,
445                        centerPadding: '0px',
446                    }
447                },
448                {
449                    breakpoint: 769,
450                    settings: {
451                        autoplay: true,
452                        dots: false,
453                        slidesToShow: 2,
454                        centerMode: false,
455                    }
456                },
457                {
458                    breakpoint: 420,
459                    settings: {
460                        autoplay: true,
461                        dots: false,
462                        slidesToShow: 1,
463                        centerMode: false,
464                    }
465                }
466            ]
467        });
468        // 滑動觸發 slick。
469        $('.js-thumb_active-hover').find('.js-clint__info').hover(function () {
470            var index = $('.js-thumb_active-hover').find('.js-clint__info').index(this);
471
472            $('.js-thumb_active-hover').slick('slickGoTo', index);
473        }, function () {});
474        /*=============  version_news_04 的圖左文右輪播   ==============*/
475
476        $('.blog__activation').owlCarousel({
477            loop: true,
478            margin: 0,
479            nav: false,
480            autoplay: false,
481            autoplayTimeout: 10000,
482            items: 2,
483            navText: ['<i class="fas fa-angle-left"></i>', '<i class="fas fa-angle-right"></i>'],
484            dots: false,
485            lazyLoad: true,
486            responsive: {
487                0: {
488                    items: 1
489                },
490                768: {
491                    items: 1
492                },
493                992: {
494                    items: 2
495                }
496            }
497        });
498        /*========= Video影片 ===========*/
499
500        var video_frame_w = $('.img_static').outerWidth();
501        var video_frame_h = $('.img_static').outerHeight();
502
503        $('#cms_play').on('click', function () {
504            $(this).hide('fast');
505            $(".img_static").fadeOut('fast');
506            $('.static_video').append('<iframe class="added_video" width="' + video_frame_w + 'px" height="' + video_frame_h + 'px" src="' + $(this).data('video') + '" frameborder="0"></iframe>');
507        });
508
509
510        $('.testext_active').slick({
511            slidesToShow: 1,
512            slidesToScroll: 1,
513            arrows: true,
514            draggable: false,
515            prevArrow: '<button type="button" class="wen-slick-prev"><i class="fas fa-angle-left"></i></button>',
516            nextArrow: '<button type="button" class="wen-slick-next"><i class="fas fa-angle-right"></i></button>',
517            fade: true,
518            dots: false,
519            asNavFor: '.thumb_active'
520        });
521        // =============漢堡側拉================//
522        $('#hamber').find('a').click(function () {
523            var kk = $(this).parent();
524            $('#slidemeun').toggleClass('stay');
525            $('#slidemeun').slideToggle('fast');
526            kk.toggleClass('stay');
527            $('#company_logo').toggleClass('stay');
528            $('#wchang').toggleClass('stay')
529        })
530        // =============pc_menu================//
531
532        // 範本 14 - Lightbox
533        $('.default-demo').slickLightbox();
534
535        // blog 醫療團隊頁
536        function handleNewsClistNodateCardSubtitleH() {
537            const subtitles = document.querySelectorAll('.js-item-subtitle');
538
539            if(subtitles.length <= 0) return;
540
541            const heights = Array.from(subtitles).map(el => el.offsetHeight);
542            const maxHeight = Math.max(...heights);
543
544            subtitles.forEach((sub) => {
545                Object.assign(sub.style, {
546                    height: `${maxHeight}px`,
547                });
548            })
549        }
550        handleNewsClistNodateCardSubtitleH();
551
552
553
554
555        // 錨點
556        document.addEventListener('DOMContentLoaded', () => {
557          // 監聽頁面上所有以 # 開頭的 a 標籤點擊事件
558          document.querySelectorAll('a[href^="#"]').forEach(anchor => {
559            anchor.addEventListener('click', function (e) {
560              const targetId = this.getAttribute('href');
561              
562              // 如果只有 "#" 則不做任何處理
563              if (targetId === '#') return;
564              
565              const targetElement = document.querySelector(targetId);
566              
567              if (targetElement) {
568                e.preventDefault(); // 阻擋預設的硬跳轉行為
569                
570                // 觸發平滑捲動(高度會自動套用 CSS 的 scroll-margin-top: 150px)
571                targetElement.scrollIntoView({
572                  behavior: 'smooth'
573                });
574                
575                // 可選:更新網址列 hash(不觸發跳轉)
576                history.pushState(null, null, targetId);
577              }
578            });
579          });
580        });
581    })
582}(window, $))

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.