https://2p4c.tw/wp-includes/js/jquery/jquery.min.js
https://2p4c.tw/wp-includes/js/jquery/jquery-migrate.min.js
(function() {
if (window.location.pathname.startsWith('/en/')) {
var topBar = document.getElementById('p4c-top-bar');
if (topBar) topBar.style.display = 'none';
}
})();
(function () {
var BASE = 'https://affiliate.klook.com/redirect?aid=5797&aff_adid=1245259&k_site=';
var DATA = {
updateMonth: '2026年4月',
top3: [
{ rank: 1, badge: 'BEST VALUE', name: '環球影城 Studio Pass', desc: '現折 JPY 3,000!無門檻,4/30 截止。', code: 'SPRINGUSJ', url: BASE + encodeURIComponent('https://www.klook.com/zh-TW/activity/835-universal-studios-japan-ticket-osaka/') },
{ rank: 2, badge: 'LIMITED FLASH', name: '賞櫻紅包 $3,000', desc: '4/3 限定領取,現折 NT$3,000 驚喜券。', code: '0403ALL3000', url: BASE + encodeURIComponent('https://www.klook.com/zh-TW/') },
{ rank: 3, badge: 'APP ONLY', name: '首購飯店 95 折', desc: '限 Klook App 首次訂房,隨時可用。', code: 'HOTELONAPP', url: BASE + encodeURIComponent('https://www.klook.com/zh-TW/hotels/') }
],
transport: [
{ badge: 'EARLY BIRD', target: '日本一日遊', desc: '富士山/天橋立等行程', discount: '8', unit: '折', code: 'JPTOUR20OFF', url: BASE + encodeURIComponent('https://www.klook.com/zh-TW/') },
{ badge: 'EU TRANSIT', target: '歐洲交通', desc: '滿 USD180 即可折抵', discount: '95', unit: '折', code: 'SPRINGEUMOB', url: BASE + encodeURIComponent('https://www.klook.com/zh-TW/') }
],
creditCards: [
{ name: '國泰 CUBE 卡', desc: '日本商品 88 折', code: 'CUBEJP268804', note: '至 4/30', url: BASE + encodeURIComponent('https://www.klook.com/zh-TW/') },
{ name: '玉山銀行', desc: '飯店滿 $6000 折 $600', code: 'ESUNHOT60004', note: '至 4/30', url: BASE + encodeURIComponent('https://www.klook.com/zh-TW/hotels/') },
{ name: '星展銀行', desc: '全站滿 $3000 折 $450', code: 'DBS2645004', note: '至 4/30', url: BASE + encodeURIComponent('https://www.klook.com/zh-TW/') },
{ name: 'VISA 卡友', desc: '海外商品 92 折', code: 'VISA269204', note: '至 4/30', url: BASE + encodeURIComponent('https://www.klook.com/zh-TW/') }
]
};function copyAndGo(code, url, btn) {
var original = btn.textContent;
navigator.clipboard.writeText(code).then(function () {
btn.textContent = 'COPIED & REDIRECTING...';
btn.style.cssText += 'background:#2a3439!important;color:#F4C842!important;';
setTimeout(function () {
window.open(url, '_blank', 'noopener,noreferrer');
btn.textContent = original;
btn.style.background = '';
btn.style.color = '';
}, 500);
}).catch(function () { window.open(url, '_blank', 'noopener,noreferrer'); });
}// Render Logic
document.getElementById('kl-date').textContent = DATA.updateMonth;
var top3Grid = document.getElementById('kl-top3-grid');
DATA.top3.forEach(function (item) {
var card = document.createElement('div');
card.className = 'kl-top3-card';
card.innerHTML = '<div class="kl-rank-num">' + item.rank + '</div><span class="kl-badge-mini">' + item.badge + '</span><h3>' + item.name + '</h3><p>' + item.desc + '</p>';
var btn = document.createElement('button');
btn.className = 'kl-copy-btn';
btn.textContent = 'COPY CODE: ' + item.code;
btn.onclick = function() { copyAndGo(item.code, item.url, btn); };
card.appendChild(btn);
top3Grid.appendChild(card);
});var transGrid = document.getElementById('kl-trans-grid');
DATA.transport.forEach(function (item) {
var card = document.createElement('div');
card.className = 'kl-card-item';
card.innerHTML = '<div class="kl-discount-val"><span class="num">' + item.discount + '</span><span class="unit">' + item.unit + '</span></div><div class="kl-card-info"><h4>' + item.target + '</h4><p>' + item.desc + '</p></div>';
var btn = document.createElement('button');
btn.className = 'kl-copy-btn';
btn.style.width = '120px';
btn.textContent = item.code;
btn.onclick = function() { copyAndGo(item.code, item.url, btn); };
card.appendChild(btn);
transGrid.appendChild(card);
});var tbody = document.getElementById('kl-table-body');
DATA.creditCards.forEach(function (item) {
var tr = document.createElement('tr');
tr.innerHTML = '<td><strong>' + item.name + '</strong></td><td style="color:#2a3439;font-weight:700">' + item.desc + '</td><td><button class="kl-tbl-btn">' + item.code + '</button></td><td>' + item.note + '</td>';
tr.querySelector('button').onclick = function() { copyAndGo(item.code, item.url, this); };
tbody.appendChild(tr);
});
})();
(function () {
// FAQ Data
var faqs = [
{ q: 'Klook 折扣碼要在哪裡輸入?', a: '在 Klook 結帳頁面,點選「輸入優惠碼」欄位,貼上折扣碼後按「套用」即可反映在總金額。' },
{ q: '折扣碼顯示「不適用」怎麼辦?', a: '常見原因包含:該碼已過期、商品不在適用範圍、或您的帳號已使用過同一優惠。' },
{ q: 'App 專屬碼和網頁版有差嗎?', a: '有差。部分折扣碼僅限 App 使用,App 內的專屬活動通常能提供更高的折扣力道。' }
];var faqContainer = document.getElementById('kls-faq-render');
faqs.forEach(function (item) {
var el = document.createElement('div');
el.className = 'kls-faq-item';
el.innerHTML = '<button class="kls-faq-q">' + item.q + '<span class="kls-faq-icon">+</span></button>' +
'<div class="kls-faq-a"><div class="kls-faq-a-inner">' + item.a + '</div></div>';
el.querySelector('.kls-faq-q').onclick = function() { el.classList.toggle('open'); };
faqContainer.appendChild(el);
});// Related Data
var related = [
{ icon: '🇯🇵', title: '大阪勝尾寺攻略', desc: '門票、交通巴士完整整理', href: 'https://2p4c.tw/world/japan-travel/%E5%A4%A7%E9%98%AA%E6%99%AF%E9%BB%9E%E5%8B%9D%E5%B0%BE%E5%AF%BA/' },
{ icon: '🌊', title: '福岡糸島一日遊', desc: '最美海岸線與咖啡廳指南', href: 'https://2p4c.tw/world/itoshima-shi/' },
{ icon: '🚢', title: '越南下龍灣攻略', desc: '郵輪路線與天數建議', href: 'https://2p4c.tw/world/halongbay/' },
{ icon: '🏜️', title: '美國羚羊峽谷', desc: '訂票、拍照與防雷提醒', href: 'https://2p4c.tw/world/%e7%be%9a%e7%be%8a%e5%b3%bd%e8%b0%b7/' }
];var relatedContainer = document.getElementById('kls-related-render');
related.forEach(function (item) {
var a = document.createElement('a');
a.className = 'kls-related-card';
a.href = item.href;
a.innerHTML = '<span class="kls-related-icon">' + item.icon + '</span><div><span class="kls-related-title">' + item.title + '</span><p class="kls-related-desc">' + item.desc + '</p></div>';
relatedContainer.appendChild(a);
});
})();
document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() );
document.addEventListener('DOMContentLoaded', function() {var links = document.querySelectorAll('link[rel="alternate"][hreflang]');
var targetUrl = null;
var targetText = null;var isEnglish = window.location.pathname.indexOf('/en/') !== -1;
var currentLang = isEnglish ? 'en' : 'zh-TW';links.forEach(function(link) {
var lang = link.getAttribute('hreflang');
var href = link.getAttribute('href');
if (!href || lang === 'x-default') return;if (currentLang === 'zh-TW' && lang === 'en') {
targetUrl = href;
targetText = 'EN';
} else if (currentLang === 'en' && (lang === 'zh-TW' || lang === 'zh')) {
targetUrl = href;
targetText = '中';
}
});if (!targetUrl) return;var btn = document.createElement('a');
btn.className = 'p4c-lang-float';
btn.href = targetUrl;
btn.title = currentLang === 'zh-TW' ? 'Read in English' : '閱讀中文版本';
btn.textContent = targetText;
btn.style.display = 'flex';document.body.appendChild(btn);
});
function genesisBlocksShare( url, title, w, h ){
var left = ( window.innerWidth / 2 )-( w / 2 );
var top = ( window.innerHeight / 2 )-( h / 2 );
return window.open(url, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=600, height=600, top='+top+', left='+left);
}
var ConverlyCustomData = {channelId: null};
const loadScriptsTimer=setTimeout(loadScripts,5*1000);const userInteractionEvents=['click', 'mousemove', 'keydown', 'touchstart', 'touchmove', 'wheel'];userInteractionEvents.forEach(function(event){window.addEventListener(event,triggerScriptLoader,{passive:!0})});function triggerScriptLoader(){loadScripts();clearTimeout(loadScriptsTimer);userInteractionEvents.forEach(function(event){window.removeEventListener(event,triggerScriptLoader,{passive:!0})})}
function loadScripts(){document.querySelectorAll("script[data-type='lazy']").forEach(function(elem){elem.setAttribute("src",elem.getAttribute("data-src"))})}
var rtocScrollAnimation = {"rtocScrollAnimation":"on"};
var rtocBackButton = {"rtocBackButton":"off"};
var rtocBackDisplayPC = {"rtocBackDisplayPC":""};
var rtocOpenText = {"rtocOpenText":"OPEN"};
var rtocCloseText = {"rtocCloseText":"CLOSE"};
//# sourceURL=rtoc_js-js-extra
https://2p4c.tw/wp-content/plugins/rich-table-of-content/js/rtoc_common.js
https://2p4c.tw/wp-content/plugins/rich-table-of-content/js/rtoc_scroll.js
https://2p4c.tw/wp-content/plugins/rich-table-of-content/js/rtoc_highlight.js
https://2p4c.tw/wp-content/plugins/genesis-blocks/dist/assets/js/dismiss.js
https://2p4c.tw/wp-content/plugins/breeze/assets/js/js-front-end/breeze-lazy-load.min.js
function breezeInitLazyLoad() {
window.lazyLoadInstance = new LazyLoad({
elements_selector: ".br-lazy",
data_src: "breeze",
data_srcset: "brsrcset",
data_sizes: "brsizes",
class_loaded: "br-loaded",
threshold: 300,
});
}
if (document.readyState === "loading") {
document.addEventListener("DOMContentLoaded", breezeInitLazyLoad);
} else {
breezeInitLazyLoad();
}
//# sourceURL=breeze-lazy-js-after
var csLocalize = {"siteSchemeMode":"light","siteSchemeToogle":""};
//# sourceURL=csco-scripts-js-extra
https://2p4c.tw/wp-content/themes/swyft/assets/js/scripts.js
https://2p4c.tw/wp-content/themes/swyft/assets/static/js/comment-reply.js
https://2p4c.tw/wp-content/plugins/akismet/_inc/akismet-frontend.js
window.addEventListener("DOMContentLoaded",(e=>{document.querySelectorAll('img[loading="lazy"]').forEach((e=>{e.getBoundingClientRect().top<=window.innerHeight&&(e.loading="eager")}))}));
const loadScriptsTimer=setTimeout(loadScripts,5*1000);const userInteractionEvents=["mouseover","keydown","touchstart","touchmove","wheel"];userInteractionEvents.forEach(function(event){window.addEventListener(event,triggerScriptLoader,{passive:!0})});function triggerScriptLoader(){loadScripts();clearTimeout(loadScriptsTimer);userInteractionEvents.forEach(function(event){window.removeEventListener(event,triggerScriptLoader,{passive:!0})})}function loadScripts(){document.querySelectorAll("script,iframe[data-type='lazy']").forEach(function(elem){elem.setAttribute("src",elem.getAttribute("data-src"))})}
document.addEventListener("DOMContentLoaded", function () {
const firstSlideImg = document.querySelector(
".cs-hero-type-1_item[data-swiper-slide-index='0'] img"
);if (firstSlideImg) {
firstSlideImg.loading = "eager"; // 讓它成為優先載入圖
firstSlideImg.decoding = "async";
firstSlideImg.removeAttribute("loading"); // 確保 lazy 被移除
}
});