PageSourceSearch

https://rental.lghellovision.net/resources/js/ui-common_mo.js

js lghellovision.net collected 2026-09-24 10:09:03 UTC 20,727 bytes, 616 lines download raw bytes

1window.browser = {};
2
3$(function() {
4
5    var returnSupportCssBackgroundBlendMode = (function() {
6        var supportCssBackgroundBlendMode = function() {
7            var _bool = window.getComputedStyle(document.body).backgroundBlendMode,
8                _return = (typeof _bool !== 'undefined') ? true : false;
9            return _return;
10        };
11        var _className = (supportCssBackgroundBlendMode() === true) ? 'cssbackgroundblendmode' : 'no-cssbackgroundblendmode';
12        $('body').addClass(_className);
13    })();
14
15    var initGnb = function() {
16
17        var $gnb = $('#gnb'),
18            $d1 = $gnb.children('li');
19
20        var _boolBiz = (!!$('.gnb-area-biz').length); // 기업일 경우만
21        var _htmlClass = 'mobile-personal';
22
23        if (_boolBiz === true) { // 기업일 경우, 새창열림
24            _htmlClass = 'mobile-biz';
25        }
26
27        $('html').addClass(_htmlClass); // set html class
28
29        if (_boolBiz === true) { // 기업일 경우 새창
30            $d1.children('a').each(function() { // lnb 새창
31                var $this = $(this);
32                var _href = $this.attr('href');
33                if (_href !== undefined && _href.indexOf('http') > -1) {
34                    $this.attr('title', '새창');
35                    $this.attr('target', '_blank');
36                }
37            });
38            var $lnb = $('.lnb span a');
39            for (var i = 0; i < $lnb.length; i++) {
40                var $anchor = $lnb.eq(i);
41                var _boolExternal = ($anchor.attr('href').indexOf('http') > -1); // new window
42                if (_boolExternal === true) { // new window
43                    $anchor.attr('title', '새창');
44                    $anchor.attr('target', '_blank');
45                }
46            }
47            $('.gnb-top-menu li a').each(function(i) { // gnb 새창
48                var $this = $(this);
49                var _href = $this.attr('href');
50                if (_href !== undefined && _href.indexOf('http') > -1) {
51                    $this.attr('title', '새창');
52                    $this.attr('target', '_blank');
53                }
54            });
55        }
56
57        // GNB
58        $(document).on('click', '#gnb>li>a', function() {
59            var $this = $(this);
60            if (!$this.hasClass('js-link-menu')) {
61                $this.next('.lnb').parent().addClass('on').siblings('li').removeClass('on');
62                if ($this.attr('target') == '_blank') {
63                    // $('#btn-allmenu-close').trigger('click');
64                } else {
65                    return false;
66                }
67            }
68        }).on('click', '#btn-allmenu-open', function() {
69            $('#allmenu').show().stop().animate({ 'left': 0 }, { duration: 600, easing: 'easeOutQuint' });
70            bgOverlayIn();
71            $('#allmenu').off('touchmove');
72            return false;
73        }).on('click', '#btn-allmenu-close', function() {
74            $('#allmenu').stop().animate({ 'left': '-345px' }, { duration: 600, easing: 'easeOutQuint' }).fadeOut(0);
75            bgOverlayOut();
76        }).on('click', '.lnb>ul>li.collapse>a', function() {
77            $(this).next().slideToggle().parent().toggleClass('on');
78            return false;
79        });
80        $(window).on('load', function() {
81            $('.lnb>ul>li').each(function() {
82                $(this).has('ul').addClass('collapse');
83            });
84        });
85    };
86    initGnb();
87
88    // toggle sitemap
89    var $window = $window || $(window),
90        $sitemap = $('.lg-dn #footerSitemap');
91    var _timerFooter = null;
92    $sitemap.on('click', '.toggle-sitemap', function(e) {
93        e.preventDefault();
94        clearTimeout(_timerFooter);
95        var $upper = $sitemap.find('.upper'),
96            _bool = ($sitemap.hasClass('in')),
97            _height = (_bool === true) ? '0' : $upper.children().height();
98        $upper.css('height', _height);
99        $sitemap.toggleClass('in', !_bool);
100        _timerFooter = setTimeout(function() {
101            $sitemap.toggleClass('anim', !_bool);
102            window.localStorage.setItem('toggleSitemap', !_bool);
103            $window.trigger('resize');
104        }, 5);
105    });
106
107    var gnbBottomMenu = $(".gnb-bottom-menu");
108
109    $(".btn-hello a").on('click', function() {
110        gnbBottomMenu.toggle();
111        $(".sticky-space #btn-totop").toggleClass('open');
112    });
113
114});
115
116// 계열사 사이트
117$(document).on('click', '#btn-family-toggle', function() {
118    $('#family-site').toggleClass('on').children('dd').slideToggle();
119    var paddingT = 0;
120    if ($('#family-site').hasClass('on')) {
121        paddingT = '409px';
122    }
123    $('#footer').animate({ 'padding-top': paddingT });
124});
125
126
127// 맨 위로
128$(document).on('click', '.lg-dn #btn-totop', function() {
129//    $('body, html').animate({ scrollTop: 0 }, 200);
130    window.scrollTo({ top: 0, left: 0, behavior: 'smooth' })
131    $('body').removeClass('is-open-chat');
132    return false;
133});
134$(window).on('load scroll', function() {
135    if ($(this).scrollTop() > 100) {
136        $('.lg-dn #btn-totop').fadeIn();
137    } else {
138        $('.lg-dn #btn-totop').fadeOut();
139    }
140});
141
142// 맨 위로 - 폐쇄몰
143$(document).on('click', '[name=closemall-totop]#btn-totop', function() {
144//    $('body, html').animate({ scrollTop: 0 }, 200);
145	window.scrollTo(0, 200);
146    $('body').removeClass('is-open-chat');
147    return false;
148});
149$(window).on('load scroll', function() {
150    if ($(this).scrollTop() > 100) {
151        $('[name=closemall-totop]#btn-totop').fadeIn();
152    } else {
153        $('[name=closemall-totop]#btn-totop').fadeOut();
154    }
155});
156
157$(document).ready(function() {
158    if ($('#sticky-counsel').length) {
159        $('#btn-chatbot').css('bottom', '70px');
160    } else {
161        $('#btn-chatbot').css('bottom', '16px');
162    }
163
164    var urlSearchParams = new URLSearchParams(window.location.search);
165    var hgrnkCtgrSeqValue = urlSearchParams.get('hgrnkCtgrSeq');
166
167    //노출순서 값을 저장하는 배열
168    var hgrnkCtgrList = new Array();
169    $.each($(".sub-title-wrap"), function(){
170		hgrnkCtgrList.push({
171			hgrnkCtgrSeq:$(this).find("[name='hgrnkCtgrSeq']").val()
172			,stnl:$(this).find("[name='hgrnkCtgrStnl']").val()
173		})
174	})
175	var hasClass = 0;
176	//hgrnkCtgrList[num].hgrnkCtgrSeq와 동일한 메뉴 오픈
177	for(var num in hgrnkCtgrList){
178		if(hgrnkCtgrList[num].hgrnkCtgrSeq == hgrnkCtgrSeqValue){
179			$(".menu-list ul li .sub-title-wrap").eq(num).siblings().slideDown();
180			$(".menu-list ul li .sub-title-wrap").eq(num).addClass('active');
181			hasClass = num;
182		}
183	}
184
185	if(hasClass == 0){
186		$(".menu-list ul li .sub-title-wrap").eq(0).siblings().slideDown();
187		$(".menu-list ul li .sub-title-wrap").eq(0).addClass('active');
188	}
189});
190
191//카테고리 default값 설정
192
193var $body = $('body');
194var $btnChatBot = $('#btn-chatbot');
195$(window).on('load scroll', function() {
196    var $body = $body || $('body'),
197        $btnChatBot = $btnChatBot || $('#btn-chatbot'),
198        _boolStickyCounsel = $('#sticky-counsel').length > 0;
199    if ($(this).scrollTop() > 100) {
200        $body.toggleClass('is-scroll-downed', true);
201        if (_boolStickyCounsel === true) {
202            $btnChatBot.css('bottom', '132px');
203        } else {
204            $btnChatBot.css('bottom', '78px');
205        }
206    } else {
207        $body.toggleClass('is-scroll-downed', false);
208        if (_boolStickyCounsel === true) {
209            $btnChatBot.css('bottom', '70px');
210        } else {
211            $btnChatBot.css('bottom', '16px');
212        }
213    }
214});
215
216// 스티키 위치
217$(function() {
218    if ($('#sticky-counsel').length) {
219        $('html').addClass('sticky-space');
220    }
221});
222
223// 탭메뉴
224$(function() {
225    $('.tab-list-matrix .on a, .sort .on a, .js-tab-list-scroll .on a').each(function() {
226        var tg = $(this).attr('href');
227        if (tg !== '#' && tg.charAt(0) === '#') {
228            $(tg + '.tab-cont').show();
229        }
230    });
231});
232$(document).on('click', '.tab-list-matrix a, .sort a, .js-tab-list-scroll a', function() {
233    $(this).parent('li').addClass('on').siblings('li').removeClass('on');
234    var tg = $(this).attr('href');
235    if (tg === '#' || tg === '') {
236        return false;
237    } else if (tg.charAt(0) === '#') {
238        if ($(tg).hasClass('tab-cont')) {
239            $(tg).show().siblings('.tab-cont').hide();
240            return false;
241        }
242    }
243});
244
245//탭메뉴 20180910 - '.tab-list .on a' 분리
246$(function() {
247    $('.tab-list .on a').each(function() {
248        var tg = $(this).attr('href');
249        if (tg !== '#' && tg.charAt(0) === '#') {
250            //			$(tg+'.tab-cont').show();
251            //$(tg+'.tab-cont').css({'overflow-y':'auto', 'height':'auto'}); 20181123 'overflow-y':'auto' 수정
252            $(tg + '.tab-cont').css({ 'overflow-y': 'visible', 'height': 'auto' });
253        }
254    });
255});
256$(document).on('click', '.tab-list a', function() {
257    $(this).parent('li').addClass('on').siblings('li').removeClass('on');
258    var tg = $(this).attr('href');
259    if (tg === '#' || tg === '') {
260        return false;
261    } else if (tg.charAt(0) === '#') {
262        if ($(tg).hasClass('tab-cont')) {
263            //			$(tg).show().siblings('.tab-cont').hide();
264            //$(tg).css({'overflow-y':'auto', 'height':'auto'}).siblings('.tab-cont').css({'overflow-y':'hidden', 'height':'0'}); 20181123 'overflow-y':'auto' 수정
265            $(tg).css({ 'overflow-y': 'visible', 'height': 'auto' }).siblings('.tab-cont').css({ 'overflow-y': 'hidden', 'height': '0' });
266            return false;
267        }
268    }
269});
270
271$(function() {
272    // 토글(여닫기)버튼
273    $('.js-btn-toggle.active').each(function() {
274        var tg = $(this).attr('href');
275        $(tg).show();
276        return false;
277    });
278    $('.js-btn-toggle').click(function() {
279        $(this).toggleClass('active');
280        var tg = $(this).attr('href');
281        $(tg).slideToggle('fast');
282        return false;
283    });
284
285    // 토글 목록
286    $('.js-list-toggle dt.active+dd').show();
287    $('.js-list-toggle dt button').click(function() {
288        $(this).parent('dt').toggleClass('active').next('dd').stop().slideToggle({ duration: 600, easing: 'easeOutQuint' });
289    });
290
291    // 아코디언 목록
292    $('.js-list-accordion dt.active+dd').show();
293    $('.js-list-accordion dt button').click(function() {
294        $(this).parent('dt').toggleClass('active').siblings('dt').removeClass('active');
295        $(this).parent('dt').next('dd').stop().slideToggle({ duration: 600, easing: 'easeOutQuint' }).siblings('dd').stop().slideUp({ duration: 600, easing: 'easeOutQuint' });
296    });
297});
298
299// 태그 여닫기 토글
300$(function() {
301    $('.js-tag-collapse').each(function() {
302        var defaultH = 30;
303        if ($(this).hasClass('relation-tag-bbs')) {
304            defaultH = 40;
305        }
306        if ($(this).find('.tag-list').outerHeight() > defaultH) {
307            $(this).addClass('overflow');
308        }
309    });
310    $('.js-tag-collapse .btn-toggle-tag').click(function() {
311        $(this).closest('.js-tag-collapse').toggleClass('opened');
312    });
313});
314
315//접히는 토글 목록 : 20190322 추가
316$(function() {
317
318    var $comment = $(".toggle-list2>.toggle-item2");
319    var $comment_con = $(".toggle-list2>.toggle-item2>.toggle-content2");
320    $comment_con.hide();
321
322    function fold() {
323        $(this).parent().next().slideToggle("3000");
324        $(this).parent().parent().toggleClass("active");
325        $comment_con.not($(this).parent().next()).hide();
326        $comment.not($(this).parent().parent()).removeClass("active");
327    }
328    $comment.find(".btn-ev-open").click(fold);
329});
330
331// 파일첨부 디자인
332$(function() {
333    $('.form-file').each(function(index, item) {
334        var w = $(item).outerWidth();
335        var title = $(item).attr('title');
336        var noIndex = Number(index) + 1;
337        $(item).hide().after('<div class="input-group file-attach" style="width:100%;"><input type="text" class="i-file-name" id="noIndex' + noIndex + '" title="' + title + '" readonly><span class="input-addon"><button type="button" class="btn btn-black">첨부</button></span></div>');
338    });
339    var fileTarget = $('input[type=file]');
340    fileTarget.on('change', function() {
341        if (window.FileReader) {
342            // modern browser
343            var filename = $(this)[0].files[0].name;
344        } else {
345            // old IE
346            var filename = $(this).val().split('/').pop().split('\\').pop();
347        }
348        $(this).next().children('.i-file-name').val(filename);
349    });
350});
351$(document).on('click', '.file-attach input, .file-attach .btn', function() {
352    $(this).closest('.file-attach').prev('.form-file').click();
353});
354
355// 툴팁 레이어
356$(document).on('click', '.js-open-toolip', function() {
357    $(this).next('.layer-small').fadeIn(300);
358    bodyScroll('lock');
359    return false;
360}).on('click', '.js-close-tooltip', function() {
361    $(this).closest('.layer-popup').fadeOut(300).prev('.js-open-toolip').focus();
362    bodyScroll('unlock');
363});
364
365// 모달 레이어
366$(document).on('click', '.js-open-modal', function() {
367    openModal($(this));
368    return false;
369}).on('click', '.js-close-modal', function() {
370    closeModal($(this));
371});
372
373var layerOpener = null;
374
375function openModal(_obj, opener) {
376    var tg;
377    if ($(_obj).prop('tagName') === 'A' || $(_obj).prop('tagName') === 'AREA') {
378        tg = $(_obj).attr('href');
379        layerOpener = _obj;
380    } else {
381        tg = _obj;
382        if (opener !== '') layerOpener = $(opener);
383    }
384
385    // history.pushState('', document.title, window.location.pathname + window.location.search + tg);
386    var $target = $(tg);
387    if ($target.data('toggle') === true) { // 0810, 클래스만 제어
388        $target.addClass('show').find('.popup-inner').attr('tabindex', '0').focus();
389    } else {
390        $target.show().addClass('show').find('.popup-inner').attr('tabindex', '0').focus();
391    }
392
393    if ($target.data('overlay') !== false) { // 0810, 오버레이 제어
394        bgOverlayIn();
395    }
396}
397
398function closeModal(_obj) {
399    var tg;
400    if ($(_obj).prop('tagName') === 'A' || $(_obj).prop('tagName') === 'BUTTON') {
401        var $obj = $(_obj); // 0810, 타겟 지정 기능
402        if ($obj.data('target') !== undefined) {
403            tg = $($obj.data('target'));
404        } else {
405            tg = $obj.closest('.layer-popup');
406        }
407    } else {
408        tg = _obj;
409    }
410    if (typeof tg == 'string') {
411        tg = $(tg);
412    }
413    if ($(tg).data('toggle') === true) { // 0810, 클래스만 제어
414        $(tg).removeClass('show');
415    } else {
416        $(tg).hide().removeClass('show');
417    }
418    if (layerOpener !== null) {
419        layerOpener.focus();
420        layerOpener = null;
421    }
422    removeHash();
423    bgOverlayOut();
424}
425
426function closeModal2(_obj) {
427    var tg;
428    if ($(_obj).prop('tagName') === 'A' || $(_obj).prop('tagName') === 'BUTTON') {
429        tg = $(_obj).closest('.layer-popup');
430    } else {
431        tg = _obj;
432    }
433    $(tg).hide().removeClass('show');
434    if (layerOpener !== null) {
435        layerOpener.focus();
436        layerOpener = null;
437    }
438    removeHash();
439    //bgOverlayOut();
440}
441
442function openModalSmall(_obj, opener) {
443    var tg;
444    if ($(_obj).prop('tagName') === 'A' || $(_obj).prop('tagName') === 'AREA') {
445        tg = $(_obj).attr('href');
446        layerOpener = _obj;
447    } else {
448        tg = _obj;
449        if (opener !== '') layerOpener = $(opener);
450    }
451    // history.pushState('', document.title, window.location.pathname + window.location.search + tg);
452    $(tg).fadeIn(300).addClass('show').find('.popup-inner').attr('tabindex', '0').focus();
453    bodyScroll('lock');
454}
455
456function closeModalSmall(_obj) {
457    var tg;
458    if ($(_obj).prop('tagName') === 'A' || $(_obj).prop('tagName') === 'BUTTON') {
459        tg = $(_obj).closest('.layer-popup');
460    } else {
461        tg = _obj;
462    }
463    $(tg).fadeOut(300).removeClass('show');
464    if (layerOpener !== null) {
465        layerOpener.focus();
466        layerOpener = null;
467    }
468    // removeHash();
469    bodyScroll('unlock');
470}
471
472function bgOverlayIn() {
473    $('.overlay').fadeIn(600);
474    $('body').addClass('modal-opened');
475    $('.overlay').on('touchmove', function(e) {
476        e.preventDefault();
477        e.stopPropagation();
478    });
479}
480
481function bgOverlayOut() {
482    $('html').off('touchmove');
483    $('body').removeClass('modal-opened');
484    $('.overlay').fadeOut(600);
485}
486
487function bodyScroll(stat) {
488    if (stat === 'lock') {
489        $('body').addClass('modal-opened');
490        $('html').on('touchmove', function(e) {
491            e.preventDefault();
492            e.stopPropagation();
493        });
494    } else if (stat === 'unlock') {
495        $('html').off('touchmove');
496        $('body').removeClass('modal-opened');
497    }
498}
499
500function removeHash() {
501    history.pushState('', document.title, window.location.pathname + window.location.search);
502}
503
504function orderCancel2() {
505
506    $("#lb-name").val("");
507    $("#lb-tel").val("");
508    $("#lb-time").prop("selectedIndex", "0");
509    $('input:checkbox[id="modallb-agree"]').attr("checked", false);
510}
511
512function orderCancel3() {
513    $("#cust_name").val("");
514    $("#cust_tel").val("");
515    $('input:checkbox[id="lb-agree-join"]').attr("checked", false);
516}
517
518
519//더보기버튼
520$(document).on('click', '#service-info', function() {
521    $(this).toggleClass('active');
522    $(this).next('ul').stop().slideToggle({ duration: 600, easing: 'easeOutQuint' });
523});
524
525$(function() {
526    // 유의사항 펼침/닫침
527    var discTitle = $('.event-note h4');
528    //var discCont = $('.event-note ul');
529
530    discTitle.each(function() {
531        $(this).find('> a').on('click', function(e) {
532            e.preventDefault();
533
534            if ($(this).hasClass('open')) {
535                $(this).removeClass('open');
536                //discCont.hide();
537                $(this).parent().parent().find('ul').hide();
538            } else {
539                $(this).addClass('open');
540                //discCont.show();
541                $(this).parent().parent().find('ul').show();
542            }
543        });
544    });
545});
546
547//가입가능지역 조회
548$(document).on("click", "#btn-search-area", function() {
549    if ($("#dong_nm").val() == "") {
550        alert("동/면/읍을 입력해주세요.");
551        $("#dong_nm").focus();
552        return;
553    }
554    $.ajax({
555        type: 'POST',
556        url: "/main/getAddrSearch.do",
557        data: $("#areaFrm").serialize(),
558        dataType: 'json',
559        success: function(data) {
560            if (data.success) {
561                if (data.addrList[0].CNT > 0) {
562                    $('#area_true').show();
563                } else {
564                    $('#area_false').show();
565                }
566            } else {
567                $('#area_false').show();
568            }
569        }
570    });
571})
572
573//모달 레이어 - 헬세권이벤트
574$(document).on('click', '.event_pop_close', function() {
575    $('.event_popwrap').hide();
576});
577
578
579$(document).on('click', '#leftmenu .lnb li .dropdown_area', function() {
580    var $this = $(this),
581        $offset = $(this).offset();
582    if ($this.closest('li').hasClass('on')) {
583        $this.closest('li').removeClass('on');
584//        $this.closest('li').find('.menu-list').hide("slow");
585        $this.closest('li').find('.menu-list').hide(300);
586    } else {
587        $("#leftmenu .lnb li").removeClass('on');
588        $("#leftmenu .lnb li .menu-list").hide(300);
589        $this.closest('li').addClass('on');
590        $this.closest('li').find('.menu-list').show(300);
591        $("#leftmenu").animate({ scrollTop: $offset.top - 100 }, 500);
592    }
593
594    return false;
595});
596
597function ariaControlHandler(event){
598    const _btn = event.target;
599    const _exp = _btn.getAttribute('aria-expanded');
600    switch(_exp){
601        case ('true') :
602            _btn.setAttribute('aria-label', '하위목록 펼치기');
603            _btn.setAttribute('aria-expanded', false);
604            break;
605        case ('false') :
606            _btn.setAttribute('aria-label', '하위목록 접기');
607            _btn.setAttribute('aria-expanded', true);
608    }
609}
610
611function ToggleHeaderList(event) {
612    var dropdownWrap = $(event.target).closest('.sub-title-wrap');
613    dropdownWrap.siblings().slideToggle();
614
615    dropdownWrap.toggleClass('active')
616}

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.