PageSourceSearch

http://www.samsungsds.com/resource/en/js/blog.js?queryString=20260602094608

js samsungsds.com collected 2026-09-24 08:47:08 UTC 65,447 bytes, 1,584 lines download raw bytes

1var searchListMenu;
2
3$(document).ready(function() {
4    var categoryMenu = new categoryMenuBar('.categoryBar');
5    searchListMenu = new categoryMenuBar('.searchListMenu', { hideArrow: true, widthForHideArrow: 1360 });
6    // lazyLoad onload - start
7    // if ($('.lozad').length) {
8    //   var observer = window.lozad();
9    //   observer.observe();
10    // }
11    // lazyLoad onload - end
12
13    // Swiper onload - start
14    var $doc = $(window.document);
15    var fSwiper; // featured article swiper
16    var bSwiper // blog card list swiper
17    var wSwiper // wide card list swiper
18    var tsSwiper // thumb side grayCard list swiper
19    var fourSwiper // Four list swiper
20    var useSwiper_1 // use cases swiper
21    var useSwiper_2 // use cases swiper
22    var themeSol_1 // slideCardBox one list swiper
23    var themeSol_2 // slideCardBox Two list swiper
24    var themeSol_3 // slideCardBox Three list swiper
25    var themeSol_4 // slideCardBox list swiper has slides more than three
26    var themeSol_5 // slideCardBox list swiper has slides more than three
27    var themeSol_6 // slideCardBox list swiper has slides more than three
28    var themeSol_7 // slideCardBox list swiper has slides more than three
29    var themeSol_8 // slideCardBox list swiper has slides more than three
30    var nSwiper // navigation swiper
31    var fSwiperMarginProps;
32    var bSwiperMarginProps;
33    var fourSwiperMarginProps;
34    var useSwiperMarginProps; // use cases swiper
35    var themeSwiperMargin;
36    var wSwiperMarginProps;
37    var tsSwiperMarginProps;
38    var nSwiperMarginProps;
39    var wSwiperOptions;
40    var tsSwiperOptions;
41
42    if ($doc.find('.featured_slide').length) {
43        var fSwiperOptions = {
44            breakpoints: {
45                768: {
46                    slidesPerView: 1,
47                    slidesPerGroup: 1,
48                }
49            },
50            slidesPerView: 3,
51            slidesPerGroup: 3,
52        };
53        fSwiperMarginProps = 0.067 / 2;
54
55        fSwiper = initSwiper('.featured_slide', fSwiperOptions, 768);
56        fSwiper.resize = resizeHandlerWithLoop;
57    }
58
59    // 뉴스룸 > 언론보도 슬라이드
60    if ($doc.find('.navigationSlide').length) {
61        var nSwiperOptions = {
62            slidesPerView: 1,
63            slidesPerGroup: 1,
64            navigation: {
65                nextEl: '.navigationSlide .swiper-button-next',
66                prevEl: '.navigationSlide .swiper-button-prev',
67            },
68            centeredSlides: true,
69        };
70        nSwiper = initSwiper('.navigationSlide', nSwiperOptions, 768);
71    }
72
73    if ($doc.find('.bloggerCardList_swiper').length) {
74        var bSwiperOptions = {
75            breakpoints: {
76                1220: {
77                    slidesPerView: 1,
78                    slidesPerGroup: 1,
79                }
80            },
81            slidesPerView: 5,
82            slidesPerGroup: 5,
83        }
84        bSwiperMarginProps = 0.134 / 4;
85        bSwiper = initSwiper('.bloggerCardList_swiper', bSwiperOptions, 1220);
86        bSwiper.resize = resizeHandlerWithLoop;
87    }
88
89    if ($doc.find('.four_swiper').length) {
90        var fourSwiperOptions = {
91            slidesPerView: 4,
92            slidesPerGroup: 4,
93            breakpoints: {
94                1024: {
95                    slidesPerView: 1,
96                    slidesPerGroup: 1,
97                }
98            }
99        }
100        //fourSwiperMarginProps = 0.134 / 4;
101        $(window).resize(function() {
102            if (SDS_COMMON.currentWidth() >= 1025) {
103                fourSwiper.params.onlyExternal = true;
104                fourSwiper.params.simulateTouch = false;
105            } else {
106                fourSwiper.params.onlyExternal = false;
107                fourSwiper.params.simulateTouch = true;
108            }
109        });
110        fourSwiper = initSwiper('.four_swiper', fourSwiperOptions, 1024);
111        // fourSwiper.resize = resizeHandlerWithLoop;
112    }
113
114    if ($doc.find('.use_1').length) {
115        var useSwiperOptions = {
116            breakpoints: {
117                767: {
118                    slidesPerView: 1,
119                    slidesPerGroup: 1,
120                    loop: true,
121                }
122            },
123            slidesPerView: 3,
124            slidesPerGroup: 3,
125            loop: false,
126        }
127        // useSwiperMarginProps = 0.067 / 2;
128        useSwiperMarginProps = 0.134 / 4;
129        useSwiper_1 = initSwiper('.use_1', useSwiperOptions, 767);
130        useSwiper_1.resize = resizeHandlerWithLoop;
131        useSwiper_1.resize(useSwiper_1, 767, useSwiperMarginProps);
132    }
133    if ($doc.find('.use_2').length) {
134        var useSwiperOptions = {
135            breakpoints: {
136                767: {
137                    slidesPerView: 1,
138                    slidesPerGroup: 1,
139                    loop: true,
140                }
141            },
142            slidesPerView: 3,
143            slidesPerGroup: 3,
144            loop: false,
145        }
146        // useSwiperMarginProps = 0.067 / 2;
147        useSwiperMarginProps = 0.134 / 4;
148        useSwiper_2 = initSwiper('.use_2', useSwiperOptions, 767);
149        useSwiper_2.resize = resizeHandlerWithLoop;
150        useSwiper_2.resize(useSwiper_2, 767, useSwiperMarginProps);
151    }
152
153    // if ($doc.find('.slideCardBox.is_one').length) {
154    if ($doc.find('.sol_1').length) {
155        var themeSol_1Options = {
156            loop: false,
157        }
158        themeSwiperMargin = 0.169 / 4;
159        themeSol_1 = initSwiper('.sol_1', themeSol_1Options, 1024);
160        themeSol_1.resize = resizeHandler;
161    }
162    // if ($doc.find('.slideCardBox.is_two').length) {
163    if ($doc.find('.sol_2').length) {
164        var themeSol_2Options = {
165            loop: false,
166        }
167        themeSwiperMargin = 0.169 / 4;
168        themeSol_2 = initSwiper('.sol_2', themeSol_2Options, 1024);
169        themeSol_2.resize = resizeHandler;
170    }
171    if ($doc.find('.sol_3').length) {
172        var themeSol_3Options = {
173            loop: false,
174        }
175        themeSwiperMargin = 0.169 / 4;
176        themeSol_3 = initSwiper('.sol_3', themeSol_3Options, 1024);
177        themeSol_3.resize = resizeHandler;
178    }
179
180    if ($doc.find('.sol_4').length) {
181        var themeSol_4Options = {
182            loop: false,
183        }
184        themeSwiperMargin = 0.169 / 4;
185        themeSol_4 = initSwiper('.sol_4', themeSol_4Options, 1024);
186        themeSol_4.resize = resizeHandler;
187    }
188
189    if ($doc.find('.sol_5').length) {
190        var themeSol_5Options = {
191            loop: false,
192        }
193        themeSwiperMargin = 0.169 / 4;
194        themeSol_5 = initSwiper('.sol_5', themeSol_5Options, 1024);
195        themeSol_5.resize = resizeHandler;
196    }
197    if ($doc.find('.sol_6').length) {
198        var showPagination = function(paginationContainer) {
199            $(paginationContainer).show();
200        }
201        var themeSol_6Options = {
202            loop: false,
203            navigation: {
204                nextEl: '.swiper-button-next',
205                prevEl: '.swiper-button-prev',
206            },
207            showPagination: showPagination
208        }
209        themeSwiperMargin = 0.169 / 4;
210        themeSol_6 = initSwiper('.sol_6', themeSol_6Options, 1024);
211        themeSol_6.resize = resizeHandler;
212    }
213    if ($doc.find('.sol_7').length) {
214        // var themeSol_7Options = {
215        //   loop: false,
216        // }
217        // themeSwiperMargin = 0.169 / 4;
218
219        // themeSol_7 = initSwiper('.sol_7', themeSol_7Options, 1024);
220        // themeSol_7.resize = resizeHandler;
221        var showPagination = function(paginationContainer) {
222            $(paginationContainer).show();
223        }
224        var themeSol_7Options = {
225            loop: false,
226            navigation: {
227                nextEl: '.swiper-button-next',
228                prevEl: '.swiper-button-prev',
229            },
230            showPagination: showPagination
231        }
232        themeSwiperMargin = 0.169 / 4;
233        themeSol_7 = initSwiper('.sol_7', themeSol_7Options, 1024);
234        themeSol_7.resize = resizeHandler;
235    }
236    if ($doc.find('.sol_8').length) {
237        var themeSol_8Options = {
238            loop: false,
239        }
240        themeSwiperMargin = 0.169 / 4;
241        themeSol_8 = initSwiper('.sol_8', themeSol_8Options, 1024);
242        // themeSol_8.resize = resizeHandler;
243    }
244
245    wSwiperOptions = {
246        slidesPerView: 1,
247        slidesPerGroup: 1,
248        direction: 'horizontal',
249        loop: true,
250    };
251
252    wSwiperMarginProps = 0.085 / 5;
253    wSwiper = initMobileSwiper(wSwiper, '.wideCardList_swiper', wSwiperOptions, wSwiperMarginProps);
254
255    tsSwiperOptions = {
256        slidesPerView: 1,
257        slidesPerGroup: 1,
258        direction: 'horizontal',
259        loop: true,
260    };
261
262    tsSwiperMarginProps = 0.085 / 5;
263    tsSwiper = initMobileSwiper(tsSwiper, '.thumbList.is_side.is_grayCard', tsSwiperOptions, tsSwiperMarginProps);
264
265    $(window).on('resize', function() {
266        fSwiper && fSwiper.resize(fSwiper, 768, fSwiperMarginProps);
267        // nSwiper && nSwiper.resize(nSwiper, 768, nSwiperMarginProps);
268        bSwiper && bSwiper.resize(bSwiper, 1220, bSwiperMarginProps);
269        //fourSwiper && fourSwiper.resize(fourSwiper, 1024, fourSwiperMarginProps);
270        useSwiper_1 && useSwiper_1.resize(useSwiper_1, 767, useSwiperMarginProps);
271        useSwiper_2 && useSwiper_2.resize(useSwiper_2, 767, useSwiperMarginProps);
272        themeSol_1 && themeSol_1.resize(themeSol_1, 1024, themeSwiperMargin);
273        themeSol_2 && themeSol_2.resize(themeSol_2, 1024, themeSwiperMargin);
274        themeSol_3 && themeSol_3.resize(themeSol_3, 1024, themeSwiperMargin);
275        themeSol_4 && themeSol_4.resize(themeSol_4, 1024, themeSwiperMargin);
276        themeSol_5 && themeSol_5.resize(themeSol_5, 1024, themeSwiperMargin);
277        themeSol_6 && themeSol_6.resize(themeSol_6, 1024, themeSwiperMargin);
278        themeSol_7 && themeSol_7.resize(themeSol_7, 1024, themeSwiperMargin);
279        themeSol_8 && themeSol_8.resize(themeSol_8, 1024, themeSwiperMargin);
280        wSwiper = initMobileSwiper(wSwiper, '.wideCardList_swiper', wSwiperOptions, wSwiperMarginProps);
281        tsSwiper = initMobileSwiper(tsSwiper, '.thumbList.is_side.is_grayCard', tsSwiperOptions, tsSwiperMarginProps);
282        categoryMenu.resize();
283        searchListMenu.resize();
284        digitalItemHeight();
285    });
286    // Swiper onload - end
287
288    // loadMore onload - start
289    // $(".is_loadMore").on("click", function(){
290    //   var thumb_hide = $(this).closest(".thumbList").find(".thumb.is_hide");
291    //   var thumb_hide_length = thumb_hide.length;
292    //   var maxLength = 8;
293
294    //   for (var i = 0; i < thumb_hide_length && i < maxLength; i++) {
295    //     $(thumb_hide[i]).removeClass("is_hide");
296    //   }
297
298    //   if (thumb_hide_length <= maxLength) {
299    //     $(this).parent().html('<a href"#" class="button is_loadMore">View all</a>');
300    //   }
301    // });
302    // loadMore onload - end
303
304    /* is_open - start 2022.06.15 modify */
305    $('.categoryBar_dropDown').on("click", function() {
306        var $categoryBar = $('.categoryBar.cate_list');
307        if (!$(this).hasClass('is_open')) {
308            var $body = $('body');
309            var $body_height = $body.height();
310            var $categoryBar_inner = $('.categoryBar_inner');
311            var $win_height = $(window).height(); /* 210525 add */
312
313            /* web/mobile 구분 */
314            if ($("html").hasClass("view-w")) {
315                $body.css('overflow', '');
316                $categoryBar.css('height', 'auto');
317                $(this).addClass('is_open');
318                $(this).find("button").attr('aria-expanded', 'true');
319                // if(!$(this).hasClass('is_open_w')){
320                //   $(this).addClass('is_open');
321                //   $(this).find("button").attr('aria-expanded','true');
322                // }else {
323                //   $(this).removeClass('is_open_w');
324                //   $categoryBar.css('height','70px'); 
325                //   $(this).find("button").attr('aria-expanded','false');
326                // }
327            } else {
328                $(this).addClass('is_open');
329                $(this).find("button").attr('aria-expanded', 'true');
330                $body.css('overflow', 'hidden');
331                $categoryBar_inner.css('max-height', $win_height - ($categoryBar_inner.offset().top - $window.scrollTop())); /* 210525 modify */
332                $window.on('scroll.categoryBarHeight touchmove.categoryBarHeight mousewheel.categoryBarHeight', function() {
333                    $categoryBar_inner.css('max-height', $win_height - ($categoryBar_inner.offset().top - $window.scrollTop())); /* 210525 modify */
334                });
335            }
336        } else {
337            $(this).removeClass('is_open');
338            $(this).find("button").attr('aria-expanded', 'false');
339            $('body').css('overflow', '');
340            if ($("html").hasClass("view-w")) {
341                $categoryBar.css('height', '70px');
342            }
343            $window.off('.categoryBarHeight');
344        }
345    });
346    $('.categoryBar').on("mouseleave", function() {
347        if (!$("html").hasClass("view-w")) { /* 2022.06.15 web 이외 디바이스에서만 작동 */
348            $(this).find(".categoryBar_dropDown").removeClass('is_open');
349            $(this).find("button:not(.category_prev, .category_next)").attr('aria-expanded', 'false'); //220330 | 접근성 | aria-expanded 속성 좌우버튼은 제외
350        }
351        $('body').css('overflow', 'visible');
352        $window.off('.categoryBarHeight');
353    });
354    // 하위 아이템 클릭스 overflow 해제
355    $('.categoryBar_item').on('click', function() {
356        $('body').css('overflow', 'visible');
357        $(this).find("button").attr('aria-expanded', 'false'); // 210409 | 접근성 | 오류 수정
358    })
359    $('.categoryBox_btn').on("click", function() {
360        $(this).toggleClass('is_open');
361    });
362    $('.categoryBox').on("mouseleave", function() {
363        $(this).find(".categoryBox_btn").removeClass('is_open');
364    });
365    // is_open - end
366
367    // is_open - start
368    /* 210409 | 접근성 | button aria-expanded 속성 추가 */
369    $('.searchListMenu_dropDown').on("click", function() {
370        $(this).toggleClass('is_open');
371        if ($(this).hasClass('is_open')) {
372            $(this).find('button').attr("aria-expanded", "true");
373        } else {
374            $(this).find('button').attr("aria-expanded", "false");
375        }
376    });
377    $('.searchListMenu').on("mouseleave", function() {
378        $(this).find('button').attr("aria-expanded", "false");
379        $(this).find(".searchListMenu_dropDown").removeClass('is_open');
380    });
381    $('.searchListMenu_container .searchListMenu_item a').on("click", function() {
382        $("#clickMenuCnt").attr("aria-expanded", "false");
383    });
384    /* //210409 | 접근성 | button aria-expanded 속성 추가 */
385    // is_open - end
386
387    /* 20220804 : 이벤트 리스트 페이지 리뉴얼 */
388    var eventSelectFilter = $('.searchSort_select.event_select .select_box');
389
390    eventSelectFilter.each(function(index, element){
391        var eventSelectFilterListContainer = $(element).find('.list');
392        var eventSelectFilterLisBtn = eventSelectFilterListContainer.find('li a');
393
394        eventSelectFilterLisBtn.on('click', function(){
395            var _this = $(this);
396            var eventSelectFilterBtnName = $('.select_btn span');
397    
398            _this.closest('.searchSort_select').find(eventSelectFilterBtnName).text($(this).text());
399            eventSelectFilterListContainer.slideUp("fast");
400        });
401    });
402
403    /* 211230 | Add search sort select */
404    $('.searchSort_select .select_btn').on("click", function() {
405        $(this).parents('.select_box').toggleClass('on');
406        if ($(this).parents('.select_box').hasClass('on')) {
407            $(this).attr("aria-expanded", "true");
408            $(this).siblings('.list').slideDown("fast");
409        } else {
410            $(this).attr("aria-expanded", "false");
411            $(this).siblings('.list').slideUp("fast");
412        }
413    });
414
415    $('.searchSort_select .select_box .list li a').on({
416        click: function(e){
417            $('.searchSort_select .select_box .list li a').attr("aria-selected", false);
418            $('.searchSort_select .select_box').removeClass("on");
419            $('.searchSort_select .select_box button').attr("aria-expanded","fal
419se");
420            $('.searchSort_select .select_box .list').slideUp("fast");
421        },
422        focus: function(e) {
423            $('.searchSort_select .select_box .list li a').attr("aria-selected", false);
424            $(this).attr("aria-selected", "true");
425        },
426        focusout: function(e) {
427            $('.searchSort_select .select_box .list li a').attr("aria-selected", false);
428        }
429    });
430    $('.searchSort_select .select_box').on({
431        mouseleave: function() {
432            $(this).find('button').attr("aria-expanded", "false");
433            $(this).find('.list').slideUp("fast");
434            $(this).removeClass('on');
435        }
436    });
437    $('.searchSort_select .select_box .list').on({
438        keydown: function(e) {
439            e.stopPropagation();
440            var $target = $(e.target);
441            var keycode = e.keyCode;
442            switch (keycode) {
443                case 9:
444                    e.preventDefault();
445                    $('.searchSort_select .select_box').removeClass("on");
446                    $('.searchSort_select .select_box button').attr("aria-expanded", "false");
447                    $('.searchSort_select .select_box .list').slideUp("fast");
448                    break;
449                case 38:
450                    e.preventDefault();
451                    if ($target.parent().index() > 0) $target.parent().prev().find("a").focus();
452                    break;
453                case 40:
454                    e.preventDefault();
455                    var len = $target.parents(".list").children().length - 1;
456                    if ($target.parent().index() < len) $target.parent().next().find("a").focus();
457                    break;
458            }
459        }
460    });
461    /* //211230 | Add search sort select */
462
463
464    // is_open - start
465    $('.scrollCategoryBox_dropDown').on("click", function() {
466        $(this).toggleClass('is_open');
467    });
468    $('.scrollCategoryBox').on("mouseleave", function() {
469        $(this).find(".scrollCategoryBox_dropDown").removeClass('is_open');
470    });
471    // is_open - end
472
473    // is_open - start
474    $('.btn_commentMore').on("click", function() {
475        $(this).toggleClass('is_open');
476    });
477    // is_open - end
478
479
480    /* 윤리 & 준법경영 아코디언 메뉴(연도별 아코디언 메뉴) */
481    var historyContet = $('.history-accordian'),
482        historyAccordianMenu = historyContet.find('.history-accordianMenu_list'),
483        historyAccordianlist = historyAccordianMenu.find('li'),
484        historyAccordianMenuBtn = historyAccordianlist.find('a'),
485        historyContents = $('.history-accordian_content dl');
486
487    historyAccordianMenuBtn.on('click', function(e) {
488        e.preventDefault();
489        $(this).closest("li").find(historyContents).slideToggle(300);
490        $(this).closest("li").siblings("li").find(historyContents).slideUp(300);
491        $(this).toggleClass('on').closest("li").siblings("li").find("a").removeClass('on');
492        $(this).closest("li").find(historyContents).toggleClass('active').closest("li").siblings("li").find(historyContents).removeClass('active');
493
494        var _self = this;
495        setTimeout(function() {
496            theOffset = $(_self).offset();
497            $('body,html').animate({ scrollTop: theOffset.top - 60 });
498        }, 500);
499    });
500
501    //is_focus - start
502    $('.subscribeSend_input').on('keyup', function() {
503        if (this.value.length >= 1) {
504            $(".subscribeSend_btn").addClass('is_focus');
505        } else {
506            $(".subscribeSend_btn").removeClass('is_focus');
507        }
508    });
509    //is_focus - end
510
511    // sidSticky - start
512    var sideStickyWrap = $('.sideStickyWrap');
513    if (sideStickyWrap.length) {
514        sideSticky();
515        $('.sideStickyWrap .is_loadMore').on('click', function() {
516            sideSticky();
517        });
518        function sideSticky() {
519            $(window).on('resize', function() {
520                var window_width = $(window).width();
521                if (window_width >= 1300) {
522                    var options = { offset_top: 100 };
523                    if (0 >= $doc.find('.categoryBar_wrapper').length) {
524                        options = { offset_top: 30 };
525                    }
526                    $("#sticky-sidebar").stick_in_parent(options);
527                } else {
528                    // $("#sticky-sidebar").off();
529                    $("#sticky-sidebar").trigger("sticky_kit:detach");
530                }
531            });
532        }
533    }
534    // sidSticky - end
535
536    // sticky - start
537    if ($('.is_sticky').length) {
538        var $is_stiky = $('.is_sticky');
539        var $is_stiky_height = $is_stiky.height();
540        var $is_stiky_offsetTop = $('.is_sticky').offset().top;
541        var $window = $(window);
542        var brake_target_length = false;
543        var $brake_target = $('.button.is_loadMore');
544
545        if ($brake_target.length) {
546            var brake_target_length = true;
547            function brake_target() {
548                var $brake_target_offset_top = $brake_target.offset().top;
549                var $brake_target_offset_bottom = $brake_target_offset_top - $is_stiky_height;
550                if ($brake_target_offset_bottom < $window.scrollTop()) {
551                    $('.is_sticky').addClass('is_brake');
552                } else {
553                    $('.is_sticky').removeClass('is_brake');
554                }
555            }
556        }
557
558        $window.on('resize', function() {
559            $is_stiky.removeClass('is_onSticky');
560            $is_stiky_offsetTop = $('.is_sticky').offset().top;
561            is_sticky();
562            if (brake_target_length) {
563                brake_target();
564            }
565            $window.on('scroll touchmove mousewheel', function() {
566                is_sticky();
567                if (brake_target_length) {
568                    brake_target();
569                }
570            });
571            /* S: 2022.06.21 Add - window resize 시 web 이외 적용 */
572            if (!$("html").hasClass("view-w")) {
573                $(".categoryBar.cate_list").css('height', 'auto');
574                $('.categoryBar_dropDown').removeClass('is_open');
575                $('.categoryBar_dropDown').find("button").attr('aria-expanded', 'false');
576            } /* E: 2022.06.21 Add */
577        });
578
579        function is_sticky() {
580            /* S: 2022.06.21 Add */
581            var $categoryBar = $(".categoryBar.cate_list"),
582                $categoryBarDropDown = $('.categoryBar_dropDown');
583            /* E: 2022.06.21 Add */
584
585            if ($window.scrollTop() >= $is_stiky_offsetTop) {
586                /* S: 2022.06.15 web Add */
587                if ($("html").hasClass("view-w")) {
588                    $categoryBarDropDown.removeClass('is_open');
589                    //$categoryBarDropDown.removeClass('is_open_w');
590                    $categoryBarDropDown.find("button").attr('aria-expanded', 'false');
591                    $categoryBar.css('height', '70px');
592                } /* E: 2022.06.15 web Add */
593
594                $is_stiky.addClass('is_onSticky');
595                if ($(".is_sticky_box").length == 0) {
596                    $is_stiky.after('<div class="is_sticky_box"></div>');
597                    $('.is_sticky_box').height($is_stiky.height());
598                }
599            } else {
600                /* S: 2022.06.15 web Add */
601                if ($("html").hasClass("view-w")) {
602                    $categoryBar.css('height', 'auto');
603                    $categoryBarDropDown.addClass('is_open');
604                    $categoryBarDropDown.find("button").attr('aria-expanded', 'true');
605                } else {
606                    $categoryBar.css('height', '');
607                    //$categoryBarDropDown.removeClass('is_open');
608                    //$categoryBarDropDown.find("button").attr('aria-expanded','false');  
609                } /* E: 2022.06.15 web Add */
610
611                $is_stiky.removeClass('is_onSticky');
612                $(".is_sticky_box").remove();
613            }
614        };
615        is_sticky();
616    }
617    // sticky - end
618
619    // relatedSolutions - start
620    var relatedSolutionsyWrap = $('.relatedSolutions');
621    if (relatedSolutionsyWrap.length) {
622        $('.relatedSolutions .btn_thumView').on('click', function() {
623            $(this).parents('.relatedSolutions').toggleClass('is_active');
624        });
625    }
626    // relatedSolutions - end
627
628    // Checkbox -toggle - start
629    $("[name=checkAll]").click(function() {
630        allCheckFunc(this);
631    });
632    $("[name=checkOne]").each(function() {
633        $(this).click(function() {
634            oneCheckFunc($(this));
635        });
636    });
637    // Checkbox -toggle - end
638
639    // tabControlBox - start
640    if ($('.tabControlBox').length) {
641        var $tabControlBox = $('.tabControlBox')
642        var $tabControlBox_content = $('.tabControlBox_content');
643        var test_num;
644        function tabControlBox() {
645            if (SDS_COMMON.currentWidth() > 1299) {
646                $tabControlBox_content.removeClass('is_hide');
647                $('.tabControlBox .tabControlBox_item').off('click');
648            } else {
649                for (var i = 0; i < $('.tabControlBox .tabControlBox_item').length; i++) {
650                    if ($($('.tabControlBox .tabControlBox_item')[i]).hasClass('is_open')) {
651                        test_num = i;
652                    }
653                }
654                $tabControlBox_content.addClass('is_hide');
655                $tabControlBox_content.eq(test_num).removeClass('is_hide');
656                $('.tabControlBox .tabControlBox_item').on('click', function() {
657                    event.preventDefault();
658                    $('.tabControlBox .tabControlBox_item').removeClass('is_open');
659                    $(this).addClass('is_open');
660                    $('.tabControlBox .tabControlBox_item').attr({ 'aria-selected': false });
661                    $(this).addClass('is_open').attr({ 'aria-selected': true });
662                    for (var i = 0; i < $('.tabControlBox .tabControlBox_item').length; i++) {
663                        if ($($('.tabControlBox .tabControlBox_item')[i]).hasClass('is_open')) {
664                            test_num = i;
665                        }
666                    }
667                    $tabControlBox_content.addClass('is_hide');
668                    $tabControlBox_content.eq(test_num).removeClass('is_hide');
669                });
670            }
671        }
672        tabControlBox();
673        $(window).on('resize', function() {
674            tabControlBox()
675        });
676    }
677    var tabController0 = initTabController('.tabController.is_0', clickFunction, themeSolFunction);
678    var tabController1 = initTabController('.tabController.is_1', clickFunction, themeSolFunction);
679    var tabController2 = initTabController('.tabController.is_2', clickFunction, themeSolFunction);
680    var tabController2_tab = initTabController('.tabController.is_2tab', clickFunction, themeSolFunction);
681    var tabController3 = initTabController('.tabController.is_3', clickFunction);
682
683    function clickFunction(_clickedIndex, _this) {
684        var tabController_item_mobile_length = $('.tabController.is_3 .tabController_item').length;
685        var tabController_item_pc0_length = $('.tabController.is_0 .tabController_item').length;
686        var tabController_item_pc1_length = $('.tabController.is_1 .tabController_item').length;
687        var tabController_item_pc2_length = $('.tabController.is_2tab .tabController_item').length;
688        if (_clickedIndex >= 10 && _clickedIndex <= 10 + tabController_item_pc0_length - 1) {
689            $('.tab_wrap .tab li a').eq(0).trigger('click');
690            $('.tabController.is_0 .tabController_btn').eq(_clickedIndex - 10).trigger('click');
691        } else if (_clickedIndex >= 10 + tabController_item_pc0_length && _clickedIndex < 10 + tabController_item_pc0_length + tabController_item_pc1_length) {
692            $('.tab_wrap .tab li a').eq(1).trigger('click');
693            $('.tabController.is_1 .tabController_btn').eq(_clickedIndex - 10 - tabController_item_pc0_length).trigger('click');
694        } else if (_clickedIndex >= 10 + tabController_item_pc0_length + tabController_item_pc1_length - 1) {
695            $('.tab_wrap .tab li a').eq(2).trigger('click');
696            $('.tabController.is_2tab .tabController_btn').eq(_clickedIndex - 10 - tabController_item_pc0_length - tabController_item_pc1_length).trigger('click');
697        }
698
699        if ($(_this).parents('.tabController').hasClass('is_0')) {
700            $('.tabController.is_3 .tabController_item').eq($(_this).parent('li').data('index')).trigger('click');
701            if ($(_this).data('text')) {
702                $('.tabController.is_3 .tabController_dropDown .txt').text($(_this).data('text'));
703            } else {
704                $('.tabController.is_3 .tabController_dropDown .txt').text($(_this).text());
705            }
706        } else if ($(_this).parents('.tabController').hasClass('is_1')) {
707            $('.tabController.is_3 .tabController_item').eq($(_this).parent('li').data('index') - tabController_item_pc0_length + 1).trigger('click');
708            if ($(_this).data('text')) {
709                $('.tabController.is_3 .tabController_dropDown .txt').text($(_this).data('text'));
710            } else {
711                $('.tabController.is_3 .tabController_dropDown .txt').text($(_this).text());
712            }
713        } else if ($(_this).parents('.tabController').hasClass('is_2tab')) {
714            $('.tabController.is_3 .tabController_item').eq($(_this).parent('li').data('index') - tabController_item_pc0_length - tabController_item_pc1_length + 1).trigger('click');
715            if ($(_this).data('text')) {
716                $('.tabController.is_3 .tabController_dropDown .txt').text($(_this).data('text'));
717            } else {
718                $('.tabController.is_3 .tabController_dropDown .txt').text($(_this).text());
719            }
720        }
721    }
722
723    $('.tabContent_item').each(function(index, item) {
724        $(this).find('>*').attr({ 'role': 'tabpanel' });
725    });
726    $('.tabController_itemBox, .ebc-tabController_itemBox').each(function(index, item) {
727        $(this).attr({ 'id': 'tabController_dropDown_tab' + ++index, 'role': 'tablist', 'aria-labelledby': 'tabController_dropDown_btn' + index });
728    });
729    $('.tabController').each(function() {
730        var txt = $(this).find(".tabController_btn.is_active").text();
731        $(this).find(".tabController_dropDown").text('');
732        $(this).find(".tabController_dropDown").append("<span class='txt'></span>");
733        $(this).find(".tabController_dropDown .txt").text(txt);
734        if ($("html").attr("lang") == "ko") {
735            $(this).find(".tabController_dropDown").attr({ 'title': '카테고리 선택 리스트 더 보기' });
736            $(this).find(".tabController_dropDown").append("<span class='is_blind'>카테고리 선택 리스트 더 보기</span>");
737        } else {
738            $(this).find(".tabController_dropDown").attr({ 'title': 'Vie
738w more menu' });
739            $(this).find(".tabController_dropDown").append("<span class='is_blind'>View more menu</span>");
740        }
741    });
742    $('.tabController_dropDown, .ebc-tabController_dropDown').each(function(index, item) {
743        var _tabController_item = $(this).siblings('.tabController_itemBox, .ebc-tabController_itemBox').attr('id');
744        $(this).attr({ 'aria-controls': _tabController_item, 'id': 'tabController_dropDown_btn' + ++index });
745    });
746    $('.tabController_btn, .ebc-tabController_btn').attr({ 'role': 'tab' });
747    $('.office_ac').each(function(index, item) {
748        $(this).attr({ 'role': 'tablist' });
749    });
750
751    function themeSolFunction() {
752        themeSol_1 && themeSol_1.resize(themeSol_1, 1024, themeSwiperMargin);
753        themeSol_2 && themeSol_2.resize(themeSol_2, 1024, themeSwiperMargin);
754        themeSol_3 && themeSol_3.resize(themeSol_3, 1024, themeSwiperMargin);
755        themeSol_4 && themeSol_4.resize(themeSol_4, 1024, themeSwiperMargin);
756        themeSol_5 && themeSol_5.resize(themeSol_5, 1024, themeSwiperMargin);
757        themeSol_6 && themeSol_6.resize(themeSol_6, 1024, themeSwiperMargin);
758        themeSol_7 && themeSol_7.resize(themeSol_7, 1024, themeSwiperMargin);
759        themeSol_8 && themeSol_8.resize(themeSol_8, 1024, themeSwiperMargin);
760    }
761
762    if ($('.tabController.is_3').length) {
763        $(".tab_wrap .tab>ul>li>a").on('click', function() {
764            $('.tabController.is_' + $(this).data('index') + ' .tabController_btn.is_active').trigger('click');
765        });
766    }
767
768    // max_windowHeight
769    function windowMaxHeight_m_resize() {
770        if ($('.is_windowMaxHeight_m').length) {
771            if ($(window).width() < 768) {
772                $(".is_windowMaxHeight_m").css('max-height', $(window).height());
773            } else {
774                $(".is_windowMaxHeight_m").css('');
775            }
776        }
777    }
778
779    function windowMaxHeight_resize() {
780        if ($('.is_windowMaxHeight').length) {
781            $(".is_windowMaxHeight").css('max-height', $(window).height());
782        }
783    }
784    windowMaxHeight_resize();
785    $(window).on('scroll resize', function() {
786        windowMaxHeight_resize();
787    });
788
789    // image_zoom
790    function imageZoom(params) {
791        $('.is_imageZoomBox').each(function(index) {
792            $this = $(this);
793            var image_url = $this.find('.is_imageZoom_img').attr('src');
794            $this.find('.is_imageZoom').attr('href', '../common/ly_use_org.html?imgSrc=' + encodeURIComponent(image_url));
795        });
796    }
797    imageZoom();
798
799    //ebcSwiper
800    $('.ebc-tabs-area .slideCardBox').each(function() {
801        var container = $(this).find('.swiper-container'),
802            slides = container.find('.swiper-slide');
803
804        var ebcSwiper = new Swiper(container, {
805            // slidesPerView: 3,
806            spaceBetween: 50,
807            observer: true,
808            observeParents: true,
809            observeSlideChildren: true,
810            pagination: '.swiper-pagination',
811            paginationClickable: true,
812            nextButton: '.swiper-button-next',
813            prevButton: '.swiper-button-prev',
814            breakpoints: {
815                1024: {
816                    slidesPerView: 1,
817                    spaceBetween: 0
818                }
819            },
820            paginationBulletRender: function(swiper, index) {
821                return '<a href="#" class="swiper-pagination-bullet" title="go to slide">' + (index + 1) + 'slide</a>'
822            }
823        });
824
825        function slideChecks() {
826            if (SDS_COMMON.currentWidth() >= 1025) {
827                if (slides.length >= 4) {
828                    container.find('.swiper-pagination, .swiper-button-prev, .swiper-button-next').show();
829                    ebcSwiper.params.onlyExternal = false;
830                    ebcSwiper.params.slidesPerView = 3;
831                } else {
832                    ebcSwiper.params.onlyExternal = true;
833                    ebcSwiper.params.simulateTouch = false;
834                    if (slides.length >= 3) {
835                        ebcSwiper.params.slidesPerView = 3;
836                    } else {
837                        ebcSwiper.params.slidesPerView = 2;
838                    }
839                }
840            } else {
841                container.find('.swiper-button-prev, .swiper-button-next').hide();
842                if (slides.length < 2) {
843                    container.find('.swiper-pagination').hide();
844                    ebcSwiper.params.onlyExternal = true;
845                    ebcSwiper.params.simulateTouch = false;
846                } else {
847                    ebcSwiper.params.onlyExternal = false;
848                    ebcSwiper.params.simulateTouch = true;
849                }
850            }
851        }
852        slideChecks();
853        $(window).resize(function() {
854            slideChecks();
855        });
856    });
857
858    /* ebc-tabs-area */
859    $('.ebc-tabs-area .ebc-tab-triggers').each(function() {
860        var triggers = $(this),
861            targets = $(this.hash),
862            targets_triggers = targets.find('.ebc-tab-triggers').parents('li'),
863            targets_contents = targets.find('.ebc-tab-contents'),
864            first_trigger = targets.find('.ebc-tab-triggers:first').parents('li'),
865            first_content = targets.find('.ebc-tab-contents:first'),
866            controller = $('.ebc-tabController .ebc-tabController_dropDown .ebc-tabController_text');
867
868        triggers.on('click', function(event) {
869            var parents = $(this).parents('li');
870
871            triggers.attr({ 'aria-selected': true });
872            parents.siblings().find('.ebc-tab-triggers').attr({ 'aria-selected': false });
873
874            targets.add(parents).addClass('active').siblings().removeClass('active');
875            if ($(this).parents('ul').hasClass('ebc-key-tabs')) {
876                if (!targets_triggers.hasClass('active') && !targets_contents.hasClass('active')) {
877                    first_trigger.add(first_content).addClass('active').siblings().removeClass('active');
878                }
879                if (targets.find('.tabController_itemBox').length) {
880                    controller.text(targets.find('.tabController_itemBox').find('.active > a').text());
881                } else {
882                    controller.text($(this).text());
883                }
884            } else {
885                controller.text($(this).text());
886            }
887            event.preventDefault();
888        });
889
890        $('.ebc-tabs-area .swiper-slide').removeAttr('tabindex aria-hidden');
891        if (SDS_COMMON.currentWidth() >= 1025) {
892            $('.ebc-tabs-area .thumb_readMore').removeAttr('tabindex aria-hidden');
893        }
894    });
895
896    /* dongtan Tab */
897    if ($('.ebc-tabs-area').length && window.location.hash === "#dongtan") {
898        $('.ebc-key-tabs').find('[href="#tab3"]').trigger('click');
899        $('html, body').animate({
900            scrollTop: $('.ebc-tabs-area').offset().top + 50
901        }, 300);
902    }
903
904    /* ebc-tabController */
905    $('.ebc-tabController .ebc-tabController_dropDown').on('click', function() {
906        $(this).toggleClass('is_active');
907        $(this).hasClass('is_active') ? $(this).attr('aria-expanded', 'true') : $(this).attr('aria-expanded', 'false');
908    });
909    $('.ebc-tabController .ebc-tabController_btn').each(function() {
910        var triggers = $(this),
911            targets = $(this.hash),
912            parents = targets.parents('.ebc-tab-contents'),
913            targets_triggers = parents.find('.ebc-tab-triggers');
914
915        triggers.on('click', function(event) {
916            var current_target = $("[href='" + this.hash + "']"),
917                current_target_id = current_target.parents('.ebc-tab-contents').attr('id'),
918                real_sds_target = $(this.hash),
919                real_sds_target_id = real_sds_target.parents('.ebc-tab-contents').attr('id');
920
921            triggers.attr({ 'aria-selected': true });
922            $(this).parents('.ebc-tabController_item').siblings().find('.ebc-tabController_btn').attr({ 'aria-selected': false });
923            targets.add(parents).addClass('active').siblings().removeClass('active');
924            $('.ebc-tabController_text').text($(this).text());
925            $('.ebc-tabController_dropDown').removeClass('is_active');
926            $('.ebc-tabController_dropDown').hasClass('is_active') ? $('.ebc-tabController_dropDown').attr('aria-expanded', 'true') : $('.ebc-tabController_dropDown').attr('aria-expanded', 'false');
927            current_target.parents('li').addClass('active').siblings().removeClass('active');
928            if (real_sds_target) {
929                $("[href='#" + real_sds_target_id + "']").parents('li').addClass('active').siblings().removeClass('active');
930            } else {
931                $("[href='#" + current_target_id + "']").parents('li').addClass('active').siblings().removeClass('active');
932            }
933            event.preventDefault();
934        });
935    });
936
937    /* accordion */
938    function accordion() {
939        var isOneOpen = $('.irEventTab');
940        if (isOneOpen.length) {
941            openOneAccordion(isOneOpen);
942        } else if ($('.accordion').length) {
943            $('.accordion').each(function() {
944                var $accordion = $(this);
945                $accordion.find('.accordion_openBtn').each(function() {
946                    var $accordion_openBtn = $(this);
947                    $accordion_openBtn.on('click', function() {
948                        var $accordion_openBtn_click = $(this);
949                        // 하나만 오픈
950                        // $accordion_openBtn_click.addClass('is_open').siblings().removeClass('is_open');
951
952                        // 여러개 오픈
953                        if ($accordion_openBtn_click.hasClass('is_open')) {
954                            close($accordion_openBtn_click);
955                        } else {
956                            open($accordion_openBtn_click);
957                        }
958                    });
959                });
960            });
961        }
962
963        // 하나만 오픈
964        function openOneAccordion(accordion) {
965            accordion.each(function() {
966                var accordionBtn = $(this).find('.accordion_openBtn');
967                accordionBtn.on('click', function() {
968                    var accordionOpenBtn = $(this);
969                    if (accordionOpenBtn.hasClass('is_open')) {
970                        close(accordionOpenBtn);
971                    } else {
972                        close(accordionBtn);
973                        open(accordionOpenBtn);
974                    }
975                })
976            });
977        }
978
979        function open(el) {
980            el.addClass('is_open').attr('title', 'close');
981            el.attr('aria-expanded', 'true');
982        }
983
984        function close(el) {
985            el.removeClass('is_open').attr('title', 'open');
986            el.attr('aria-expanded', 'false');
987        }
988    }
989    accordion();
990    /* /accordion */
991
992    /* digitalItemHeight */
993    digitalItemHeight();
994    /* //digitalItemHeight */
995});
996
997function digitalItemHeight() {
998    var OddHeight, EvenHeight;
999    var digitalItem = $('.capability_item');
1000    digitalItem.height("");
1001    if (SDS_COMMON.currentWidth() > 1024) {
1002        for (i = 0; i < digitalItem.length; i++) {
1003            if (i % 2 === 0) {
1004                OddHeight = digitalItem.eq(i).height();
1005                EvenHeight = digitalItem.eq(i + 1).height();
1006                if (OddHeight > EvenHeight) {
1007                    digitalItem.eq(i + 1).height(OddHeight);
1008                } else {
1009                    digitalItem.eq(i).height(EvenHeight);
1010                }
1011            }
1012        }
1013    }
1014}
1015
1016function GetDDay(target, targetTime, progressTime) {
1017    if ($('.dDay').length) {
1018        var now = new Date();
1019        var then = new Date(targetTime);
1020
1021        function gap_day(gap_input) {
1022            return gap_input = Math.max(Math.ceil((gap_input / (1000 * 60 * 60 * 24))), 0);
1023        }
1024        var gap_endDay = gap_day(then.getTime() - now.getTime());
1025        if (String(gap_endDay).length == 1) {
1026            $(".dDay_char.is_num_01").text("0");
1027            $(".dDay_char.is_num_02").text(gap_endDay);
1028        } else if (String(gap_endDay).length == 2) {
1029            $(".dDay_char.is_num_01").text(String(gap_endDay).split('')[0]);
1030            $(".dDay_char.is_num_02").text(String(gap_endDay).split('')[1]);
1031        }
1032
1033        if (targetTime && new Date(targetTime).getTime() - now.getTime() < 0) {
1034            $('.dDay').hide();
1035        }
1036
1037        if (progressTime.length) {
1038            var stap = [];
1039            $(progressTime).each(function(index, item) {
1040                stap[index] = gap_day(new Date(item).getTime() - now.getTime());
1041                if (stap[index] > 0) {
1042                    $(target).addClass('is_step_' + (index + 1) + '');
1043                    return false;
1044                }
1045                if (index == progressTime.length - 1) {
1046                    $(target).addClass('is_step_' + (progressTime.length + 1) + '');
1047                }
1048            })
1049        }
1050    }
1051}
1052
1053function initTabController(selector, _clickFunction, _themeSolFunction) {
1054    var tabController = $(selector);
1055    var clickFunction = _clickFunction;
1056    var themeSolFunction = _themeSolFunction;
1057    if (tabController.length) {
1058        var tabController_btn = tabController.find('.tabController_btn');
1059        var tabController_dropDown = tabController.find('.tabController_dropDown');
1060        var tabContent_item = tabController.siblings('.tabContent').find('.tabContent_item');
1061
1062        tabController_dropDown.attr('aria-expanded', false);
1063
1064        tabController_btn.on('click', function() {
1065            event.preventDefault();
1066            var clickedIndex = $(this).parent('li').data('index');
1067            tabController_dropDown.find('.txt').text($(this).text());
1068            tabController_btn.removeClass('is_active');
1069            tabContent_item.removeClass('is_active');
1070            tabController_btn.eq(clickedIndex).addClass('is_active');
1071            tabContent_item.eq(clickedIndex).addClass('is_active');
1072            if (tabController_dropDown.hasClass('is_active')) {
1073                tabController_dropDown.removeClass('is_active');
1074            }
1075            tabController_dropDown.attr('aria-expanded', false);
1076            tabController_btn.attr({ 'aria-selected': false });
1077            $(this).attr({ 'aria-selected': true });
1078
1079            themeSolFunction && themeSolFunction();
1080            clickFunction && clickFunction(clickedIndex, this);
1081        });
1082        tabController_dropDown.on('click', function() {
1083            tabController_dropDown.toggleClass('is_active');
1084            if (tabController_dropDown.hasClass('is_active')) {
1085                tabController_dropDown.attr('aria-expanded', 'true');
1086            } else {
1087                tabController_dropDown.attr('aria-expanded', 'false');
1088            }
1089        });
1090        tabController.on('mouseleave', function() {
1091            tabController_dropDown.removeClass('is_active');
1092            tabController_dropDown.attr('aria-expanded', 'false');
1093        });
1094    }
1095}
1096
1097var initMobileSwiper = function(swiper, target, options, marginProps) {
1098    var $doc = $(window.document);
1099    if ($doc.find(target).length) {
1100        if (!swiper && SDS_COMMON.currentWidth() < 768) {
1101            marginProps = marginProps && marginProps || 0;
1102            swiper = initSwiper(target, options, 768);
1103
1104            var displayOptions = {
1105                display: '-webkit-box',
1106                display: '-moz-box',
1107                display: '-ms-flexbox',
1108                display: '-webkit-flex',
1109                display: 'flex',
1110            }
1111            $('.wideCardList_swiper .swiper-wrapper').css(displayOptions);
1112            $('.thumbList.is_side.is_grayCard .swiper-wrapper').css(displayOptions);
1113            return swiper;
1114        } else if (SDS_COMMON.currentWidth() >= 768) {
1115            swiper && swiper.destroy();
1116            swiper = undefined;
1117            $('.wideCardList_swiper .swiper-wrapper').removeAttr('style');
1118            $('.wideCardList_swiper .swiper-slide').removeAttr('style');
1119            $('.wideCardList_swiper .swiper-wrapper').css('display', 'block');
1120            $('.thumbList.is_side.is_grayCard .swiper-wrapper').removeAttr('style');
1121            $('.thumbList.is_side.is_grayCard .swiper-slide').removeAttr('style');
1122            $('.thumbList.is_side.is_grayCard .swiper-wrapper').css('display', 'block');
1123            return swiper;
1124        }
1125    }
1126    return swiper;
1127}
1128
1129var resizeHandlerWithLoop = function(swiper, breakPoint, marginProps) {
1130    if (SDS_COMMON.currentWidth() <= breakPoint) {
1131        swiperLoopOn(swiper);
1132    } else if (SDS_COMMON.currentWidth() > breakPoint) {
1133        swiperLoopOff(swiper, marginProps);
1134    }
1135}
1136var resizeHandler = function(swiper, breakPoint, marginProps) {
1137    swiper.update(true);
1138    if (SDS_COMMON.currentWidth() <= breakPoint) {
1139        marginProps = 0;
1140    } else if (SDS_COMMON.currentWidth() > breakPoint) {
1141        marginProps = marginProps && marginProps || 0;
1142    }
1143    swiper.params.spaceBetween = swiper.width * marginProps;
1144    swiper.update(true);
1145}
1146var swiper_curPosition_txt = window.location.href.split('/')[3]=="kr"?"현재 위치":"Current slide";
1147var initSwiper = function(target, options, breakPoint) {
1148    if (!canInitialize()) {
1149        return;
1150    } else {
1151        var nextButton = $(target).find('.swiper-button-next');
1152        var prevButton = $(target).find('.swiper-button-prev');
1153        nextButton.show();
1154        prevButton.show();
1155    }
1156    if (isAutoPlay()) {
1157        onAutoPlay();
1158    }
1159    var perViewOtions = getPerView(breakPoint);
1160    var focusableEl = 'a, select, button, textarea, input, area';
1161    var swiperOptions = {
1162        pagination: {
1163			el: target + ' .swiper-pagination',
1164			type: 'bullets',
1165			clickable: true,
1166			renderBullet: function(index, className) {
1167				return '<a href="#" class="swiper-pagination-bullet" title="go to slide"><span class="text">
1167' + (index + 1) + 'slide</span></a>';
1168			}
1169		},
1170        loop: true,
1171        mousewheelReleaseOnEdges: true,
1172        touchReleaseOnEdges: true,
1173        paginationElement: 'a href',
1174        on: {
1175            init : function () {
1176                // console.log("onInit")
1177            },
1178            slideChangeTransitionEnd: function(){      
1179                // console.log("change",  $(target).find('a.swiper-pagination-bullet-active'))
1180                var owlSlide_activeDot = $(target).find('a.swiper-pagination-bullet-active');
1181                $(owlSlide_activeDot).attr("aria-selected", true).siblings().removeAttr("aria-selected")
1182                $(target + ' .swiper-slide').attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1183                $(target + ' .swiper-slide').find(focusableEl).attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1184                $(target + ' .swiper-slide-active').attr({ 'tabindex': '-1', 'aria-hidden': 'false' });
1185                $(target + ' .swiper-slide-active').find(focusableEl).attr({ 'tabindex': '0', 'aria-hidden': 'false' });
1186                $(target + ' .swiper-slide-duplicate').attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1187                $(target + ' .swiper-slide-duplicate').find(focusableEl).attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1188                $(target + ' .swiper-slide-duplicate-active').attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1189                $(target + ' .swiper-slide-duplicate-active').find(focusableEl).attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1190            },
1191        },
1192    };
1193    // merge customOptions to baseOptions
1194    Object.keys(options).forEach(function(key) {
1195        swiperOptions[key] = options[key];
1196    });
1197    Object.keys(perViewOtions).forEach(function(key) {
1198        swiperOptions[key] = perViewOtions[key];
1199    });
1200    var mySwiper = new Swiper(target + ' .swiper-container', swiperOptions);
1201    // set focusing setting for accessibilities
1202    // $('.swiper-slide .cnt').attr({'tabindex':'-1','aria-hidden':'true'});
1203    $(target + ' .swiper-slide').attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1204    $(target + ' .swiper-slide').find(focusableEl).attr('tabindex', '-1')
1205    $(target + ' .swiper-slide-active').attr({ 'tabindex': '-1', 'aria-hidden': 'false' });
1206    $(target + ' .swiper-slide-active').find(focusableEl).attr({ 'tabindex': '0', 'aria-hidden': 'false' });
1207    $(target + ' .swiper-slide-duplicate').attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1208    $(target + ' .swiper-slide-duplicate').find(focusableEl).attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1209    $(target + ' .swiper-slide-duplicate-active').attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1210    $(target + ' .swiper-slide-duplicate-active').find(focusableEl).attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
1211
1212    function canInitialize() {
1213        var slidesLength = $(target).find('.swiper-slide').length;
1214        if (slidesLength === 1) {
1215            return false;
1216        } else {
1217            return true;
1218        }
1219    };
1220
1221    function isAutoPlay() {
1222        var hasAutoClass = $(target).hasClass('is_auto');
1223        if (hasAutoClass) {
1224            return true;
1225        } else {
1226            return false;
1227        }
1228    }
1229
1230    function getPerView(breakPoint) {
1231        var perViewOptions = {
1232            breakpoints: {},
1233        };
1234        // [breakPoint]: {
1235        //   slidesPerView: 1,
1236        //   slidesPerGroup: 1,
1237        // },
1238        perViewOptions.breakpoints[breakPoint] = {
1239            slidesPerView: 1,
1240            slidesPerGroup: 1,
1241        }
1242        var classList = $(target).attr('class').split(' ');
1243        var slidesLength = $(target).find('.swiper-slide').length;
1244        if (classList) {
1245            for (var i = 0; i < classList.length; i++) {
1246                if (classList[i].indexOf('pc-column-') !== -1) {
1247                    var slidesPerView = classList[i].replace('pc-column-', '');
1248                    perViewOptions.slidesPerView = slidesPerView;
1249                    if (slidesLength > slidesPerView) {
1250                        perViewOptions.slidesPerGroup = parseInt(slidesPerView);
1251                    } else {
1252                        perViewOptions.slidesPerGroup = parseInt(slidesPerView);
1253                    }
1254                }
1255                if (classList[i].indexOf('mobile-column-') !== -1) {
1256                    var slidesPerView = classList[i].replace('mobile-column-', '');
1257                    perViewOptions.breakpoints[breakPoint] = {
1258                        slidesPerView: 1,
1259                        slidesPerGroup: 1,
1260                    }
1261                    // perViewOptions.breakpoint[breakPoint] = {
1262                    //   slidesPerView: slidesPerView,
1263                    //   slidesPerGroup: slidesPerView,
1264                    // };
1265                }
1266            }
1267        }
1268        return perViewOptions;
1269    }
1270
1271    function setPaginateHeight(paginationContainer) {
1272        var targetHeight = 'auto';
1273        if (SDS_COMMON.currentWidth() > breakPoint) {
1274            targetHeight = 'auto';
1275            $(paginationContainer).hide();
1276        } else {
1277            $(paginationContainer).show();
1278        }
1279        $(paginationContainer).height(targetHeight);
1280    }
1281
1282    function onAutoPlay() {
1283        var paginationEl = $(target).find('.swiper-pagination');
1284        var playPauseButton = '<button class="playButton pause">pause</button>';
1285        options.autoplay = {
1286            delay: 4000,
1287            disableOnInteraction: false,
1288        };
1289        options.onInit = function() {
1290            // pagination 클릭시 오토플레이 멈춤
1291            var bullets = $(target).find('.swiper-pagination a');
1292            if (bullets) {
1293                $(bullets).on('click', function() {
1294                    changeButtonState(false);
1295                });
1296            }
1297
1298            // prev, next 버튼 클릭시 오토플레이 멈춤
1299            var prevButton = $(target).find('.swiper-button-prev');
1300            var nextButton = $(target).find('.swiper-button-next');
1301            if (prevButton) {
1302                $(prevButton).on('click', function() {
1303                    changeButtonState(false);
1304                });
1305            }
1306            if (nextButton) {
1307                $(nextButton).on('click', function() {
1308                    changeButtonState(false);
1309                });
1310            }
1311        };
1312        options.onSliderMove = function(swiper, event) {
1313            // 슬라이드 드래그시 오토클레이 멈춤
1314            changeButtonState(false);
1315        };
1316
1317        $(playPauseButton).insertAfter(paginationEl);
1318        changeButtonState(true);
1319        $(target).find('.playButton').on('click', function() {
1320            // play, pause 버튼 클릭시 autoplay 키고 끔
1321            if (mySwiper.autoplay.running) {
1322                // console.log("stop")
1323                mySwiper.autoplay.stop();
1324                changeButtonState(false);
1325            } else {
1326                // console.log("play")
1327                mySwiper.autoplay.start();
1328                changeButtonState(true);
1329            }
1330        });
1331    }
1332
1333    function changeButtonState(isAutoplay) {
1334        var playButton = $(target).find('.playButton');
1335        if (!playButton) {
1336            return;
1337        }
1338        if (isAutoplay) {
1339            if (!playButton.hasClass('pause')) {
1340                playButton.addClass('pause');
1341            }
1342            if (playButton.hasClass('play')) {
1343                playButton.removeClass('play');
1344            }
1345            playButton.text('pause');
1346        } else {
1347            if (playButton.hasClass('pause')) {
1348                playButton.removeClass('pause');
1349            }
1350            if (!playButton.hasClass('play')) {
1351                playButton.addClass('play');
1352            }
1353            playButton.text('play');
1354        }
1355    }
1356    return mySwiper;
1357}
1358
1359var swiperLoopOn = function(swiper) {
1360    swiper.update(true);
1361    if (swiper && !swiper.params.loop) {
1362        swiper.createLoop();
1363        swiper.params.loop = true;
1364        swiper.updateSlidesSize();
1365        swiper.slideTo(0 + swiper.loopedSlides, 0, false);
1366    }
1367    swiper.params.spaceBetween = 0;
1368    swiper.update(true);
1369}
1370
1371var swiperLoopOff = function(swiper, marginProps) {
1372    swiper.update(true);
1373    marginProps = marginProps && marginProps || 0;
1374    if (swiper && swiper.params.loop) {
1375        swiper.destroyLoop();
1376        swiper.params.loop = false;
1377    }
1378    swiper.params.spaceBetween = swiper.width * marginProps;
1379    swiper.update(true);
1380}
1381
1382var lazyloadCatch = function() {
1383    $("img.lazyload_1").lazyload();
1384}
1385// Swiper function - end
1386
1387// Checkbox -toggle - start
1388/* 체크박스 체크 전체선택시 하위 체크박스 체크 */
1389function allCheckFunc(obj) {
1390    $("[name=checkOne]").prop("checked", $(obj).prop("checked"));
1391}
1392/* 체크박스 체크시 전체선택 체크 여부 */
1393function oneCheckFunc(obj) {
1394    var allObj = $("[name=checkAll]");
1395    var objName = $(obj).attr("name");
1396    if ($(obj).prop("checked")) {
1397        checkBoxLength = $("[name=" + objName + "]").length;
1398        checkedLength = $("[name=" + objName + "]:checked").length;
1399        if (checkBoxLength == checkedLength) {
1400            allObj.prop("checked", true);
1401        } else {
1402            allObj.prop("checked", false);
1403        }
1404    } else {
1405        allObj.prop("checked", false);
1406    }
1407}
1408// Checkbox -toggle - end
1409
1410// categoryMenuBar - start
1411function categoryMenuBar(container, _options) {
1412    var containerEl = $(container);
1413    var itemWrapper = $(container + ' ' + container + '_wrapper');
1414    var innerWrapper = $(container + ' ' + container + '_inner');
1415    var itemEls = containerEl.find(container + '_item');
1416    var rightBtn = containerEl.find('.category_next')[0];
1417    var leftBtn = containerEl.find('.category_prev')[0];
1418    var totalWidth = 0;
1419    var translateX = 0;
1420    var options = {
1421        hideArrow: false,
1422        widthForHideArrow: 0,
1423    }
1424    if (_options !== undefined) {
1425        Object.keys(_options).forEach(function(key) {
1426            options[key] = _options[key];
1427        });
1428    }
1429
1430    this.getItemsTotalWidth = function() {
1431        var tempTotalWidth = 0;
1432        for (var i = 0; i < itemEls.length; i++) {
1433            var el = $(itemEls)[i];
1434            var style = el.currentStyle || window.getComputedStyle(el);
1435            var width = $(itemEls)[i].getBoundingClientRect().width;
1436            width = Math.ceil(width * 100) / 100;
1437            var margin = parseFloat(style.marginLeft) + parseFloat(style.marginRight);
1438            margin = Math.ceil(margin * 100) / 100;
1439            tempTotalWidth += width + margin;
1440        };
1441
1442        // if( options.hideArrow && options.widthForHideArrow - 82 > Math.ceil(tempTotalWidth) ) {
1443        //   $(rightBtn).hide();
1444        //   $(leftBtn).hide();
1445        // } else {
1446        //   $(rightBtn).show();
1447        //   $(leftBtn).show();
1448        // }
1449        totalWidth = Math.ceil(tempTotalWidth * 100) / 100;
1450        innerWrapper.css('width', totalWidth);
1451    }
1452    this.getItemsTotalWidth();
1453
1454    $(rightBtn).click(function() {
1455        var prevTanslateX = translateX;
1456        translateX = getNextTranslateX(parseInt(-prevTanslateX));
1457        moveCategory(translateX);
1458        checkButtonsState(translateX);
1459    });
1460
1461    $(leftBtn).click(function() {
1462        var prevTanslateX = translateX;
1463        translateX = getPrevTranslateX(parseInt(-prevTanslateX));
1464        moveCategory(translateX);
1465        checkButtonsState(translateX);
1466    });
1467
1468    function checkButtonsState(currentTranslateX) {
1469        if (isReachLastCategory(-currentTranslateX)) {
1470            disableButton(rightBtn);
1471        } else {
1472            enableButton(rightBtn);
1473        }
1474        if (isReachFirstCategory(-currentTranslateX)) {
1475            disableButton(leftBtn);
1476        } else {
1477            enableButton(leftBtn);
1478        }
1479    }
1480
1481    function getNextTranslateX(currentTranslateX) {
1482        var items = itemEls.filter(function(index, item) {
1483            var leftPosition = parseInt($(item).position().left);
1484            var wrapperWidth = itemWrapper.outerWidth();
1485            var itemWidth = $(item).outerWidth(true);
1486            var calcRightPosition = parseInt($(item).position().left) + currentTranslateX + itemWidth;
1487            var calcLeftPosition = parseInt($(item).position().left) + currentTranslateX;
1488            return (calcRightPosition > wrapperWidth && calcLeftPosition < wrapperWidth) ||
1489                (calcRightPosition > wrapperWidth);
1490        });
1491        var item = items.length ? items[0] : null;
1492        if (!!item) {
1493            translateX = $(item).position().left;
1494            if (parseInt(translateX + itemWrapper.outerWidth()) > totalWidth) {
1495                translateX = (totalWidth - itemWrapper.outerWidth());
1496            }
1497        }
1498        return Math.ceil(translateX);
1499    }
1500
1501    //  왼쪽 이동 버튼 클릭시, 현재 뷰에서 가장 왼쪽 아이템 선택
1502    function getPrevTranslateX(currentTranslateX) {
1503        var items = itemEls.filter(function(index, item) {
1504            var leftPosition = parseInt($(item).position().left);
1505            var itemWidth = $(item).outerWidth(true);
1506            var calcLeftPosition = leftPosition + currentTranslateX;
1507            var calcRightPosition = leftPosition + currentTranslateX + itemWidth;
1508            return (calcLeftPosition < 0 && calcRightPosition > 0) ||
1509                Math.abs(calcRightPosition) <= 1;
1510        });
1511
1512        var item = items.length ? items[0] : null;
1513        if (!!item) {
1514            var itemLeftOffset = $(item).position().left;
1515            var wrapperWidth = itemWrapper.outerWidth();
1516            var width = $(item).outerWidth(true);
1517            translateX = parseInt(itemLeftOffset - wrapperWidth + width) > 0 ? parseInt(itemLeftOffset - wrapperWidth + width) : 0;
1518        }
1519        return Math.ceil(translateX);
1520    }
1521
1522    // 카테고리가 끝에 도달 했는지 체크
1523    function isReachLastCategory(currentTranslateX) {
1524        var items = itemEls.filter(function(index, item) {
1525            var leftPosition = parseInt($(item).position().left);
1526            var wrapperWidth = itemWrapper.outerWidth();
1527            var itemWidth = $(item).outerWidth(true);
1528            var calcRightPosition = parseInt($(item).position().left) + currentTranslateX + itemWidth;
1529            var calcLeftPosition = parseInt($(item).position().left) + currentTranslateX;
1530            return (calcRightPosition > wrapperWidth && calcLeftPosition < wrapperWidth) || (calcRightPosition > wrapperWidth);
1531        });
1532        var item = items.length ? items[0] : null;
1533        if (!!item) {
1534            return false;
1535        }
1536        return true;
1537    }
1538
1539    // 카테고리가 처음에 도달 했는지 체크
1540    function isReachFirstCategory(currentTranslateX) {
1541        var items = itemEls.filter(function(index, item) {
1542            var leftPosition = parseInt($(item).position().left);
1543            var itemWidth = $(item).outerWidth(true);
1544            var calcLeftPosition = leftPosition + currentTranslateX;
1545            var calcRightPosition = leftPosition + currentTranslateX + itemWidth;
1546            return (calcLeftPosition < 0 && calcRightPosition > 0) || Math.abs(calcRightPosition) <= 1;
1547        });
1548        var item = items.length ? items[0] : null;
1549        if (!!item) {
1550            return false;
1551        }
1552        return true;
1553    }
1554
1555    function enableButton(btnEl) {
1556        !$(btnEl).hasClass('is_active') && $(btnEl).addClass('is_active');
1557    }
1558
1559    function disableButton(btnEl) {
1560        $(btnEl).hasClass('is_active') && $(btnEl).removeClass('is_active');
1561    }
1562
1563    this.resize = function() {
1564        if (SDS_COMMON.currentWidth() < 1024) {
1565            moveCategory(0);
1566            checkButtonsState(0);
1567        } else {
1568            var wrapperWidth = itemWrapper.outerWidth();
1569            var resizedTranslateX = wrapperWidth + translateX;
1570            if (resizedTranslateX > totalWidth) {
1571                translateX = totalWidth - wrapperWidth;
1572                moveCategory(translateX);
1573                checkButtonsState(translateX);
1574            } else {
1575                checkButtonsState(translateX);
1576            }
1577        }
1578    }
1579
1580    function moveCategory(transX) {
1581        innerWrapper.css('transform', 'translate(' + '-' + transX + 'px, 0)');
1582    }
1583}
1584// categoryMenuBar - end

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.