PageSourceSearch

https://alpinion.co.kr/js/user/sub.js

js alpinion.co.kr collected 2026-10-06 21:41:20 UTC 27,789 bytes, 853 lines download raw bytes

1/* *******************************************************
2 * filename : sub.js
3 * description : 서브컨텐츠에만 사용되는 JS
4 * date : 2020-02-24
5******************************************************** */ 
6
7jQuery(function($){
8	/* 서브 Visual Active */ 
9	setTimeout(function  () {
10		addClassName($("#visual"), "active");
11	});
12
13	/* 서브 MagnificPopup */
14	if ($.exists(".popup-gallery")) {
15		magnificPopup($(".popup-gallery"));
16	}
17
18	/* 서브 Scrollbar Table  */ 
19	$(".custom-scrollbar-wrapper").each(function  () {
20		if ( $("html").attr("lang") == "ko" ) {
21			var dragTxt = "좌우로 드래그 해주세요.";
22		}else {
23			var dragTxt = "Drag left and right.";
24		}
25		$(this).append("<div class='custom-scrollbar-cover'><div class='scroll-cover-txt'><i class='xi-touch'></i><p>"+dragTxt+"</p></div></div>");
26		var $scrollObject = $(this).find(".scroll-object-box");
27		if ($.exists($scrollObject)) {
28			customScrollX($scrollObject);
29		}
30		$(this).on("touchmove click",function  () {
31			$(this).find(".custom-scrollbar-cover").fadeOut(200);
32		});
33	});
34	
35	/* *********************** 메뉴 FIXED 및 해당영역 이동 ************************ */
36	if ($.exists(".cm-fixed-tab-container")) {
37		if ( $.exists(".cm-fixed-link-tab-wrapper")) {
38			var menuFunc = "linkTab";	// 링크이동일때
39		}else {
40			var menuFunc = "moveTab";	// 영역이동일때
41		}
42		var $fixedMoveTab = $(".cm-fixed-move-tab-list");
43		var $moveTabItem = $fixedMoveTab.find("li");
44		var menuCount= $moveTabItem.size();
45		
46		startPointCheck();
47		$(window).on('resize', startPointCheck); 
48		
49		// Fixed되는 시점, 탭 높이값 측정
50		function startPointCheck () {
51			if ( getWindowWidth() < 1025 ) {
52				fixedHeaderHeight = $("#header").height();
53			}else {
54				fixedHeaderHeight = 0
55			}
56			fixedTabHeight = $fixedMoveTab.height();
57			fixedStartPoint =  $(".cm-fixed-move-tab-wrapper").offset().top - fixedHeaderHeight;	// 탭이 붙는 지점
58			
59			if ( menuFunc === "moveTab" ) {
60				nav= new Array();
61				for(var i=0;i < menuCount;i++){
62					nav[i]="nav"+i;
63					nav[i]=$($moveTabItem.eq(i).children("a").attr("href")).offset().top - fixedTabHeight - fixedHeaderHeight;
64				}
65			}
66		}
67
68		$(window).scroll(function  () {
69			// 메뉴fixed
70			objectFixed($fixedMoveTab, fixedStartPoint);
71			if ( menuFunc === "moveTab" ) { 
72				$moveTabItem.each(function  (idx) {
73					if( getScrollTop() >= nav[idx] ){
74						$moveTabItem.removeClass('selected');
75						$moveTabItem.eq(idx).addClass('selected');
76					};
77				});
78			}
79			
80		});
81		
82		if ( menuFunc === "moveTab" ) { 
83			$moveTabItem.find("a").click(function  () {
84				var goDiv = $($(this).attr("href")).offset().top - (fixedTabHeight-1) - fixedHeaderHeight;
85				moveScrollTop(goDiv);
86				 
87				return false;
88			});
89		}
90	}
91	
92	/* Contact 개인정보처리방침 스크롤 */
93	customScrollY ('.inquiry-agreement-con');
94	
95
96	/* *********************** 제품 검색 ************************ */
97	if ($.exists(".prd-search")) {
98		$(".prd-search").children(".prd-search-tit").click(function  () {
99			var $searchWrap = $(".prd-search-box");
100			var $searchFilter = $searchWrap.find(".prd-search-filter");
101			if (!($searchWrap.hasClass("open"))) {
102				$searchWrap.addClass("open");
103				$searchFilter.slideDown();
104			}else {
105				$searchWrap.removeClass("open");
106				$searchFilter.slideUp();
107			}
108		})
109	}
110	
111	/* *********************** 제품 인트로 ************************ */
112	if ($.exists(".ultrasound-intro-list-item")) {
113		var $ultraList = $(".ultrasound-list-item .prd-list");
114		var itemHeight = $(".ultrasound-list-item li").height(); 
115		var listHeight = $ultraList.height();
116		if ( listHeight > itemHeight ) {
117			$ultraList.css({'height':itemHeight,'overflow':'hidden'});
118			btnClick () ;
119		}
120
121		$(window).on('resize', function  () {
122			var itemHeight = $(".ultrasound-list-item li").height(); 
123			var listHeight = $ultraList.height();
124			if ($(".ultrasound-list-item").hasClass("open")) { //열려있을떄
125				$ultraList.css({'height':"auto",'overflow':'hidden'});
126				$(".ultrasound-list-item li").css({'height':"auto"});
127			}else { //닫혀있을때
128				$ultraList.css({'height':itemHeight,'overflow':'hidden'});
129			}
130
131		});
132		
133		function btnClick () {
134			$(".ultrasound-list-item").find(".sub-btn").click(function  () {
135				var itemHeight = $(".ultrasound-list-item li").height(); 
136				if ($(".ultrasound-list-item").hasClass("open")) {
137					$(".ultrasound-list-item").removeClass("open");
138					$ultraList.css({'height':itemHeight});
139					$(this).children("span").text("See all");
140					var goDiv = $(".ultrasound-list-item").offset().top - $("#header").height();
141					moveScrollTop(goDiv , 800);
142				}else {
143					$(".ultrasound-list-item").addClass("open");
144					$ultraList.css({'height':"auto"});
145					$(this).children("span").text("Close");
146					var goDiv = $(".ultrasound-list-item").offset().top - $("#header").height() + itemHeight ;
147					moveScrollTop(goDiv , 800);
148				}
149			})
150		}
151		
152	}
153	
154	/* *********************** 제품 슬라이드 ************************ */
155	if ($.exists(".prd-view-slide-box")) {
156		var $prdViewSlide = $(".prd-view-slide-box").find(".prd-view-slide");
157		$prdViewSlide.slick({
158			slidesToShow: 1,
159			slidesToScroll: 1,
160			arrows: true,
161			fade: true,
162			dots:false,
163			autoplay: false,
164			speed:800,
165			infinite:true,
166			autoplaySpeed: 3000,
167			easing: 'easeInOutQuint',
168			pauseOnHover:false,
169			prevArrow: '<button type="button" data-role="none" class="slick-prev end" aria-label="Prev" tabindex="0" role="button"><i class="xi-angle-left-thin"></i></button>',
170			nextArrow: '<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button"><i class="xi-angle-right-thin"></i></button>',
171		});
172	}
173
174		/* *********************** 제품 넘버링 ************************ */
175	if ($.exists(".dne-numbering")) {
176		$(".prd-view-dne-con").each(function  () {
177			var $imgNumBox = $(this).find(".dne-numbering");
178			var $imgNum = $imgNumBox.children(".num");
179
180			var $infoNumList = $(this).find(".info-con").children(".info-list");
181			var $infoTxt = $infoNumList.find(".txt-box");
182			var $infoNum = $infoNumList.find(".num");
183			//처음 펼쳐져있기
184			$infoNumList.children("li").eq(0).find(".txt-box").show();
185			
186			numbering ();
187			function numbering () {
188				$imgNum.each(function  () {
189					$(this).click(function  () {
190						var $imgNumIndex = $(this).data("index");
191						if (!($(this).hasClass("on"))) {
192							$imgNum.removeClass("on"); //이미지전체넘버on지우기
193							$infoNumList.children("li").removeClass("on"); //텍스트전체넘버on지우기
194							$infoTxt.slideUp(); //전체 텍스트 올림
195
196							$(this).addClass("on"); //이미지 해당 넘버 on 
197							$infoNumList.children("li").eq($imgNumIndex-1).addClass("on"); // 텍스트 해당 넘버on
198							$infoNumList.children("li").eq($imgNumIndex-1).find(".txt-box").slideDown(); // 해당텍스트 펼침
199
200							if (getWindowWidth() < 640 ) {
201								var  top = $infoNumList.children("li").eq($imgNumIndex-1).offset().top - 200;
202								moveScrollTop (top, 600);
203							}
204							
205							//이미지바뀜
206							if ($(this).parents(".prd-view-dne-con").hasClass("change-image")) {
207								$(this).parents(".dne-img-box").css({'background-image':'url(/images/content/prd_ultra_tech_img_' + $imgNumIndex + '.png)'});
208							}
209						}
210					})
211				})
212				$infoNum.parents("li").each(function  () {
213					$(this).click(function  () {
214						var $imgNumIndex = $(this).data("index");
215						if (!($(this).hasClass("on"))) {
216							$imgNum.removeClass("on"); //이미지전체넘버on지우기
217							$infoNum.parents("li").removeClass("on");//텍스트전체넘버on지우기
218							$infoTxt.slideUp(); //전체 텍스트 올림
219
220							$(this).addClass("on"); //텍스트 해당 넘버 on 
221							$imgNum.eq($imgNumIndex-1).addClass("on"); //이미지 해당 넘버 on 
222							$(this).find(".txt-box").slideDown(); // 해당텍스트 펼침
223							
224							console.log($imgNumIndex);
225							//이미지바뀜
226							if ($(this).parents(".prd-view-dne-con").hasClass("change-image")) {
227								$(this).parents(".info-con").siblings(".img-con").find(".dne-img-box").css({'background-image':'url(/images/content/prd_ultra_tech_img_' + $imgNumIndex + '.png)'})
228							}
229						}
230					})
231				})
232			}
233		})
234		
235		
236		
237	}
238	
239	/* *********************** 제품 :: More Btn ************************ */
240	if ($.exists(".capability-list .more-btn ")) {
241		 $(".capability-list li").each(function  () {
242			var $prdMoreBtn = $(this).find(".more-btn");
243			var txtBoxHeight = $(this).find(".txt-box").height();
244			$prdMoreBtn.click(function  () {
245				var txtHeight = $(this).siblings(".txt-box").children(".txt").height();
246				console.log(txtBoxHeight , txtHeight);
247				if (!($(this).parents("li").hasClass("open"))) {
248					$(this).parents("li").addClass("open");
249					$(this).siblings(".txt-box").css({'height': txtHeight});
250					$(this).children("span").text("Close");
251				}else {
252					$(this).parents("li").removeClass("open");
253					$(this).siblings(".txt-box").css({'height': txtBoxHeight});
254					$(this).children("span").text("Read more");
255				}
256			})
257		 })
258		
259	}
260	/* *********************** 제품 슬라이드 ************************ */
261	if ($.exists(".capa-tab-slide")) {
262		var $prdViewSlide = $(".capa-tab-slide");
263		$prdViewSlide.slick({
264			slidesToShow: 1,
265			slidesToScroll: 1,
266			arrows: true,
267			fade: true,
268			dots:true,
269			autoplay: false,
270			speed:800,
271			infinite:true,
272			autoplaySpeed: 3000,
273			easing: 'easeInOutQuint',
274			pauseOnHover:false,
275			prevArrow: '<button type="button" data-role="none" class="slick-prev end" aria-label="Prev" tabindex="0" role="button"><i class="xi-angle-left-thin"></i></button>',
276			nextArrow: '<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button"><i class="xi-angle-right-thin"></i></button>',
277		});
278
279		$(".capability-tab-box").find(".cm-tab-list li a").click(function  () {
280			$('.capa-tab-slide').slick("setPosition");
281		})
282	}
283
284
285	/* *********************** 제품 :: Ultrasound RightBar ************************ */
286	if ($.exists("#prdRightBar")) {
287		var $prdRightBar = $("#prdRightBar");
288		var $moveCon = $prdRightBar.find("li");
289		var menuCount= $moveCon.length;
290		var $grayCon = $prdRightBar.find("li.gray-txt").index(); //회색 글씨있는 li찾기
291		var nav = [];
292		
293		$(window).on('load resize scroll', function  () {
294			nav = checkTopOffset();
295		});
296		
297		function checkTopOffset () {
298			var arr = [];
299			for(var i=0;i < menuCount;i++){
300				arr[i]=$($moveCon.eq(i).children("a").attr("href")).offset().top - $("#header").height();
301			}
302			return arr;
303		}
304		
305		rightBarScroll () ;
306		function rightBarScroll () {
307			var didScroll2;
308			var lastScrollTop2 = 0;
309			var delta2 = 5;
310
311			$(window).scroll(function(event){
312				didScroll2 = true;
313			});
314
315			setInterval(function() {
316				if (didScroll2) {
317					hasScrolled2();
318					didScroll2 = false;
319				}
320			}, 250);
321
322			function hasScrolled2() {
323				var st = $(this).scrollTop();
324				var start = $("#content").offset().top / 3;
325				objectFixed($("#prdRightBar"), start, "fixed"); 
326				$moveCon.each(function  (idx) {
327					if( getScrollTop() >= nav[idx] ){
328						if (!($(this).hasClass('on'))) {
329							$moveCon.removeClass('on');
330							$moveCon.eq(idx).addClass('on');
331						}
332						if (idx == $grayCon) { //idx가 회색글씨있는곳일때 변경
333							$prdRightBar.addClass('gray');
334						}else {
335							$prdRightBar.removeClass('gray');
336						}
337						$prdRightBar.removeClass('bottom');
338					}else if (getScrollTop() >= nav[menuCount-2] + ($($moveCon.eq(menuCount-2).children("a").attr("href")).outerHeight())/2) { // 마지막 낮은 컨텐츠 높이
339						$moveCon.removeClass('on');
340						$moveCon.eq(menuCount-1).addClass('on');
341					};
342				});
343				//footer 닿으면 fixed해제
344				var conHeight =  $("#content").height(); 
345				if (st >= conHeight ) {
346					$prdRightBar.removeClass("fixed");
347					$prdRightBar.addClass("bottom");
348				}else {
349					$prdRightBar.removeClass("bottom");
350				}
351				
352				lastScrollTop = st;
353			}
354		}
355		$moveCon.children("a").click(function  () {
356			var goDiv = $($(this).attr("href")).offset().top + 10 - $("#header").height() ;
357			moveScrollTop(goDiv);
358			return false;
359		});
360
361	}
362	/*
363	if ($.exists('.prd-transducer-icon')) {
364		$('.prd-list').each(function  () {
365			$(this).children('li').each(function  () {
366				var prev = $(this).prev('li').find('.prd-transducer-icon').children('span').length;
367				var next = $(this).next('li').find('.prd-transducer-icon').children('span').length;
368				console.log(prev);
369				if( prev == 0 || next == 0 ) {
370					$(this).find('.prd-transducer-icon').addClass('empty');
371				}else if (prev != 0 && next != 0){
372					$(this).find('.prd-transducer-icon').addClass('empty');
373				}else if (prev == 0 && next == 0){
374					$(this).find('.prd-transducer-icon').removeClass('empty');
375				}
376			})
377		})
378		
379	}*/
380
381	/* 대리점정보 */
382	$(".search-map area").on("mouseenter",function(e){
383		var idx=$(this).index()+1;
384		changeMapImage(idx);
385		$(".search-map").on("mouseleave",function(e){
386			resetMap();
387		});
388	});
389	resetMap();
390	function resetMap () {
391		var area_num = 0;
392		if ( area_num > 0) {
393			changeMapImage(area_num);
394		}else {
395			$("#searchMap").attr({src:"/images/content/map_search.jpg"});   // <!-- ★ 이미지 경로 맞추기 -->
396		}
397	}
398	function changeMapImage (idx) {
399		$("#searchMap").attr({src:"/images/content/map_search"+idx+"_on.jpg"});    // <!-- ★ 이미지 경로 맞추기 -->
400	}
401
402	/* *********************** minisono ************************ */
403	// snb비주얼 높이값 설정
404	if ($.exists('#minisonoVisual')) {
405		mainVisualHeight();
406		$(window).on('resize', mainVisualHeight);
407
408		function mainVisualHeight () {
409			var visual_height = getWindowHeight() - $("#header").height();	// header가 fixed or absolute일경우 - $("#header").height() 삭제
410			$("#minisonoVisual").height(visual_height);
411			if ( getWindowWidth() > 800 ) {
412				$("#minisonoVisual").height(visual_height);
413			}else {
414				$("#minisonoVisual").css("height","auto");
415			}
416		}
417	}
418	function checkOffset (object) {
419		return $(object).offset().top;
420	}
421	/* snb고정 */
422	
423	if ($.exists(".minisono-snb-wrap")) {
424		var $minisonoSnbWrap = $(".minisono-snb-wrap");
425		var $minisonoSnb = $(".minisono-snb-wrap .snb");
426		var $minisonoSnbMenu = $minisonoSnb.find("a");
427		var $moveTabItem = $minisonoSnb.find("li");
428		var menuCount= $moveTabItem.length;
429
430		var fixedHeight  = checkHeaderFixed();
431		var snbOffset = checkOffset ($minisonoSnbWrap);
432		
433		$(window).on('resize', function  () {
434			checkHeaderFixed();
435			checkTopOffset();
436			if ($("#header").hasClass("sub-hidden")){
437				$minisonoSnbWrap.removeClass("up");
438			}
439		}); 
440
441		function checkHeaderFixed () {
442			var fixedStartPoint =  $("#header").height() + $minisonoSnbWrap.height();
443			return fixedStartPoint;
444		}
445
446		// 해당되는 각각의 영역 상단값 측정
447		function checkTopOffset () {
448			nav= new Array();
449			for(var i=0;i < menuCount;i++){
450				nav[i]="nav"+i;
451				nav[i]=$($moveTabItem.eq(i).children("a").attr("href")).offset().top;
452			}
453		}
454
455		$(window).scroll(function  () {
456			objectFixed($minisonoSnbWrap, snbOffset, "fixed");
457			if ( $("#header").hasClass("up")) {
458				$minisonoSnbWrap.addClass("up");
459			}else {
460				$minisonoSnbWrap.removeClass("up");
461			}
462			checkTopOffset();
463			$moveTabItem.each(function  (idx) {
464				var eachOffset = nav[idx] -  fixedHeight;
465				if( getScrollTop() >= eachOffset ){
466					$moveTabItem.removeClass('on');
467					$moveTabItem.eq(idx).addClass('on');
468				};
469			}); 
470
471		});
472		$minisonoSnbMenu.click(function  () {
473			if ( $("#header").hasClass("up")) {
474				var goDiv = $($(this).attr("href")).offset().top + 10 - $minisonoSnbWrap.height() ;
475			}else {
476				var goDiv = $($(this).attr("href")).offset().top + 10 - $minisonoSnbWrap.height() + $("#header").height(); 
477			}
478			
479			moveScrollTop(goDiv);
480			return false;
481		})
482	}
483
484	/* 상단 비주얼 슬라이드 */
485	if ($.exists("#minisonoVisual")) {
486		var $prdMinisonoSlide = $(".minisono-visual-con");
487		$prdMinisonoSlide.slick({
488			slidesToShow: 1,
489			slidesToScroll: 1,
490			arrows: false,
491			fade: true,
492			dots:false,
493			autoplay: true,
494			speed:800,
495			infinite:true,
496			autoplaySpeed: 6000,
497			easing: 'easeInOutQuint',
498			pauseOnHover:false,
499		});
500	}
501
502	/* 동영상 탭 */
503	if ($.exists("#minisonoTopCon")) {
504		var $prdMinisonoSlide = $(".minisono-tab-img");
505		$prdMinisonoSlide.slick({
506			slidesToShow: 1,
507			slidesToScroll: 1,
508			arrows: true,
509			fade: true,
510			dots:false,
511			autoplay: true,
512			speed:800,
513			infinite:true,
514			autoplaySpeed: 6000,
515			easing: 'easeInOutQuint',
516			pauseOnHover:false,
517			prevArrow: '<button type="button" data-role="none" class="slick-prev" aria-label="Prev" tabindex="0" role="button"><i class="xi-angle-left-min"></i></button>',
518			nextArrow: '<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button"><i class="xi-angle-right-min"></i></button>',
519		});
520		$("#minisonoTopCon .cm-tab-list li a").click(function  () {
521			$prdMinisonoSlide.slick("setPosition");
522		});
523
524	}
525	
526	/* 튜토리얼 */
527	if ($.exists(".video-change")) {
528		function minisonoTutorial () {
529			$('.video-change .video-item').click(function  () {
530				var videoCode = $(this).data("video-code");
531				$(this).find(".video-wrap iframe").remove();
532				$(this).find(".video-wrap").html('<iframe width="100%" height="100%" src="https://www.youtube.com/embed/'+videoCode+'?autoplay=1&rel=0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen="" class="img-cover"></iframe>');
533				if (!($(this).hasClass("play"))) {
534					$(this).removeClass("play");
535					$(this).addClass("play");
536				}
537			});
538			
539		}
540		minisonoTutorial ();
541	}
542	
543	/* *********************** 제품 :: Ultrasound XCUBE i9 ************************ */
544	function scrollDisable(){
545		$('body').addClass('scrollDisable').on('scroll touchmove mousewheel', function(e){
546			e.preventDefault();
547		});
548	}
549	function scrollAble(){
550		$('body').removeClass('scrollDisable').off('scroll touchmove mousewheel');
551	}
552	
553	function moveScrollContent (top,scrollState) {
554		var wheel_move;
555		var isPassive = function () {
556			var passiveSupported = false;
557			try {
558			  document.addEventListener("test", null, { get passive() { passiveSupported = true }});
559			} catch(e) {}
560
561			return passiveSupported;
562		}
563		if(wheel_move && wheel_move.progress() < 1){
564			return;
565		}
566		wheel_move = TweenMax.to('html, body', 1, {
567			scrollTop:top,
568			ease: Expo.easeInOutCubic,
569			onComplete : function() {
570				if ( scrollState ) {
571					if (isPassive()) {
572						window.removeEventListener("wheel",scrollStop, {passive: false});
573					} else {
574						$('body').off('scroll touchmove mousewheel', scrollStop);
575					}
576				}
577			}
578		});
579	}
580	/* ***********************
581	* Func : XCUBE i9 architeucture Swiper 갤러리
582	* swiper.js 필요
583	************************ */
584	if ($.exists("#architeuctureCon")) {
585		var architeuctureSwiperLength = $(".architeucture-swiper .swiper-slide").length;
586		var architeuctureSwiper = new Swiper(".architeucture-swiper", {
587			slidesPerView: 1,
588			watchSlidesVisibility: true,
589			freeMode: false,
590			mousewheel: true,
591			on: {
592				slideChange: function() {
593					setTimeout(function () {
594					  architeuctureSwiper.params.touchReleaseOnEdges = false;  
595					  architeuctureSwiper.params.mousewheel.releaseOnEdges = false;
596					});
597				},
598				reachEnd: function() {
599					setTimeout(function () {
600						architeuctureSwiper.params.touchReleaseOnEdges = true;
601						architeuctureSwiper.params.mousewheel.releaseOnEdges = true;
602					}, 500);
603				},
604				reachBeginning: function() {
605					setTimeout(function () {
606						architeuctureSwiper.params.touchReleaseOnEdges = true;
607						architeuctureSwiper.params.mousewheel.releaseOnEdges = true;
608					}, 500);
609				}
610			}
611		});
612		
613	}
614	
615	
616	/* ************************
617	* Func : Assistant 슬라이드
618	* slick.js 필요
619	************************ */
620	if ($.exists("#assistantCon")) {
621		var $prdAssistantSlide = $(".assistant-slide-list");
622		$prdAssistantSlide.slick({
623			slidesToShow: 1,
624			slidesToScroll: 1,
625			arrows: true,
626			fade: false,
627			dots:false,
628			autoplay: true,
629			speed:800,
630			infinite:true,
631			autoplaySpeed: 3000,
632			centerMode: true,
633			centerPadding: '50px',
634			easing: 'easeInOutQuint',
635			pauseOnHover:false,
636			prevArrow: '<button type="button" data-role="none" class="slick-prev end" aria-label="Prev" tabindex="0" role="button"><i class="xi-angle-left-thin"></i></button>',
637			nextArrow: '<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button"><i class="xi-angle-right-thin"></i></button>',
638		});
639	}
640	
641	
642	/* ************************
643	* Func : product 슬라이드
644	* slick.js 필요
645	************************ */
646	function sliderSet(xci9Slickwrap, xci9Slickfor,xci9Slickarrows){
647		xci9Slickfor.slick({
648			slidesToShow: 2,
649			slidesToScroll: 1,
650			arrows: true,
651			fade: false,
652			dots:false,
653			autoplay: false,
654			speed:400,
655			infinite:false,
656			easing: 'easeInOutQuint',
657			appendArrows:xci9Slickarrows,
658			prevArrow: '<button type="button" data-role="none" class="slick-prev" aria-label="Prev" tabindex="0" role="button"><i class="xi-angle-left"></i></button>',
659			nextArrow: '<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button"><i class="xi-angle-right"></i></button>',
660			responsive: [
661				{
662				  breakpoint: 801,
663				  settings: {
664					slidesToShow: 1,
665				  }
666				},
667			],
668		});
669		
670		/*var isscroll = true;
671		$(window).on("resize",function  () {
672			if (getWindowWidth() > 1280) {
673				xci9ScrollEvent ();
674			}
675		});
676		$(window).on("load",function  () {
677			if (getWindowWidth() > 1280) {
678				xci9ScrollEvent ();
679			}
680		})
681		
682		function xci9ScrollEvent () {
683			xci9Slickwrap.on('wheel', (function(e) {
684				e.preventDefault();
685				var ConOffset = $(this).offset().top;
686				if (isscroll == true){
687					isscroll = false;
688					if (e.originalEvent.deltaY < 0) {
689						if ($(this).find('.prd-xci9-inner-slide').find('.slick-active').hasClass('first')){
690							moveScrollTop(ConOffset - getWindowHeight () , 500);
691						}else {
692							$(this).find('.prd-xci9-inner-slide').slick('slickPrev');
693							moveScrollTop(ConOffset , 500);
694						}
695					} else {
696						if ($(this).find('.prd-xci9-inner-slide').find('.slick-active').hasClass('last')){
697							moveScrollTop(ConOffset + getWindowHeight () , 500);
698						}else {
699							$(this).find('.prd-xci9-inner-slide').slick('slickNext');
700							moveScrollTop(ConOffset , 500);
701						}
702					}
703				}
704				setTimeout(function(){isscroll = true;},300)
705				
706				return false;
707			}));
708		}*/
709	};
710
711					
712	$('.prd-xci9-slide-wrap').each(function(i,el){ 
713		i+=1;	
714		var xci9Slickwrap = $(el).addClass('wrap'+ i) 
715		var xci9Slickfor = $(el).find('.prd-xci9-inner-slide').addClass('for'+ i) 
716		var xci9Slickarrows = $(el).find('.prd-xci9-inner-arrows').addClass('arrow'+ i)
717		sliderSet(xci9Slickwrap, xci9Slickfor,xci9Slickarrows);
718	});
719	
720	/* ************************
721	* Func : product 슬라이드
722	* slick.js 필요
723	************************ */
724	function sliderSetWide(prdWideSlickwrap, prdWideSlickfor, prdWideSlickarrows){
725		prdWideSlickfor.slick({
726			slidesToShow: 2,
727			slidesToScroll: 1,
728			variableWidth: true,
729			arrows: true,
730			fade: false,
731			dots:false,
732			autoplay: false,
733			speed:400,
734			infinite:false,
735			easing: 'easeInOutQuint',
736			appendArrows:prdWideSlickarrows,
737			prevArrow: '<button type="button" data-role="none" class="slick-prev" aria-label="Prev" tabindex="0" role="button"><i class="xi-angle-left"></i></button>',
738			nextArrow: '<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button"><i class="xi-angle-right"></i></button>',
739			responsive: [
740				{
741				  breakpoint: 801,
742				  settings: {
743					slidesToShow: 1,
744				  }
745				},
746			],
747		});
748		
749	}
750
751					
752	$('.prd-wide-slide-wrap').each(function(i,el){ 
753		i+=1;	
754		var prdWideSlickwrap = $(el).addClass('wrap-wide'+ i) 
755		var prdWideSlickfor = $(el).find('.prd-wide-inner-slide').addClass('for-wide'+ i) 
756		var prdWideSlickarrows = $(el).find('.prd-wide-inner-arrows').addClass('arrow-wide'+ i)
757		sliderSetWide(prdWideSlickwrap, prdWideSlickfor,prdWideSlickarrows);
758	})
759
760	
761
762	/* *********************** 에디터 관련 ************************ */
763	if ($.exists(".editor")) {
764		/* 테이블 스크롤넣기 */ 
765		$(".editor table").each(function  () {
766			$(this).wrap("<div class='editor-table-box'></div>");
767		});
768		
769		/* iframe 태그 감싸기 */ 
770		$(".editor iframe").each(function  () {
771			var iframeSrc = $(this).attr("src");
772			var findStr = "https://www.youtube.com/embed"; 
773
774			if (iframeSrc.indexOf(findStr) != -1) {
775			  $(this).wrap("<div class='editor-iframe-box'></div>");
776			}
777		});
778		
779		/* 테이블 스크롤넣기 */ 
780		$(".editor img").each(function  () {
781			$(this).css({'height':'auto'})
782		});
783		
784	}
785	
786	if ($.exists(".prd-xc90-fit-img")) {
787		
788		$(".prd-xc90-fit-img").twentytwenty({
789			no_overlay: true, // label remove
790		});
791		
792	}
793	
794	/* *********************** 
795	* AI 슬라이드 추가 2026-03-31
796	************************ */
797	if ($.exists(".prd-ai-slide-wrap")) {
798		var $prdViewAISlide = $(".prd-ai-slide-wrap").find(".prd-ai-slide");
799		$prdViewAISlide.slick({
800			slidesToShow: 1,
801			slidesToScroll: 1,
802			arrows: true,
803			appendArrows:'.prd-ai-slide-arrows',
804			fade: false,
805			dots:true,
806			appendDots:'.prd-ai-slide-dots',
807			autoplay: false,
808			speed:800,
809			infinite:true,
810			autoplaySpeed: 3000,
811			easing: 'easeInOutQuint',
812			pauseOnHover:false,
813			prevArrow: '<button type="button" data-role="none" class="slick-prev" aria-label="Prev" tabindex="0" role="button"><i class="xi-angle-left-min"></i></button>',
814			nextArrow: '<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button"><i class="xi-angle-right-min"></i></button>',
815		});
816	}
817});
818
819
820$(window).on('load',function  () {	
821	if ($.exists(".minisono-page")) {
822		$(".sub-wrap").addClass("minisono-wrap");
823	}
824	/* *********************** 리스트의 높이값 맞추기 ************************ */
825	$(".auto-height-list-con").each(function  () {
826		var $autoList = $(this).find(".auto-height-item");	// ul > li
827		var $autoListInner = $autoList.find(".inner-box");	 // ul > li 안에 높이값을 넣는영역
828		var heightDiv = ".inner";				// 높이값을 결정하는 영역		
829		var listNum = $autoList.length;			
830		var resetWidth = $(this).data("reset-width") ; // 높이값을 해제하는 구간
831		
832		autoHeight();
833		$(window).on('resize', autoHeight);
834
835		function  autoHeight(){
836			maxHeight = 0;
837			for (var i=0; i<listNum; i++) {
838				var curHeight = $autoList.eq(i).find(heightDiv).innerHeight();
839				if ( curHeight > maxHeight ) {
840					maxHeight = curHeight;
841				}
842			}
843			//console.log(maxHeight);
844			$autoListInner.height(maxHeight);
845			
846			if ( getWindowWidth() < resetWidth + 1 ){
847				$autoListInner.css('height','auto');
848			}
849		}
850	});
851
852	
853});

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.