PageSourceSearch

https://www.etlandmall.co.kr/nas/cdn/pc/js/com.js?v=201905131547235959

js etlandmall.co.kr collected 2026-10-03 19:59:24 UTC 56,257 bytes, 1,426 lines download raw bytes

1var win_w, win_h, ie8, ie, sc_t = 0;
2var con_w, con_h, ie_vs; //팝업 사이즈 체크용
3
4var com = (function() {
5    return {
6        skipnavi: function(idx) {
7            document.getElementById(idx).tabIndex = -1;
8            document.getElementById(idx).focus();
9            return false;
10        }, //skipnavi: function(){
11        sc_ck: function() {
12            ie8 = com.ie8(); //버전체크
13            var win = window,
14                doc = document;
15            laypop = $('#laypop');
16            if (!win.innerWidth) {
17                if (!(doc.documentElement.clientWidth == 0)) {
18                    win_w = doc.documentElement.clientWidth;
19                    win_h = doc.documentElement.clientHeight;
20                } else {
21                    win_w = doc.body.clientWidth;
22                    win_h = doc.body.clientHeight;
23                }
24            } else {
25                win_w = win.innerWidth;
26                win_h = win.innerHeight;
27            }
28            //			console.log(win_w+' / '+win_h);
29
30            if (laypop.length != 0 && laypop.css('display') == 'block') com.laypop('re');
31
32        }, //sc_ck: function(){
33        sel_chg: function(idx, type) {
34            /*
35				com.sel_chg($(this), {chg, reset, ''})
36				chg = 옵션값바꺼야 할때
37				reset = 옵션 리셋
38				'' = 셀렉트를 기본으로 만들어요
39			*/
40            var _select = idx == undefined ? $('.sel_chg') : idx;
41            if (type == 'chg') {
42                _select.next('.sel_d').remove();
43                _select.after(com.sel_html(_select));
44            } else if (type == 'reset') {
45                $.each(_select, function(i) {
46                    var _dSel = $(_select[i]),
47                        _selectTx = _dSel.children().eq(0).text(),
48                        _btns = _dSel.next().children('button'),
49                        _inputs = _dSel.next().children('input');
50                    _btns.val(_selectTx).html(_selectTx);
51                    _inputs.val(_selectTx);
52                    _dSel.children().first().prop('selected', true).siblings().prop('selected', false);
53                    _dSel.trigger('click');
54                });
55            } else {
56                _select.each(function(i) {
57                    $(this).hide().after(com.sel_html($(this)));
58                });
59            }
60        }, //sel_chg: function(){
61        sel_html: function(_this) {
62            /* 옵션
63				data-width="100" //셀렉트 고정값
64			*/
65            var _tx_lg_w = 0;
66            $.each(_this.children(), function() {
67                var each_tx = $(this).text(),
68                    re_tx = each_tx.replace(/[^(가-힣ㄱ-ㅎㅏ-ㅣa-zA-Z0-9)]/gi, ''),
69                    re_tx_lg = re_tx.length;
70                if (_tx_lg_w < (re_tx_lg * 18)) _tx_lg_w = (re_tx_lg * 18);
71
72            });
73            
74            var _optionTxtSetYn = false;
75            var _optHtml = '',
76                _id = _this.attr('id'),
77                _width = _this.data('width') | null,
78                _pl = _this.val() == '' ? _this.children().first().text() : _this.children('option[value="' + _this.val() + '"]').text(),
79                _lg = _this.children().length,
80                _sel_d = _width != 0 ? $('<div class="sel_d" data-id="' + _id + '" style="min-width:' + _width + 'px"></div>') : $('<div class="sel_d" data-id="' + _id + '" style="min-width:' + _tx_lg_w + 'px"></div>'),
81                _sel_opt = $('<ol class="a_list"></ol>'),
82                _sel_stc = '<span class="ctrl"><span class="arrow"></span></span>';
83            _this.children().each(function(i) {
84                _val = $(this).val(),
85                _txt = $(this).text(),
86                _last = (i == _lg - 1) ? 'last' : '';
87                var _display = $(this).css('display');
88                if(_display != 'none' && !_optionTxtSetYn && $(_this).find('option:selected').text() == _txt) {
89                	_pl = _txt;
90                	_optionTxtSetYn = true;
91                }
92                _optHtml += '<li class="' + _last + '" style="display:' + _display + ' !important' + '"><a href="javascript:void(0);" code="' + _val + '">' + _txt + '</a></li>';
93            });
94            
95            _sel_stc += '<input type="hidden" id="f_' + _id + '" name="f_' + _id + '" value="">';
96            _sel_stc += '<button type="button" class="my_value" id="" value="' + _pl + '">' + _pl + '</button>';
97            _sel_d.append(_sel_stc, _sel_opt.append(_optHtml));
98
99            // 기존 영역 replace
100            var _def_sel_d = $('.sel_d').filter(function() {return $(this).data('id') == _id});
101            if(_def_sel_d.length == 0) {
102            	//event
103                var _btn = _sel_d.children('button'),
104                    _inp = _sel_d.children('input');
105                
106            	_btn.on('click', function() {
107                    //if(!_inp.val()) _sel_d.width(_sel_d.outerWidth(true));
108                    if (_sel_d.hasClass('open')) {
109                        _sel_d.removeClass('open').children('.a_list').hide();
110                        _sel_d.off('mouseleave');
111                    } else {
112                        _sel_d.addClass('open').children('.a_list').show();
113                        _sel_d.off('mouseleave').on('mouseleave', function() {
114                            _btn.trigger('click').focus();
115                        });
116                    }
117                }).on('focus', function() {
118                    _this.next('.sel_d').removeClass('open').children('.a_list').hide();
119                });
120                _sel_opt.find('a').on('click', function() {
121                    var _a = $(this),
122                        _txt = _a.text(),
123                        _val = _a.attr('code'),
124                        _idx = _a.parent().index();
125                    _btn.val(_val).html(_txt);
126                    _inp.val(_val);
127                    _this.children().eq(_idx).prop('selected', true).siblings().prop('selected', false);
128                    _this.trigger('click');
129                    _btn.trigger('click').focus();
130                });
131            	
132            	return _sel_d;
133            } else {
134            	_def_sel_d.html(_sel_d.html());
135            	
136            	//event
137                var _btn = _def_sel_d.children('button'),
138                    _inp = _def_sel_d.children('input');
139                
140            	_btn.on('click', function() {
141                    //if(!_inp.val()) _sel_d.width(_sel_d.outerWidth(true));
142                    if (_def_sel_d.hasClass('open')) {
143                    	_def_sel_d.removeClass('open').children('.a_list').hide();
144                    	_def_sel_d.off('mouseleave');
145                    } else {
146                    	_def_sel_d.addClass('open').children('.a_list').show();
147                    	_def_sel_d.off('mouseleave').on('mouseleave', function() {
148                            _btn.trigger('click').focus();
149                        });
150                    }
151                }).on('focus', function() {
152                    _this.next('.sel_d').removeClass('open').children('.a_list').hide();
153                });
154            	_def_sel_d.find('ol a').on('click', function() {
155                    var _a = $(this),
156                        _txt = _a.text(),
157                        _val = _a.attr('code'),
158                        _idx = _a.parent().index();
159                    _btn.val(_val).html(_txt);
160                    _inp.val(_val);
161                    _this.children().eq(_idx).prop('selected', true).siblings().prop('selected', false);
162                    _this.trigger('click');
163                    _btn.trigger('click').focus();
164                });
165            	
166            	return _def_sel_d;
167            }
168        }, //sel_html: function(_this){
169        laypop: function(type, idx, objId, today, today_tx) {
170            /*
171				type = 'show', 'hide', 're'
172				idx = #laypop안에 몇번째 laypop_con를 바라볼건지, 입력x = 0
173				objId = $('#laypop') 말고 다른 id로 쓸때
174				today = 하루동안 안뛰우기 팝업 true, false
175				today_tx = today에 쓰일 구분자
176			*/
177            var laypop = objId == undefined ? $('#laypop') : $('#' + objId),
178                _idx = (idx != undefined) ? idx : 0,
179                lay_con = laypop.find('.laypop_con'),
180                html = $('body'),
181
182                v_today = (today == undefined) ? false : true,
183                inp_today = laypop.find('#inp_today').is(':checked'), // input
184                f_cookie_ck = function(name) {
185                    var nameOfCookie = name + '=',
186                        x = 0;
187
188                    while (x <= document.cookie.length) {
189                        var y = (x + nameOfCookie.length);
190                        if (document.cookie.substring(x, y) == nameOfCookie) {
191                            if ((endOfCookie = document.cookie.indexOf(';', y)) == -1) endOfCookie = document.cookie.length;
192                            return unescape(document.cookie.substring(y, endOfCookie));
193                        }
194
195                        x = document.cookie.indexOf(' ', x) + 1;
196                        if (x == 0) break;
197                    }
198                    return '';
199                },
200                f_cookie_set = function(name, value, expiredays) {
201                    var todayDate = new Date();
202                    todayDate.setDate(todayDate.getDate() + expiredays);
203                    // 유효시간이 1분인경우:  todayDate.setMinutes(todayDate.getMinutes() + expiredays);
204                    // 동일설정: todayDate.setTime(todayDate.getTime() + (expiredays * 24 * 60 * 60 * 1000) );
205                    var cookie = name + '=' + escape(value) + '; path=/;';
206                    if (typeof expiredays != undefined) {
207                        cookie += '; expires=' + todayDate.toGMTString() + ';';
208                    }
209
210                    document.cookie = cookie;
211                },
212                f_cookie_del = function(name) {
213                    var todayDate = new Date();
214                    todayDate.setDate(todayDate.getDate() - 1); //과거 시간으로 바꾸기
215                    // 동일: todayDate.setTime(todayDate.getTime( - 1);
216                    var value = f_cookie_ck(name);
217                    if (value != '') var cookie = name + '=' + escape(value) + '; path=/; expires=' + todayDate.toGMTString() + ';';
218                };
219
220
221            if ((lay_con.length - 1) < _idx) { // _idx잘못 넘기면 er
222                alert('[err] com.laypop _idx잘못 넘기면 er');
223                return false;
224            }
225
226            if (type == 'show') {
227                //show
228            	/*if(objId == "laypopCart"){
229            		var _nasa = {};
230            		_nasa["cnv"] = wcs.cnv("3", "1");
231
232            		if(!wcs_add) var wcs_add = {};
233            		wcs_add["wa"] = "s_107e238246c4";
234            		wcs.inflow();
235            		wcs_do(_nasa);
236            	}*/
237                if (v_today && f_cookie_ck(today_tx)) return false; //하루 안뛰우기 체크
238
239                if (laypop.data('idx') != undefined) laypop.data('idx', _idx);
240                else laypop.attr('data-idx', _idx);
241                laypop.show();
242
243                lay_con.eq(_idx).show().siblings().hide();
244                var ti = lay_con.eq(_idx).children('.ti');
245                ti.find('hr').width(ti.outerWidth(true));
246
247                html.css({
248                    'overflow-x': 'hidden',
249                    'overflow-y': 'hidden'
250                }).find('#container').css({
251                    'z-index': 'auto'
252                });
253                com.laypop('re', idx, objId, today, today_tx);
254
255                var _a = lay_con.eq(_idx).find('a'),
256                    _a_F = _a.eq(0).addClass('fcs_tabS'),
257                    _a_L = _a.eq(_a.length - 1).addClass('fcs_tabE');
258
259                _a_F.on('keydown', function(evt) {
260                    var e = event || evt;
261                    var charCode = e.which || e.keyCode;
262
263                    if (charCode === 9) {
264                        if (e.shiftKey) {
265                            _a_L.focus();
266                            return false;
267                        }
268                    }
269                }); //.focus();
270                _a_L.on('keydown', function(evt) {
271                    var e = event || evt;
272                    var charCode = e.which || e.keyCode;
273
274                    if (charCode === 9) {
275                        if (!e.shiftKey) {
276                            _a_F.focus();
277                            return false;
278                        }
279                    }
280                });
281                lay_con.attr('tab-index', 0).focus();
282            } else if (type == 're') {
283                //리사이즈
284                laypop.css({
285                    'width': win_w,
286                    'height': win_h
287                });
288                var data_idx = laypop.data('idx'),
289                    lay_con = laypop.children('.laypop_con').eq(data_idx),
290                    lay_con_h = lay_con.outerHeight(true),
291                    css_t = (win_h - lay_con_h) / 2;
292
293                if (css_t > parseInt(0)) lay_con.css('top', css_t);
294                else lay_con.css('top', '10px');
295            } else if (type == 'hide') {
296                //하루 안뛰우기 체크
297                if (v_today && inp_today) f_cookie_set(today_tx, 'done', 1);
298
299                laypop.removeAttr('style').hide().children('.laypop_con').hide();
300                html.css({
301                    'overflow-x': '',
302                    'overflow-y': ''
303                }).find('#container').css({
304                    'z-index': ''
305                });
306            }
307
308        }, //laypop: function(){
309        amount: function(idx) {
310            var _idx = idx;
311            $.each(_idx, function(i) {
312                var _this = _idx.eq(i),
313                    _inp = _this.children('input'),
314                    _btn_u = _this.children('a').first();
315
316                _btn_u.on('click', function() {
317                    _inp.val(parseInt(_inp.val()) + 1);
318                    return false;
319                }).next().on('click', function() {
320                    _val = parseInt(_inp.val()) - 1;
321                    if (_val < 0) _val = 0;
322                    _inp.val(parseInt(_val));
323                    return false;
324                });
325            });
326
327        }, //amount:function(){
328        ie8: function() {
329            var ie8_chk = true;
330            if (document.all && !document.querySelector) ie8_chk = true; //ie8이하
331            else ie8_chk = false; //ie8이상
332
333            var rv = -1;
334            if (navigator.appName == 'Microsoft Internet Explorer') {
335                var ua = navigator.userAgent;
336                var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
337                if (re.exec(ua) != null)
338                    rv = parseFloat(RegExp.$1);
339                ie = rv;
340            } else ie = -1;
341
342            return ie8_chk;
343        }, //ie8: function(){
344        header: function() {
345            var _header = $('#header'),
346                _sh_d = _header.find('.auto_keywords'),
347                _inp_sh = _header.find('#inp_sh'),
348                _best_key = _header.find('.best_key'),
349                _best_list = _best_key.children('.best_list'),
350                _mv_3ds = null; //3댑스누군지좀 할라고..
351
352            //test 키워드입니다.
353            //			var _key_db = ['냉장고','LG 냉장고','삼성 냉장고','양문형 냉장고','4도어 냉장고','냉장고 기획전'];
354
355            var best_rl = setInterval(rl_start, 3000),
356                set_num = 0;
357            //키워드
358            _best_key.on({
359                mouseleave: function() {
360                    _best_list.hide();
361                    best_rl = setInterval(rl_start, 3000);
362                },
363                mouseenter: function() {
364                    _best_list.show();
365                    clearInterval(best_rl);
366                }
367            });
368            _best_list.children('a').on('keydown', function(evt) {
369                var e = event || evt,
370                    charCode = e.which || e.keyCode,
371                    a_lg = $(this).parents('.best_list').children().length,
372                    a_idx = $(this).parent().index();
373
374                if (charCode === 9) {
375                    if ((e.shiftKey && a_idx == 0) || (!e.shiftKey && a_idx == (a_lg - 1))) _best_key.find('.best_list').hide();
376                }
377            });
378
379            function rl_start() {
380                set_num++;
381                var _best = _best_key.children('.best_3'),
382                    _best_lg = _best.find('li').length
383                _css_top = (set_num % _best_lg) * -20;
384                _best.children().animate({
385                    marginTop: _css_top
386                }, 200);
387            }
388
389            //검색 키워드
390            _inp_sh.on('keydown', function() {
391                if (_sh_d.css('display') == 'none') {
392                    _sh_d.show();
393                    $('label.inp_sh').css({
394                        'border': '1px solid #fc1f28',
395                        'border-width': '1px 1px 0 1px'
396                    });
397                }
398            }).on('focusout', function() {
399                if (_sh_d.css('display') == 'block') {
400                    setTimeout(function() {
401                        _sh_d.hide();
402                        $('label.inp_sh').css('border', '0 none');
403                    }, 500);
404                }
405            });
406
407            /*_inp_sh.on('keydown', function(evt){
408                if (_sh_d.css('display') == 'block') {
409                    var e = event || evt,
410						charCode = e.which || e.keyCode,
411						this_val = $(this).val();
412
413                    if(charCode === 9){
414                        var _list_dd = _sh_d.find('dd'),
415                            _a_lg = _list_dd.children().length,
416                            _focus_lg = _list_dd.children('.focus').length,
417                            _focus_a, _focus_tx = '';
418
419                        if (e.shiftKey) { //shift+tab
420                            if (_focus_lg != 0) {
421                                var _focus_idx = _list_dd.children('.focus').index();
422                                if (_focus_idx == 0) { //첫번째일때
423                                    sh_dHide();
424                                    return false;
425                                }
426
427                                _focus_a = _list_dd.children('.focus').prev(),
428                                _focus_tx = _focus_a.text();
429                                _focus_a.addClass('focus').siblings().removeClass('focus');
430                            } else {
431                                sh_dHide();
432                                return;
433                            }
434                            _inp_sh.val(_focus_tx);
435                            _inp_sh.focus();
436                            return false;
437
438                        } else { //tab
439                            if (_focus_lg != 0) {
440                                //포커스된거 있을때
441
442                                //리스트에 마지막일때
443                                var _focus_idx = _list_dd.children('.focus').index();
444                                if (_a_lg == _focus_idx + 1) { //마지막꺼일때
445                                    sh_dHide();
446                                    return;
447                                }
448
449                                _focus_a = _list_dd.children('.focus').next(),
450                                _focus_tx = _focus_a.text();
451                                _focus_a.addClass('focus').siblings().removeClass('focus');
452                            } else {
453                                //포커스된거 없을때
454                                var _focus_a = _list_dd.children().first(),
455                                    _focus_tx = _focus_a.text();
456                                _focus_a.addClass('focus');
457                            }
458                            _inp_sh.val(_focus_tx);
459                            _inp_sh.focus();
460                            return false;
461                        }
462                    }
463                }//if(_sh_d.css('display') == 'block') {
464
465                function sh_dHide() {
466                    _sh_d.hide();
467                    _list_dd.children().removeClass('.focus');
468                }
469            }).on('keyup', function(evt){
470				var e = event || evt,
471					charCode = e.which || e.keyCode,
472					this_val = $(this).val(), //검색한 키워드
473					this_val_lg = this_val.length,//키워드 길이
474					list_html = '';
475
476				if(charCode == 9) return false;//tab들어오면 nono
477
478				//리스트
479				$.each(_key_db, function(i){
480					list_html += '<a href="">';
481					list_html += '	<span>'+_key_db[i]+'</span>';
482					list_html += '</a>';
483				});
484				_sh_d.find('.list').html(list_html);
485
486				//검사
487				$.each(_sh_d.find('.list span'), function(){
488					var _this = $(this),
489						_tx = _this.text(),
490						_tx_lg = _tx.length,
491						_idx = _tx.indexOf(this_val);
492
493					if(_idx != -1){
494						if(_idx == 0){
495							var _first_tx = _tx.substring(_idx, this_val_lg),
496								_last_tx = _tx.substring(this_val_lg, _tx_lg);
497							_this.html('<em>'+_first_tx+'</em>'+_last_tx);
498						}else{
499							var _first_tx = _tx.substring(0, (_idx-1)),
500								_sub_tx = _tx.substring(_idx-1, (_idx+this_val_lg)),
501								_last_tx = _tx.substring((_idx+this_val_lg), _tx_lg);
502							_this.html(_first_tx+'<em>'+_sub_tx+'</em>'+_last_tx);
503						}
504					}
505
506				});
507			});*/
508
509            //My LAND
510            $('.header .gnb .gnb_contents .myland').on('mouseenter', function() {
511                var _this = $(this),
512                    _sub_lay = _this.children('.sub_lay');
513                _sub_lay.show().on('mouseleave', function() {
514                    _sub_lay.hide();
515                });
516            });
517
518            //전체 카테고리
519            var _main_chk = $('body').hasClass('page-main'),
520                _btn_navOpen = $('#btn_navOpen'),
521                _gnb = _btn_navOpen.next('ul'),
522                _mv_depth = [false, false]; //ds1,2
523            _mv_depth2 = [false, false]; //ds2,3
524
525            /*if (_main_chk) { //메인
526                _btn_navOpen.on({ //전체카테고리 버튼
527                    mouseenter: function() {
528                        _gnb.show().animate({
529                            left: 0,
530                            opacity: 1
531                        }, 200);
532                        _mv_depth[0] = true;
533                    },
534                    mouseleave: function() {
535                        _mv_depth[0] = false;
536                        gnb_hide();
537                    }
538                });
539            } else { //다른페이지
540			*/
541                _btn_navOpen.on({ //전체카테고리 버튼
542                    click: function() {
543                        if (_gnb.hasClass('open')) {
544                            _gnb.removeClass('open');
545                            _mv_depth[0] = false;
546                            gnb_hide();
547                        } else {
548                            _gnb.addClass('open').show().animate({
549                                left: 0,
550                                opacity: 1
551                            }, 200);
552                            _mv_depth[0] = true;
553                        }
554
555                    },
556                    mouseleave: function() {
557                       // _mv_depth[0] = false;
558                        //gnb_hide();
559                    }
560                });
561            //}
562
563			_btn_navOpen.parent('.hmenu').mouseleave(function(){
564				_mv_depth[0] = false;
565				gnb_hide();
566			});
567
568            _gnb.on({
569                mouseenter: function() {
570                    _mv_depth[1] = true;
571                },
572                mouseleave: function() {
573                    _mv_depth[1] = false;
574                    gnb_hide();
575                }
576            }).children('li').on({ //1댑스
577                mouseenter: function() {
578                    var _this = $(this),
579                        _last = _this.hasClass('l'),
580                        _dl = _this.children('dl'),
581                        _a = _this.children(),
582                        _a_h = _a.outerHeight(true),
583                        _css_top = _a.position().top + (_a_h / 2) - 10; //8은 icon높이 반
584
585                    if (_dl.length) {
586                        if (_last) _css_top = _this.position().top + (_a_h / 2) - 10; //맞춤견적일때
587
588                        if (_gnb.data('one') == true) {
589                            _dl.show().css({
590                                left: '100%',
591                                opacity: 1
592                            }).find('dt i').css({
593                                top: _css_top
594                            });
595                        } else {
596                            if (_gnb.data('one')) _gnb.attr('data-one', true);
597                            else _gnb.data('one', true);
598
599                            _dl.show().animate({
600                                left: '100%',
601                                opacity: 1
602                            }, 200).find('dt i').css({
603                                top: _css_top
604                            });
605                        }
606                    } //if(_dl.length){
607                },
608                mouseleave: function() {
609                    var _this = $(this),
610                        _dl = _this.children('dl');
611
612                    if (_dl.length) {
613                        _dl.css({
614                            left: '95%',
615                            opacity: 0
616                        }).hide();
617                    }
618                }
619            });
620            /*.find('.mn').children('a').on({ //2댑스
621                mouseenter: function() {
622                    var _this = $(this),
623                        _ds_3 = _this.next('.ds_3'),
624                        _this_h = _this.height(),
625                        _css_top = _this.position().top + (_this_h / 2) - 25; //a태그위로 -25px
626
627                    if (_ds_3.length) {
628                        _mv_depth2[0] = true;
629                        _this.addClass('on');
630                        _ds_3.css({
631                            display: 'block',
632                            top: _css_top
633                        }).animate({
634                            left: '219px',
635                            opacity: 1
636                        }, 200);
637
638                        _this.siblings('.on').removeClass('on').next('.ds_3').removeAttr('style');
639                    }
640                },
641                mouseleave: function() {
642                    var _this = $(this),
643                        _ds_3 = _this.next('.ds_3');
644
645                    if (_ds_3.length) {
646                        _mv_depth2[0] = false;
647                        gnb_hide(_ds_3);
648                    }
649                }
650            }).next('.ds_3').on({ //3댑스
651                mouseenter: function() {
652                    _mv_depth2[1] = true;
653                },
654                mouseleave: function() {
655                    _mv_depth2[1] = false;
656                    gnb_hide($(this));
657                }
658            });*/
659
660            function gnb_hide(_ds_33) {
661                _mv_3ds = _ds_33;
662                setTimeout(function() {
663
664                    if ($.inArray(true, _mv_depth2) == -1 && _mv_3ds != undefined) {
665                        _mv_3ds.prev('a').removeClass('on');
666                        _mv_3ds.animate({
667                            left: '210px',
668                            opacity: 0
669                        }, 200, function() {
670                            $(this).removeAttr('style');
671                        });
672                        _gnb.data('one', false);
673                    }
674
675                    if ($.inArray(true, _mv_depth) == -1 && $.inArray(true, _mv_depth2) == -1) {
676                        _gnb.removeClass('open');
677                        _gnb.animate({
678                            left: '-10px',
679                            opacity: 0
680                        }, 200, function() {
681                            $(this).hide();
682                        }).find('dd .on').removeClass('on').next('.ds_3').removeAttr('style');
683                        _gnb.data('one', false);
684                    }
685                }, 100);
686
687            }
688
689            //날씨
690            var _btn_weather = $('#btn_weather, #weather_pr .btn_close'),
691                _lay_weather = $('#weather_pr'),
692                _slider = _lay_weather.find('.list_d dd'),
693                _btn_wt_alert = $('#btn_area, #weather_alert .btn_close'),
694                _lay_wt_alert = $('#weather_alert'),
695                _opt = {
696                    preloadImages: 'visible',
697                    controls: true,
698                    captions: true,
699                    pager: false,
700                    auto: false,
701                    minSlides: 3,
702                    maxSlides: 3,
703                    slideWidth: 180,
704                    slideMargin: 5,
705                    infiniteLoop: false
706                };
707
708            _btn_weather.on('click', function() {
709                if (_lay_weather.css('display') == 'block') _lay_weather.hide();
710                else {
711                    _lay_weather.show().find('a').first().focus();
712                    $.each(_slider, function(i) {
713
714                        var _this = $(this);
715                        if (_this.data('one') != true) {
716                            _this.attr('data-one', true);
717                            var _slider = _this.find('.list > ul');
718
719                            _slider.bxSlider(_opt);
720
721                            if (_slider.children().length <= 3) _slider.parent().next('.bx-controls').hide();
722
723                        }
724                    });
725                }
726            });
727
728            //위치정보 설정레이어
729            _btn_wt_alert.on('click', function() {
730                if (_lay_wt_alert.css('display') == 'block') {
731                    _lay_wt_alert.children('.laypop_con').hide();
732                    _lay_wt_alert.hide();
733                } else {
734                    _lay_wt_alert.children().first().show();
735                    _lay_wt_alert.show().find('a').first().focus();
736                }
737            });
738
739            //sky
740            var sky = $('#skyscraperB');
741            var skyA = $('#skyscraperA');
742
743            if (sky.length) {
744                var doc = $(window),
745                    foot_t = $('#footer').offset().top,
746                    bnTop = $('.toplineBnr').height() + $('#header').height() + 30;
747
748                sky.css('top',bnTop);
749                sky.attr('data-top', bnTop);
750
751                doc.on('scroll', function() {
752                    var sc_t = doc.scrollTop();
753
754                    var _this = sky,
755                        _top = _this.data('top'),
756                        _h = _this.height() + 10,
757                        _css_t = (_top - sc_t),
758                        _css_t = _css_t <= 0 ? 10 : _css_t,
759                        _lap = (foot_t - sc_t),
760                        _this_end = (_h - _lap);
761
762                    if (_this_end >= 0) _this.css({
763                        top: (_css_t - _this_end) - 5
764                    });
765                    else _this.css({
766                        top: _css_t
767                    });
768                });
769            }
770
771            if(skyA.length) {
772            	var bnTop = $('#container').offset().top + 30;
773            	skyA.css('top',bnTop);
774            }
775
776        }, //header: function(){
777        accordion: function(_idx, _type) {
778            /*
779				_idx = 클릭할곳
780				_type = tr, li, dl, dt (table구조냐 li구조냐..)
781			*/
782            _idx.on('click', function(e) {
783                e.preventDefault();
784
785                var $this = $(this),
786                    answer = $this.parents(_type).next();
787                if (answer.hasClass('in open')) answer.removeClass('in open').hide();
788                else answer.addClass('in open').show();
789            });
790        }, //accordion : function(_idx, _type){
791        tab: function(_tab_mn, _openNum, _return) {
792            /*
793				_tab_mn = 탭메뉴 a태그를 감싸고 있는 바로윗단 $('ㅁㅁ')
794				_open   = 처음에 열릴 tab(기본 0)
795				_return = [true,false] 리턴값 받을건지 안받을건지
796						  _return_tab() 이거 만들어서 받으면됨요
797			*/
798            if (_openNum == undefined) _openNum = 0;
799            $.each(_tab_mn, function(i) {
800                var _this = $(this),
801                    _a = _this.find('a'),
802                    _datas = [];
803
804                $.each(_a, function() {
805                    _datas.push($(this).data('tabcon'));
806                });
807
808                _a.attr('data-tabcondb', _datas).on('click', function() {
809                    var _this = $(this),
810                        _idx = _this.index(),
811                        _tab_con = _this.data('tabcon'),
812                        _tabcondb = _this.data('tabcondb'),
813                        _data_sp = _tabcondb.replace(_tab_con, '').split(',');
814
815                    _this.addClass('on').siblings().removeClass('on');
816                    $('#' + _tab_con).show();
817
818                    $.each(_data_sp, function(i) {
819                        if (_data_sp[i] == '') return;
820                        if ($('#' + _data_sp[i])) $('#' + _data_sp[i]).hide();
821                    });
822
823                    if (_return) _return_tab(_this, _idx);
824                });
825
826                //
827                _a.eq(_openNum).trigger('click');
828            });
829
830        }, //tab: function(){
831        gps: function() {
832            if ('geolocation' in navigator) {
833                var geo = navigator.geolocation;
834                geo.getCurrentPosition(function(pos) {
835                    var _pos = pos,
836                        _coo = _pos.coords,
837                        _lat = _coo.latitude, // 위도
838                        _lon = _coo.longitude, // 경도
839                        _acc = _coo.accuracy; // 정확도
840
841                    var add_tx = add(_lat, _lon),
842                        add_gu = add_tx.results[0].address_components[2].long_name,
843                        add_si = add_tx.results[0].address_components[3].long_name;
844
845                    $.ajax({
846                        type: "POST",
847                        async: false,
848                        data: {
849                            "LOC_INF_ADR": add_tx,
850                            "CTY_SDO_NM": add_si,
851                            "CTY_GGU_NM": add_gu
852                        },
853                        url: "/pc/common/commonIpInsertAjax.do",
854                        dataType: "json",
855                        success: function(json) {
856                            if (json) {
857                                $('.weather > i').attr('class', '');
858                                $('#temperTxt').html(Number(json.info.CTY_WTH_CTM) + "<span>°</span>");
859                                $('#locTxt').text(json.info.TODAY + ' ' + json.info.CTY_GGU_NM);
860                            }
861                        },
862                        error: function() {
863                            alert('ajax error');
864                        }
865                    });
866
867                    function add(map_x, map_y) {
868                        var data;
869                        $.ajax({
870                            type: "GET",
871                            async: false,
872                            url: "http://maps.googleapis.com/maps/api/geocode/json?latlng=" + map_x + "," + map_y + "&sensor=true_or_false",
873                            dataType: "json",
874                            success: function(json) {
875                                data = json;
876                            },
877                            error: function() {
878                                alert('ajax error');
879                            }
880                        });
881                        return data;
882                    }
883                }, function(e) {
884                    alert({
885                        0: '위치 정보 검색에 문제가 있습니다.(msg:' + e.message + ')',
886                        1: '현재 페이지에서 사용자가 위치 정보 검색을 거부했습니다.',
887                        2: '브라우저가 위치정보를 검색하지 못했습니다.(msg:' + e.message + ')',
888                        3: '브라우저의 위치 정보 검색 시간이 초과됐습니다.'
889                    }[e.code]);
890                });
891            }
892        }, //gps: fucntion(){
893
894        pop_chk: function(_type) {
895            //버전, 호환성 체크
896            ie_vs = []; //[ie,etc / ie버전 / 호환성보기]
897            var agt = navigator.userAgent.toLowerCase(),
898                ck_1 = '';
899
900            if (agt.indexOf('chrome') != -1) ck_1 = 'Chrome';
901            else if (agt.indexOf('opera') != -1) ck_1 = 'Opera';
902            else if (agt.indexOf('staroffice') != -1) ck_1 = 'Star Office';
903            else if (agt.indexOf('webtv') != -1) ck_1 = 'WebTV';
904            else if (agt.indexOf('beonex') != -1) ck_1 = 'Beonex';
905            else if (agt.indexOf('chimera') != -1) ck_1 = 'Chimera';
906            else if (agt.indexOf('netpositive') != -1) ck_1 = 'NetPositive';
907            else if (agt.indexOf('phoenix') != -1) ck_1 = 'Phoenix';
908            else if (agt.indexOf('firefox') != -1) ck_1 = 'Firefox';
909            else if (agt.indexOf('safari') != -1) ck_1 = 'Safari';
910            else if (agt.indexOf('skipstone') != -1) ck_1 = 'SkipStone';
911            else if (agt.indexOf('msie') != -1) ck_1 = 'Internet Explorer';
912            else if (agt.indexOf('netscape') != -1) ck_1 = 'Netscape';
913            else if (agt.indexOf('mozilla/5.0') != -1) ck_1 = 'Mozilla';
914            ie_vs[0] = ck_1;
915
916            var rv = '-1',
917                ua = navigator.userAgent,
918                ie_Trident = 0; // 4 = ie8 , 5 = ie9 , 6 = ie10 , 7 = ie11 , 0 = 크롬,사파리,파폭
919            if (navigator.appName == 'Microsoft Internet Explorer') {
920                var re = new RegExp('MSIE ([0-9]{1,}[\.0-9]{0,})');
921                if (re.exec(ua) != null) rv = parseFloat(RegExp.$1);
922
923                var ivs = ua.split('Trident/');
924                ie_Trident = ivs[1].split('.');
925                ie_Trident = ie_Trident[0];
926            } else {
927                //navigator.appName == Netscape
928                var ivs = ua.split('Trident/');
929
930                if (ivs[1] == 'undefined' || ivs[1] == null) {
931                    ivs = 'ie_x';
932                } else {
933                    ie_Trident = ivs[1].split('.');
934                    ie_Trident = ie_Trident[0];
935                }
936            }
937
938            if (rv == '7') {
939                if (ie_Trident == '4') {
940                    ie_vs[1] = '8';
941                    ie_vs[2] = true;
942                } else if (ie_Trident == '5') {
943                    ie_vs[1] = '9';
944                    ie_vs[2] = true;
945                } else if (ie_Trident == '6') {
946                    ie_vs[1] = '10';
947                    ie_vs[2] = true;
948                } else {
949                    ie_vs[1] = '7';
950                    ie_vs[2] = false;
951                }
952            } else if (rv == '8') {
953                ie_vs[1] = '8';
954                ie_vs[2] = false;
955            } else if (rv == '9') {
956                ie_vs[1] = '9';
957                ie_vs[2] = false;
958            } else if (rv == '10') {
959                ie_vs[1] = '10';
960                ie_vs[2] = false;
961            } else if (rv == '11') {
962                ie_vs[1] = '11';
963                ie_vs[2] = false;
964            } else if (rv == '-1') {
965                if (ie_Trident == '7') {
966                    ie_vs[1] = '11';
967                    ie_vs[2] = true;
968                } else {
969                    ie_vs[1] = '-1';
970                    ie_vs[2] = false;
971                }
972            }
973            com.pop_resize(_type);
974        }, //pop_chk : function(){
975        pop_resize: function(_type) {
976            var type = _type == false ? false : true,
977                _children = $('body').children().first();
978            _children.css({
979                display: 'inline-block'
980            });
981            con_w = _children.outerWidth(true),
982            con_h = _children.outerHeight(true);
983
984            //			console.log(con_w+' / '+con_h);
985            if (ie_vs[0] == 'Internet Explorer') {
986                if (ie_vs[1] == '10' || ie_vs[1] == '9') {
987                    window.resizeTo(con_w + 16, con_h + 60); //ie10 +ie9
988                    //					console.log('[1]');
989                } else {
990                    window.resizeTo(con_w + 10, con_h + 53); //ie8
991                    //					console.log('[2]');
992                }
993            } else {
994                if (ie_vs[1] == '11' && ie_vs[2] == true) {
995                    window.resizeTo(con_w + 16, con_h + 60); //ie11
996                    //					console.log('[3]');
997                } else if (ie_vs[0] == 'Safari') {
998                    window.resizeTo(con_w + 16, con_h + 98); //Safari
999                    //					console.log('[4]');
1000                } else if (ie_vs[0] == 'Firefox') {
1001                    window.resizeTo(con_w + 18, con_h + 65); //Firefox
1002                    //					console.log('[5]');
1003                } else {
1004                    window.resizeTo(con_w + 16, con_h + 65); //Chrome
1005                    //					console.log('[6]');
1006                }
1007            }
1008            if (_type) {
1009                $('body').css('overflow', 'hidden');
1010                //				console.log('[00]');
1011            } else {
1012                $('body').css({
1013                    overflow: 'hidden',
1014                    'overflow-y': 'auto'
1015                });
1016                //				console.log('[11]');
1017            }
1018        } //pop_resize : function(){
1019
1020    } // return {
1021}()); //com = (function(){
1022
1023var theme = (function() {
1024    return {
1025        pkg_list_h: function() {
1026            /*
1027				옵션 추가되면 리스트 높이 맞쳐줘요
1028			*/
1029            var _pr_list = $('.package_con .pr_list');
1030            $.each(_pr_list, function() {
1031                var _this = $(this),
1032                    _h = 0;
1033                if (_this.css('display') == 'block') {
1034                    $.each(_this.find('li'), function() {
1035                        var _this = $(this);
1036                        _this.css('height', '');
1037                        var _this_h = _this.height();
1038                        if (_h < _this_h) _h = _this_h;
1039                    });
1040                    _this.find('li').height(_h);
1041                }
1042            });
1043
1044        }, //pkg_list_h : function(){
1045        pr_ck: function(_label) {
1046            var all_pr = 0,
1047                pk_pr = 0,
1048                _pr_d = $('.wedding_d .package_con .total_price .prc')
1049            tx_all_pr = _pr_d.find('.all .money'),
1050            tx_pk_pr = _pr_d.find('.pk .money'),
1051            tx_save_pr = _pr_d.find('.save strong');
1052
1053            $.each(_label, function(i) {
1054                var _this = $(this);
1055                if (_this.hasClass('on')) {
1056
1057                    var _next = _this.next();
1058                    all_pr += parseInt(_next.find('.pr_m strong').text().replace(/,/gi, '')),
1059                    pk_pr += parseInt(_next.find('.sel_m strong').text().replace(/,/gi, ''));
1060                }
1061            });
1062            String.prototype.number_format = function() {
1063                return this.replace(/(\d)(?=(?:\d{3})+(?!\d))/g, '$1,');
1064            };
1065            tx_all_pr.text(String(all_pr).number_format());
1066            tx_pk_pr.text(String(pk_pr).number_format());
1067            tx_save_pr.text(String(all_pr - pk_pr).number_format());
1068        }, //pr_ck: function(_label){
1069
1070        pr_ck2: function(_label) {
1071            var _label = $(_label);
1072            var all_pr = 0,
1073                pk_pr = 0,
1074                _pr_d = $('.wedding_d .package_con .total_price .prc')
1075            tx_all_pr = _pr_d.find('.all .money'),
1076            tx_pk_pr = _pr_d.find('.pk .money'),
1077            tx_save_pr = _pr_d.find('.save strong');
1078
1079            $.each(_label, function(i) {
1080                var _this = $(this);
1081                if (_this.hasClass('on')) {
1082
1083                    var _next = _this.next();
1084                    all_pr += parseInt(_next.find('.pr_m strong').text().replace(/,/gi, '')),
1085                    pk_pr += parseInt(_next.find('.sel_m strong').text().replace(/,/gi, ''));
1086                }
1087            });
1088            String.prototype.number_format = function() {
1089                return this.replace(/(\d)(?=(?:\d{3})+(?!\d))/g, '$1,');
1090            };
1091            tx_all_pr.text(String(all_pr).number_format());
1092            tx_pk_pr.text(String(pk_pr).number_format());
1093            tx_save_pr.text(String(all_pr - pk_pr).number_format());
1094        } //pr_ck2: function(_label){
1095    } // return {
1096}()); //theme = (function() {
1097
1098
1099com.sc_ck();
1100$(window).resize(com.sc_ck);
1101$(document).ready(function() {
1102    if (ie8) {
1103        $('#container').find('hr').each(function() {
1104            var _this = $(this),
1105                _parent_w = _this.parent().width();
1106            _this.width(_parent_w);
1107        });
1108    }
1109    com.sel_chg(); //select변경
1110    com.header(); //header
1111
1112    // 툴팁
1113    $.handlerTooltipOpen = function(e) {
1114        e.preventDefault();
1115        var $this = $(this),
1116            _href = $(this.hash),
1117            _size = $this.data('size').split('x'),
1118            _width = parseInt(_size[0], 10),
1119            _height = parseInt(_size[1], 10),
1120            _top = $this.offset().top + 30,
1121            // _top = $this.offset().top + $this.outerHeight() + 15,
1122            _left = $this.offset().left - _width + $this.width() + 30;
1123        // _left = _left - 520 - (_width / 2);
1124        // _left = _left * (1020 - _width) / 1020 + 30;
1125        //
1126        _href.addClass('in').css({
1127            width: _width,
1128            // height: _height,
1129            top: _top,
1130            left: _left
1131        });
1132    };
1133
1134    $.handlerTooltipClose = function(e) {
1135        e.preventDefault();
1136        var $this = $(this),
1137            _href = $(this.hash);
1138
1139        _href.removeClass('in').removeAttr('style');
1140    };
1141    $('.js-tooltip').on('click', function(e) {
1142        e.preventDefault();
1143    });
1144    $('.js-tooltip').on('mouseenter', $.handlerTooltipOpen).on('mouseleave', $.handlerTooltipClose);
1145
1146    // radio
1147    $.handlerRadio = function(e) {
1148        var $this = $(this),
1149            _name = $this.children('input').attr('name'),
1150            _siblings = $this.parents().find('input[name="' + _name + '"]');
1151
1152        _siblings.attr('checked', false).parent().removeClass('on');
1153        $this.addClass('on').children('input').prop('checked', true).trigger("change");
1154    };
1155    $('.js-radio').on('click', $.handlerRadio);
1156
1157    // checkbox
1158    $.handlerCheckbox = function(e) {
1159        var $this = $(this);
1160
1161        if ($this.hasClass('on')) {
1162            $this.removeClass('on').children('input').prop('checked', false).trigger("change");
1163        } else {
1164            $this.addClass('on').children('input').prop('checked', true).trigger("change");
1165        }
1166        return false;
1167    };
1168    $('.js-checkbox').on('click', $.handlerCheckbox);
1169
1170    // skyscraper
1171    var skyscraper = function() {
1172
1173        var $html = $('html'),
1174            $skyscraperA = $('#skyscraperA'),
1175            $skyscraperB = $('#skyscraperB'),
1176            $keeping = $skyscraperB.children('.keeping-wrap');
1177
1178        // skyscraper A
1179        $skyscraperA.find('.slider').bxSlider({
1180            controls: false,
1181            auto: true
1182        });
1183
1184        // skyscraper B
1185        $skyscraperB.find('.slider').bxSlider({
1186            minSlides: 3,
1187            maxSlides: 3,
1188            mode: 'vertical',
1189            pager: false,
1190            infiniteLoop: false,
1191            hideControlOnEnd: true,
1192            slideWidth: 240,
1193            nextText: '<span class="blind">최근 본 상품 다음 슬라이드</span>',
1194            prevText: '<span class="blind">최근 본 상품 이전 슬라이드</span>'
1195        });
1196
1197        $skyscraperB.children('.keeping-toggle').on('click', function(e) {
1198            e.preventDefault();
1199
1200            $keeping.toggleClass('in');
1201        });
1202
1203        $keeping.children('.close').on('click', function(e) {
1204            e.preventDefault();
1205
1206            $keeping.removeClass('in');
1207        });
1208
1209        $keeping.find('.tab-a a').on('click', function(e) {
1210            e.preventDefault();
1211            var $this = $(this),
1212                li = $this.parent(),
1213                _hash = $(this.hash);
1214
1215            if (li.hasClass !== 'active') {
1216
1217                li.addClass('active').siblings().removeClass('active');
1218                _hash.addClass('in').siblings('.toggler').removeClass('in');
1219            }
1220        });
1221
1222        $skyscraperB.children('.top').on('click', function(e) {
1223            e.preventDefault();
1224            $('html, body').animate({
1225                scrollTop: 0
1226            });
1227        });
1228
1229        $skyscraperB.children('.down').on('click', function(e) {
1230            e.preventDefault();
1231
1232            var _htmlHeight = $html.height();
1233
1234            $('html, body').animate({
1235                scrollTop: '+=' + _htmlHeight
1236            });
1237        });
1238    };
1239
1240    // skyscraper
1241    if ($('.skyscraper').length) {
1242        skyscraper();
1243    }
1244
1245    $.fn.dateTerm = function() {
1246        return this.each(function() {
1247            var $this = $(this);
1248            $this.on('click', function(e) {
1249                e.preventDefault();
1250
1251                var $start = $($this.data('start')),
1252                    $end = $($this.data('end')),
1253                    _term = $this.data('term'),
1254                    _dateStart = new Date(),
1255                    _dateEnd = new Date();
1256
1257                var formatDate = function(date) {
1258                    var _month = date.getMonth() + 1,
1259                        _weekDay = date.getDate(),
1260                        _result = (date.getFullYear() + "-" + ((_month < 10) ? "0" : "") + _month + "-" + ((_weekDay < 10) ? "0" : "") + _weekDay);
1261                    return _result;
1262                };
1263
1264                if (!$start.length || !$end.length || _term === undefined) alert('error');
1265
1266                if (_term === 0) {
1267                    $start.val("");
1268                    $end.val("");
1269                } else if (_term == 1) {
1270                    $start.val(formatDate(_dateStart));
1271                    $end.val(formatDate(_dateEnd));
1272                } else {
1273                    _dateStart.setDate(_dateStart.getDate() + _term);
1274                    _dateEnd.setDate(_dateEnd.getDate());
1275                    $start.val(formatDate(_dateStart));
1276                    $end.val(formatDate(_dateEnd));
1277                }
1278
1279                return false;
1280            });
1281        });
1282    };
1283
1284    // 시작날짜 마감날짜 값 입력
1285    $('.js-dateTerm').dateTerm();
1286
1287    /**
1288     * scroll, resize throttle
1289     * @param { } [varname] [description]
1290     */
1291    $.throttle = (function() {
1292        var _timerThrottle;
1293        return function(fn, delay) {
1294            clearTimeout(_timerThrottle);
1295            _timerThrottle = setTimeout(fn, delay);
1296        };
1297    })();
1298
1299    // 주문서 플로팅
1300    $.fn.floatPanel = function() {
1301
1302        var $this = $(this),
1303            $window = $(window),
1304            $box = $('.payment-box'),
1305            $payment = $('#paymentTotal');
1306        var _marginTop = 0;
1307
1308        var returnTop = function() {
1309            var _offsetTop = $box.offset().top,
1310                _h = $box.height(),
1311                _offsetFoot = (_offsetTop + _h) - $window.innerHeight(),
1312                _scrollTop = $window.scrollTop(),
1313                _fixedTop = _h - $payment.height();
1314
1315            _marginTop = _scrollTop - _offsetTop;
1316
1317
1318            //console.log('scroll:' + _scrollTop, ', footTop : ' + $payment.height());
1319            if (_marginTop >= 0) {
1320                _marginTop = (_offsetFoot < _scrollTop) ? _fixedTop : _marginTop;
1321            } else {
1322                _marginTop = 0;
1323            }
1324        };
1325        $window.on('scroll', function() {
1326            $.throttle(function() {
1327                returnTop();
1328                $this.stop().animate({
1329                    'margin-top': _marginTop - 1
1330                });
1331            }, 100);
1332        });
1333
1334    };
1335    // 주문서 플로팅
1336    if ($('.order-sheet').length) {
1337        $('#paymentTotal').floatPanel();
1338    }
1339
1340    // lnb
1341    $('.page-customer #lnb a.d1').on('click', function(e) {
1342        e.preventDefault();
1343
1344        var $this = $(this),
1345            d1 = $this.parent();
1346
1347        if (d1.hasClass !== 'active') {
1348            d1.addClass('active').siblings().removeClass('active');
1349        }
1350    });
1351
1352    // 주문 옵션 변경
1353    com.accordion($('.js-option-change'), 'tr');
1354
1355    // my page 견적 toggle
1356    $('.estimate-toggler .more').on('click', function(e) {
1357        e.preventDefault();
1358
1359        var $this = $(this),
1360            article = $this.parents('.estimate-toggler');
1361
1362        article.toggleClass('in');
1363
1364        if (article.hasClass('in')) {
1365            $this.children().text('MD 견적 내역 테이블 닫기');
1366        } else {
1367            $this.children().text('MD 견적 내역 테이블 열기');
1368        }
1369    });
1370
1371    // coupon
1372    $('.coupon-search .more').on('click', function(e) {
1373        e.preventDefault();
1374
1375        var $this = $(this),
1376            article = $this.parents('.coupon-search');
1377
1378        article.toggleClass('in');
1379    });
1380
1381    // magazine qna
1382    com.accordion($('.magazine-view .bbs-list a.question'), 'tr');
1383
1384    // 맞춤견적
1385    $('.estimate-sheet .clause a.more').on('click', function(e) {
1386        e.preventDefault();
1387
1388        var $this = $(this),
1389            wrap = $this.parent().parent();
1390
1391        $this.toggleClass('active');
1392
1393        if (wrap.hasClass('in')) {
1394            $this.find('em').text('닫기');
1395            wrap.removeClass('in');
1396        } else {
1397            $this.find('em').text('열기');
1398            wrap.addClass('in');
1399        }
1400    });
1401
1402    // 전자랜드 소개 지점, 직원 검색
1403    // $('.cheer-search-hd .search-form input.text').on('keyup', function(e) {
1404    //     e.preventDefault();
1405    //     var wrap = $(this).parent().next('.search-list-wrap');
1406
1407    //     wrap.show();
1408    // })
1409
1410    $('.cheer-search-hd .search-form input.text').on('focusout', function(e) {
1411        e.preventDefault();
1412        var wrap = $(this).parent().next('.search-list-wrap');
1413
1414        if (wrap.css('display') == 'block') {
1415            setTimeout(function() {
1416                wrap.hide();
1417            }, 200);
1418        }
1419    });
1420});
1421
1422//2019-03-14 개인사업회원 추가
1423function tabCtrl(idx){
1424	$('.indivTabTitle > a').eq(idx).addClass('on').siblings().removeClass('on');
1425	$('.tabContent').eq(idx).show().siblings('.tabContent').hide();
1426}

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.