PageSourceSearch

https://busansinbo.or.kr/common/js/common/layerPopupzoneHelper.js?v=260928

js busansinbo.or.kr collected 2026-10-05 06:06:18 UTC 5,946 bytes, 165 lines download raw bytes

1/**
2 * 레이어 팝업존 관련 스크립트
3 *
4 * @author ryeon
5 * @since 2020. 04. 21. *
6 */
7
8var today = new Date();
9
10$(document).ready(function() {
11	clearExpiredLocalStorage();
12	showLayerpopupzone();
13
14	$("[type=checkbox][name^=nomoretoday]").click(function () {
15		var $container = $(this).closest("[data-layer-index]");
16		var index = $container.data("layer-index");
17		var hiddenLayersInfo = localStorage.getItem("hiddenLayersInfo");
18		if (hiddenLayersInfo) {
19			hiddenLayersInfo = JSON.parse(hiddenLayersInfo);
20			hiddenLayersInfo.push({ layerIdx: index, day: getDayKey(today) });
21			localStorage.setItem("hiddenLayersInfo", JSON.stringify(hiddenLayersInfo));
22		} else {
23			localStorage.setItem("hiddenLayersInfo", JSON.stringify([{ layerIdx: index, day: getDayKey(today) }]));
24		}
25	});
26});
27
28function clearExpiredLocalStorage() {
29	var hiddenLayersInfo = localStorage.getItem("hiddenLayersInfo");
30	if (hiddenLayersInfo) {
31		hiddenLayersInfo = JSON.parse(hiddenLayersInfo);
32
33		var notExpired = hiddenLayersInfo.filter(function (e, i) { return e.day == getDayKey(today) });
34		if (notExpired != undefined && notExpired != null && notExpired.length > 0) {
35			localStorage.setItem("hiddenLayersInfo", JSON.stringify(notExpired));
36		} else {
37			localStorage.removeItem("hiddenLayersInfo");
38		}
39	}
40}
41
42function showLayerpopupzone() {
43	var hiddenLayersInfo = localStorage.getItem("hiddenLayersInfo");
44	if (hiddenLayersInfo) {
45		hiddenLayersInfo = JSON.parse(hiddenLayersInfo);
46		if (hiddenLayersInfo) {
47			var hiddenLayerIdxs = $(hiddenLayersInfo)
48				.map(function () { return this.layerIdx; })
49				.get();
50			$("[id^=layerpopupzoneContainer]")
51				.filter(function () {
52					return hiddenLayerIdxs.indexOf($(this).data("layer-index")) == -1;
53				})
54				.show();
55		} else {
56			$("[id^=layerpopupzoneContainer]").show();
57		}
58	} else {
59		$("[id^=layerpopupzoneContainer]").show();
60	}
61}
62
63function getDayKey(day) {
64	return day.getMonth() + "/" + day.getDate();
65}
66
67// ===============================
68// 메인 레이어 팝업
69// ===============================
70
71//const layerPopupItems = [
72//  {
73//    img: `${mainImgURL}/popup-01.png`,
74//    alt: "2023년 지역신용보증재단 보증지원 수기공모 : 지역신용보증재단 보증지원을 통해 경영위기를 견디고 이겨냈던 소기업 소상공인 여러분의 진솔한 이야기를 들려주세요. 공모기간 : 2023년 7월 10일부터 2023년 9월 22일",
75//  },
76//  {
77//    img: `${mainImgURL}/popup-02.jpg`,
78//    alt: "함께 만드는 모두의 일상이 안전한 대한민국: 국가안전시스템 개편 종합대책 - 행정안전부 주관",
79//  },
80//  {
81//    img: `${mainImgURL}/popup-03.jpg`,
82//    alt: "2023년도 중소기업 지원시책 부산광역시 주관",
83//  },
84//  {
85//    img: `${mainImgURL}/popup-04.jpg`,
86//    alt: "부산과 남부권의 새로운 미래 100년! 가덕도신공항 조기 개항 부산광역시 주관",
87//  },
88//  {
89//    img: `${mainImgURL}/popup-05.jpg`,
90//    alt: "새로운 X4를 원해? 2030부산세계박람회 : 대한민국 첫번째 월드클래스 엑스포",
91//  },
92//];
93//
94//layerPopupItems.map((item, i) => {
95//  const slideCont = document.createElement("div");
96//  slideCont.classList.add("swiper-slide");
97//  slideCont.innerHTML = `
98//    <a key=${i} class="layer_popup-slide">
99//      <img src="${item.img}" alt="${item.alt}" />
100//    </a>
101//  `;
102//  document.querySelector(".layer_popup-wrapper").append(slideCont);
103//}); 
104$(document).ready(function() {
105	  const layerPopup = new Swiper(".layer_popup .inner", {
106	    slidesPerView: 1,
107	    loop: true,
108	    autoplay: {
109	      delay: 3000,
110	      disableOnInteraction: false,
111	    },
112	    pagination: {
113	      el: ".layer_popup .swiper-pagination",
114	      type: "fraction",
115	    },
116	    navigation: {
117	      nextEl: ".layer_popup .swiper-button-next",
118	      prevEl: ".layer_popup .swiper-button-prev",
119	    },
120	  });
121	  $("#btnSwLayerPopupPlay").on("click", function () {
122	    layerPopup.autoplay.start();
123	  });
124	  $("#btnSwLayerPopupPause").on("click", function () {
125	    layerPopup.autoplay.stop();
126	  });
127	  $("#btnSwLayerPopupPause").click(function () {
128	    $("#btnSwLayerPopupPause").removeClass("active");
129	    $("#btnSwLayerPopupPlay").addClass("active");
130	  });
131	  $("#btnSwLayerPopupPlay").click(function () {
132	    $("#btnSwLayerPopupPlay").removeClass("active");
133	    $("#btnSwLayerPopupPause").addClass("active");
134	  });
135	
136	const elLayerPopup = document.querySelector(".layer_popup");
137	const btnCloseLayerPopup = document.querySelector("#closeLayerPopup");
138});
139
140$(document).ready(function () {
141    $(".layer_popup .btn_close").click(function () {
142        // 셀렉트 박스 체크 여부 확인
143        var dontShowMeAgainTodayLayerChecked = $("[name='dontShowMeAgainTodayLayer']").is(":checked");
144        // 사용자가 확인을 선택한 경우에만 쿠키에 정보 저장
145        if (dontShowMeAgainTodayLayerChecked) {
146            // 오늘 날짜를 가져옴
147            var today = new Date();
148            // 오늘 날짜를 문자열로 변환하여 쿠키의 만료 날짜로 설정
149            var expires = new Date(today);
150            // 쿠키를 하루 동안 유지하도록 설정
151            expires.setDate(today.getDate() + 1);
152            // 쿠키 이름 설정
153            var cookieName = location.pathname.indexOf("/finance") === 0 ? "financePopupClosedStatus" : "popupClosedStatus";
154            // 쿠키 값 설정
155            var cookieValue = "true";
156            // 쿠키에 저장
157            document.cookie = cookieName + "=" + cookieValue + "; expires=" + expires.toUTCString() + "; path=/";
158            console.log("Popup closed status saved successfully.");
159        }
160        $(".layer_popup").hide();
161        return false;
162    });
163});
164
165

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.