PageSourceSearch

https://www.iporkcut.com.tw/

html iporkcut.com.tw collected 2026-10-07 20:43:08 UTC 124,869 bytes, 2,944 lines download raw bytes

1<!DOCTYPE html><html class="no-js" lang="zh-TW" prefix="og: https://ogp.me/ns# fb: https://ogp.me/ns/fb# website: https://ogp.me/ns/website#"> <head> <base href="https://www.iporkcut.com.tw/" /> <meta charset="utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1" /> <meta http-equiv='x-dns-prefetch-control' content='on'> <meta name="author" content="愛不是手★愛的是脆片肉乾"> <meta name="copyright" content="愛不是手★愛的是脆片肉乾"> <meta name="google" content="notranslate" /> <meta name="mobile-web-app-capable" content="yes"> <meta name="theme-color" content="#f5f5f5"> <link rel="preconnect" href="//cdn.qdm.cloud" /> <link rel="preconnect" href="//image-cdn-flare.qdm.cloud" /> <link rel="preconnect" href="//image-cdn.qdm.cloud" /> <link rel="preconnect" href="//www.facebook.com" /> <link rel="preconnect" href="//connect.facebook.net" /> <link rel="preconnect" href="//ajax.googleapis.com" /> <link rel="dns-prefetch" href="//ajax.googleapis.com" /> <link rel="dns-prefetch" href="//image-cdn-flare.qdm.cloud" /> <link rel="dns-prefetch" href="//image-cdn.qdm.cloud" /> <link rel="dns-prefetch" href="//cdn.qdm.cloud" /> <link rel="dns-prefetch" href="//fonts.googleapis.com" /> <link rel="dns-prefetch" href="//www.google-analytics.com" /> <link rel="dns-prefetch" href="//www.googletagmanager.com" /> <link rel='dns-prefetch' href="//www.google.com" /> <link rel='dns-prefetch' href="//www.google.com.tw" /> <link rel='dns-prefetch' href="//maxcdn.bootstrapcdn.com" /> <link rel='dns-prefetch' href="//cdnjs.cloudflare.com" /> <link rel='dns-prefetch' href="//www.facebook.com" /> <link rel='dns-prefetch' href="//connect.facebook.net" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title itemprop='name'>愛不是手★愛的是脆片肉乾</title> <meta name="description" content="這不只是肉乾的故事,更是台灣女性用雙手在傳統產業撐起一片天的故事!" /> <meta property="og:description" content="這不只是肉乾的故事,更是台灣女性用雙手在傳統產業撐起一片天的故事!" /> <link href="https://www.iporkcut.com.tw/" rel="canonical" itemprop="url"> <!-- FACESPACE --> <meta property="fb:app_id" content="162172840650014" /> <meta property="og:title" content="愛不是手★愛的是脆片肉乾"/> <meta property="og:type" content="website"/> <meta property="og:url" content="https://www.iporkcut.com.tw/"/> <meta property="og:locale" content="zh_TW" /> <meta property="og:image" content="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2018/09/26/1e97bc46691f1b39b1763c3dd3aca3c3.jpg"/> <meta property="og:image:url" content="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2018/09/26/1e97bc46691f1b39b1763c3dd3aca3c3.jpg"/> <meta property="og:site_name" content="愛不是手★愛的是脆片肉乾"> <meta property="og:updated_time" content="1791405788"> <!-- Twitter Card --> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:title" content="愛不是手★愛的是脆片肉乾"> <meta name="twitter:description" content="這不只是肉乾的故事,更是台灣女性用雙手在傳統產業撐起一片天的故事!"> <meta name="twitter:image" content="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2018/09/26/1e97bc46691f1b39b1763c3dd3aca3c3.jpg"> <!-- llms.txt --> <link rel="llms-txt" href="/llms.txt" /> <!-- G++ --> <meta itemprop="name" content="愛不是手★愛的是脆片肉乾"> <meta itemprop="description" content="這不只是肉乾的故事,更是台灣女性用雙手在傳統產業撐起一片天的故事!"> <meta itemprop="image" content="//image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2018/09/26/1e97bc46691f1b39b1763c3dd3aca3c3.jpg"> <link title='愛不是手★愛的是脆片肉乾 - 訂閱商品快訊RSS' href="https://www.iporkcut.com.tw/googlebase.xml" type='application/rss+xml' rel='alternate' > <!-- Google's Sitelinks Search --> 
1<script type="application/ld+json">
2	{
3		"@context": "https://schema.org",
4		"@type": "WebSite",
5		"name" : "愛不是手★愛的是脆片肉乾",
6		"url": "https://www.iporkcut.com.tw/",
7		"potentialAction": {
8			"@type": "SearchAction",
9			"target": {
10				"@type": "EntryPoint",
11				"urlTemplate": "https://www.iporkcut.com.tw/search?q={filter_name}"
12			},
13			"query-input": "required name=filter_name"
14		}
15	}
16	</script>
16 <!-- Organization / LocalBusiness Schema --> 
16<script type="application/ld+json">
17	{
18    "@context": "https:\/\/schema.org",
19    "@type": "Organization",
20    "name": "愛不是手★愛的是脆片肉乾",
21    "url": "https:\/\/www.iporkcut.com.tw\/",
22    "logo": "https:\/\/image-cdn-flare.qdm.cloud\/q6a5dd2e0d87d6\/image\/data\/2018\/09\/26\/1e97bc46691f1b39b1763c3dd3aca3c3.jpg",
23    "email": "[email protected]",
24    "sameAs": [
25        "https:\/\/www.facebook.com\/iporkcut"
26    ],
27    "image": "https:\/\/image-cdn-flare.qdm.cloud\/q6a5dd2e0d87d6\/image\/data\/2018\/09\/26\/1e97bc46691f1b39b1763c3dd3aca3c3.jpg"
28}	</script>
28 
28<script type="text/javascript">
29(function(c,l,a,r,i,t,y){
30c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
31t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
32y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
33})(window, document, "clarity", "script", "99n8zhelys");
34</script>
34 <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 68 bytes, lines 34-35
34 <script async
35				src="https://www.googletagmanager.com/gtag/js?id=
35G-8CRMWS8GBK
vendor: 12 bytes, line 35
35"></script> 
35<script>
36			
vendor: 141 bytes, lines 36-40
36window.dataLayer = window.dataLayer || [];
37			function gtag(){dataLayer.push(arguments);}
38			gtag('js', new Date());
39
40							gtag('config', "
40G-8CRMWS8GBK
vendor: 40 bytes, lines 40-42
40", { send_page_view: false });
41			
42					
42</script>
42 
42<script>
43
44				var enhanced_conversion_data = {};
45				var ga_userId = null;
46		var ga_userId_global = null;
47		var qdm_user_uuid = "q6a5dd2e0d87d6-n9r62fhh3kharpsv35qoouuqb5";
48		var helperga4 = null;
49		var xmlhttp_uinfo = new XMLHttpRequest();
50		xmlhttp_uinfo.open('GET', "https://www.iporkcut.com.tw/index.php?route=common/header/getLoggedInUserInfo&token=" + new Date().getTime() + "1" + (Math.floor(Math.random() * 999) + 100) , true);
51		xmlhttp_uinfo.onreadystatechange = function() {
52			if (xmlhttp_uinfo.readyState == 4) {
53				if(xmlhttp_uinfo.status == 200) {
54					try {
55						var obj = JSON.parse(xmlhttp_uinfo.responseText);
56						ga_userId = obj.user_id;
57						if( obj.email ) {
58							enhanced_conversion_data.email = obj.email;
59													}
60					} catch (e) { }
61				 }
62			}
63		};
64		xmlhttp_uinfo.send(null);
65
66		try {
67			if ('localStorage' in window && window['localStorage'] !== null){
68				if( localStorage.getItem('qdm_user_uuid') && qdm_user_uuid == null ) {
69					qdm_user_uuid = localStorage.getItem('qdm_user_uuid');
70				}
71			}
72		} catch (e) {}
73		window.addEventListener("beforeunload", () => localStorage.removeItem('qdm_user_uuid'));
74
75		function QUUID(){var x=(new Date).getTime(),t="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){const n=(x+16*Math.random())%16|0;return x=Math.floor(x/16),("x"==t?n:3&n|8).toString(16)});return "q6a5dd2e0d87d6"+t;}
76		var dateTime = Date.now();
77		var timestamp = Math.floor(dateTime / 1000);
78		var global_quuid = QUUID();
79		//var global_quuid = "q6a5dd2e0d87d6" + Math.random().toString(13).substr(2, 9) + "" + timestamp + "" + new Date().getTime();
80		var global_product_id = 0;
81		var ecommCheckoutTotal = 0;
82		var gecommProduct = new Array("0");
83				var gecommProductName = '';
84		var gecommProductSKU = '';
85		var gecommProductDesc = '';
86		var gecommProductBrand = '';
87		var gecommProductBrand_cyntelli = '';
88		var gecommProductCategoryPath = '';
89		var gecommProductCategoryWithComma = '';
90		var gecommProductPrice = 0;
91		var gecommCompareAtPrice = 0;
92		var gecommProductImageUrl = "";
93		var gecommProductUrl = "";
94				var gecommViewCategoryName = '';
95		var gecommViewFullCategoryName = '';
96		var gecommProductToCart = {};
97		var ecommOrderToCheckout = {};
98				dataLayer.push({
99			'pageCategory': 'signup',
100			'visitorType': 'high-value'
101		});
102
103				var customer_id = '0';
104		if(customer_id>0){
105			if( ga_userId !== null ) {
106				ga_userId = customer_id;
107			}
108		}
109
110		var ga_utm_source = null;
111		var toggleVisible = function(id){
112			var el = document.getElementById(id);
113			if( el !== null ) { el.style.visibility = "visible"; }
114		};
115		
116	</script>
116 
116<script id="google-ga-event-track" type="text/javascript">
117
118		var track_google_ga_trigger = 0;
119
120		setTimeout(function(){
121
122			if( ga_userId !== null ) {
123				ga_userId_global = "q6a5dd2e0d87d6_" + ga_userId;
124
125				dataLayer.push({
126					'event': 'data',
127					'UID': ga_userId
128				});
129				window.adGeek_d = {
130					'memberId': ga_userId
131				};
132
133				
134									gtag('config', "G-8CRMWS8GBK", {'user_id': ga_userId_global});
135				
136				
137							} else {
138							}
139
140			if( track_google_ga_trigger == 1 ) { return false; };
141
142			if ( parseInt(global_product_id) > 0 ) {
143				if (typeof gaTrackProductView == 'function') {
144					gaTrackProductView();
145				}
146			}
147
148			
149			
150			
151			
152
153			
154		}, 2000);
155
156	</script>
156 
156<script>
157		
158		var QDMPPID = "6356598b40b2ed3f7325d28c84934546";
159		function setCookie(name, value, days) {
160			var expires = "";
161			if (days) {
162				// Mutate ONE Date object then format it. The previous one-liner set the
163				// expiry on a throwaway Date and formatted a fresh (now) Date, so every
164				// "persistent" cookie got expires=now and was dropped immediately.
165				var expireDate = new Date();
166				expireDate.setTime(expireDate.getTime() + (864e5 * days));
167				expires = "; expires=" + expireDate.toUTCString();
168			}
169			// SameSite=Lax lets cookies survive redirects back from external services (e.g. ECPay logistics).
170			document.cookie = name + "=" + value + expires + "; path=/; Secure; SameSite=Lax";
171		}
172		function getCookie(e){var n,i=document.cookie,o=i.indexOf(" "+e+"=");return-1==o&&(o=i.indexOf(e+"=")),i=-1==o?null:(o=i.indexOf("=",o)+1,-1==(n=i.indexOf(";",o))&&(n=i.length),unescape(i.substring(o,n)))}
173		if( !getCookie("QDMPPID") ) { setCookie("QDMPPID","3d571ef45992ff5181e561565f2ca99d", 365); }
174		QDMPPID = getCookie("QDMPPID");
175		<!-- Facebook Pixel Code -->
176		!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
177		n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
178		n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
179		t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
180		document,'script','https://connect.facebook.net/en_US/fbevents.js');
181		<!-- End Facebook Pixel Code -->
182
183		function onloadCSS(e,n){function t(){!o&&n&&(o=!0,n.call(e))}var o;e.addEventListener&&e.addEventListener("load",t),e.attachEvent&&e.attachEvent("onload",t),"isApplicationInstalled"in navigator&&"onloadcssdefined"in e&&e.onloadcssdefined(t)}!function(e){"use strict";var n=function(n,t,o){function a(e){return l.body?e():void setTimeout(function(){a(e)})}function d(){r.addEventListener&&r.removeEventListener("load",d),r.media=o||"all"}var i,l=e.document,r=l.createElement("link");if(t)i=t;else{var s=(l.body||l.getElementsByTagName("head")[0]).childNodes;i=s[s.length-1]}var f=l.styleSheets;r.rel="stylesheet",r.href=n,r.media="only x",a(function(){i.parentNode.insertBefore(r,t?i:i.nextSibling)});var c=function(e){for(var n=r.href,t=f.length;t--;)if(f[t].href===n)return e();setTimeout(function(){c(e)})};return r.addEventListener&&r.addEventListener("load",d),r.onloadcssdefined=c,c(d),r};"undefined"!=typeof exports?exports.loadCSS=n:e.loadCSS=n}("undefined"!=typeof global?global:this);
184
185		function removeClass( classname, element ) {
186			var cn = element.className;
187			var rxp = new RegExp( "s?b"+classname+"b", "g" );
188			cn = cn.replace( rxp, '' );
189			element.className = cn;
190		}
191
192		var disabledScroll = 1;
193		var doJsAfterLoad = 0;
194
195		
196		var stylesheets = [
197			"https://cdn.qdm.cloud/static/fontawesome/v3.2.1/css/font-awesome.min.css",
198			"https://cdn.qdm.cloud/static/fontawesome/v4.7.0/css/font-awesome.min.css",
199			"https://cdn.qdm.cloud/static/fontawesome/v5.11.2/css/all.min.css",
200			"https://cdn.qdm.cloud/static/fontawesome/v5.11.2/css/v4-shims.min.css",
201			"https://cdn.qdm.cloud/static/fontawesome/v6.5.1/css/all.min.css",
202			"https://fonts.googleapis.com/css?family=Roboto:400,400i,500,700&display=swap",
203			"https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css",
204			"https://cdnjs.cloudflare.com/ajax/libs/izitoast/1.4.0/css/iziToast.min.css"
205		];
206				function refreshMiniCartScrollBar(){
207			var nice = $(".nicescroll-box").niceScroll(".wrap",{emulatetouch:true,bouncescroll:true});
208		}
209		function initCoreCSS(){
210			if( doJsAfterLoad ) return;
211						var loading_css_product = loadCSS("https://cdn.qdm.cloud/assets/css/core_product.24022002.css");
212			onloadCSS(loading_css_product, function(){ initCSS(); });
213						toggleVisible('header');
214			toggleVisible('mainnav');
215			doJsAfterLoad = 1;
216		}
217		function initCSS(){
218			for (var i=0; i < stylesheets.length; i++) { loadCSS(stylesheets[i]); }
219						loadCSS("https://image-cdn.qdm.cloud/site/q6a5dd2e0d87d6/global.css?v=1780624407");
220					}
221		function loadJS(){
222											}
223
224		const ImageErrorHandler = {
225			// 配置選項
226			config: {
227				maxRetries: 5,
228				baseDelay: 200,
229				maxDelay: 3000,
230				defaultImage: "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",
231				fallbackImage: "//cdn.qdm.cloud/assets/no_image.jpg" // 可選的替代圖片
232			},
233
234			// 正在處理的圖片 Map(防止重複處理)
235			processingImages: new WeakMap(), //WeakMap減少記憶體的洩漏
236			handle(image) {
237				try {
238					if (!image || !image.src || this.processingImages.has(image)) {
239						return;
240					}
241
242					// 標記為處理中
243					this.processingImages.set(image, true);
244
245					const retryCount = parseInt(image.getAttribute('data-reload') || '0') + 1;
246
247					if (retryCount > this.config.maxRetries) {
248						this.handleFinalError(image);
249						return;
250					}
251
252					image.setAttribute('data-reload', retryCount);
253
254					// 計算延遲時間(指數退避)
255					const delay = Math.min(
256						this.config.baseDelay * Math.pow(2, retryCount - 1),
257						this.config.maxDelay
258					);
259
260					setTimeout(() => {
261						this.retryLoad(image, retryCount);
262					}, delay);
263
264				} catch (err) {
265					console.error('ImageErrorHandler error:', err);
266					this.handleFinalError(image);
267				}
268			},
269
270			retryLoad(image, retryCount) {
271				const imageSrc = this.updateTimestamp(image.src);
272				// 使用新圖片物件測試
273				const testImage = new Image();
274				testImage.onload = () => {
275					// 成功載入
276					image.src = imageSrc;
277					this.processingImages.delete(image);
278
279					// 重新綁定錯誤處理
280					image.onerror = () => this.handle(image);
281				};
282
283				testImage.onerror = () => {
284					// 載入失敗
285					this.processingImages.delete(image);
286
287					// 如果是最後一次重試前,嘗試使用備用圖片
288					if (retryCount === this.config.maxRetries - 1 && this.config.fallbackImage) {
289						image.src = this.config.fallbackImage;
290						image.onerror = () => this.handle(image);
291					} else {
292						this.handle(image);
293					}
294				};
295
296				testImage.src = imageSrc;
297			},
298
299			updateTimestamp(src) {
300				const timestamp = `timestamp=${Date.now()}`;
301
302				if (src.includes('timestamp=')) {
303					return src.replace(/timestamp=\d+/, timestamp);
304				}
305
306				const separator = src.includes('?') ? '&' : '?';
307				return `${src}${separator}${timestamp}`;
308			},
309
310			handleFinalError(image) {
311				// 清理
312				image.onerror = null;
313				image.onload = null;
314				this.processingImages.delete(image);
315
316				// 保存原始 URL
317				if (!image.src.includes("base64") && !image.hasAttribute('data-image-raw')) {
318					image.setAttribute('data-image-raw', image.src);
319				}
320
321				// 設置預設圖片
322				image.src = this.config.defaultImage;
323
324				// 觸發事件
325				image.dispatchEvent(new CustomEvent('imageFinalError', {
326					detail: {
327						originalSrc: image.getAttribute('data-image-raw'),
328						retries: image.getAttribute('data-reload')
329					}
330				}));
331			}
332		};
333
334		// 圖片錯誤
335		function imgError(image) {
336			ImageErrorHandler.handle(image);
337		}
338
339
340	</script>
340 
340<script>
341		function vbtrax_track(){
342				}
343
344		function criteo_track(){
345		}
346
347		
348	</script>
348 
348<script type="application/javascript"> </script>
348 </script>
348 
348<script>
349			var N=document.createElement("link");
350	N.setAttribute("href", "https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/favicon.png");
351	N.setAttribute("rel", "shortcut icon");
352			N.setAttribute("type", "image/png");
353		document.head.appendChild(N);
354		</script>
354 
354<script>document.createElement("picture");</script>
354 
354<script async src='https://cdnjs.cloudflare.com/ajax/libs/picturefill/3.0.3/picturefill.min.js'></script>
354 <link rel="icon" href="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/favicon.png" type="image/x-icon" > <link rel="shortcut icon" href="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/favicon.png" type="image/x-icon" > <link type="text/css" rel="stylesheet" href="https://cdn.qdm.cloud/min/css/core.260320v01.css"> <style>
355	*, body, p, pre, button, input, optgroup, select, textarea, a, a:visited { font-family: 'SF Pro TC', 'SF Pro Text', 'PingFang TC', 'Segoe UI', SegoeUI, 'Microsoft JhengHei', 微軟正黑體, 'Helvetica Neue', Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
356	@media (min-width: 1200px) { body { padding-top: 40px; } .container, .navbar-static-top .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container { width: 1170px; } }
357	.hidden{display:none;visibility:hidden}
358	.pull-right { float: right !important; }
359	.container > #mainnav.skin4 { max-width:860px;width:100%; }
360	.container > #mainnav.skin4 .nav.menu-nav { display:inherit; }
361	#mainnav ul { list-style: none; display: flex; flex-wrap: wrap; }
362	#mainnav ul li { position: relative; }
363	#mainnav ul li ul.dropdown-menu { position: absolute; display: none; flex-direction: column; }
364	#mainnav ul li ul.dropdown-menu > li.column-menu { display: table-cell; border-right: 1px solid #eee; vertical-align: top; }
365	#mainnav ul li ul.dropdown-menu > li.column-menu > ul { display: block; }
366	#mainnav ul li:hover > ul { display: flex; }
367	#mainnav ul ul ul {top: 0; left: 100%; border-left:solid 1px #fff; width:auto;}
368	#mainnav ul.nav li.dropdown ul.dropdown-menu { webkit-box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); -moz-box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); }
369	#mainnav ul.nav li.dropdown ul.dropdown-menu li a { font-size: 17px; line-height: 26px; }
370	#mainnav ul.nav li.dropdown > ul.dropdown-menu > li[data-has-child] > a:after { content: ''; border: 4px solid transparent; border-left: 4px solid #000; margin-top: 2px; margin-bottom: 3px; display: inline-block; vertical-align: bottom; position: absolute; right: 6px; top: 10px; }
371	.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0;}
372	.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px;}
373	#header ul{list-style:none;margin:0;padding:0} #header li{list-style:none}
374	.navbar .nav{position:relative;}
375	.navbar .nav.pull-right{float:right;margin-right:0;}
376	.navbar .nav>li{float:left;}
377	.navbar .nav>li>a{float:none;padding:10px 15px 10px;text-decoration:none;}
378	.navbar .nav .dropdown-toggle .caret{margin-top:8px;}
379	.navbar .button-navbar{display:none;float:right;padding:7px 10px;margin-left:5px;margin-right:5px;}
380	.button-navbar .icon-bar+.icon-bar{margin-top:3px;}
381	.navbar .nav>li>.dropdown-menu:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0, 0, 0, 0.2);position:absolute;top:-7px;left:9px;}
382	.navbar .nav>li>.dropdown-menu:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #ffffff;position:absolute;top:-6px;left:10px;}
383	.dropdown-menu { position: absolute; display: none; float: left; }
384	.dropup, .dropdown { position: relative; }
385			.pushy { z-index: 99999999; }
386	.pushy-menu-storename span{
387		width: 40%;
388		position: absolute;
389		top: 24px;
390		right: 5px;
391		text-align: right;
392		padding-right: 10px;
393	}
394	.pushy-menu-storename a{
395		width: 90%;
396	}
397	.pushy-menu-storename a:hover, a:visited, a:link, a:active {
398		text-decoration: none;
399	}
400	</style> <link type="text/css" rel="stylesheet" href="https://cdn.qdm.cloud/min/css/theme/skin-2.css?v=231130001"> <link type="text/css" rel="stylesheet" href="https://image-cdn.qdm.cloud/site/q6a5dd2e0d87d6/custom_theme.css?v=20260604160837"> <style>
401	html {-webkit-transition: background-color 0s;transition: background-color 0s;} html.loading { position: relative; overflow:hidden; width:100%; height:100%; min-height:768px;
401 background: #fff url('https://cdn.qdm.cloud/min/cache/loading_1107.gif') no-repeat 50% 40%;-webkit-transition: background-color 0; transition: background-color 0; height: 100%; width: 100%;} body {-webkit-transition: opacity 0.3s ease-in;transition: opacity 0.3s ease-in;} html.loading body { opacity: 0; -webkit-transition: opacity 0s; transition: opacity 0s; } html.loading:before { font-size: 15px; content: "【 請勿關閉視窗 】等候交易授權中"; color: #000; vertical-align: middle; text-align: center; width: 100%; display: block; position: absolute; top: 30%; } img { opacity: 1; transition: opacity 0s; } img[data-src] { opacity: 1; } .flexslider .flex-direction-nav { display:none; }
402				.already_sold span{color:#e4007f;font-weight:bold;}
403	#myBody .fancybox-buttons { top: 60px; }
404	.ui-autocomplete.ui-front.ui-menu {
405		z-index: 999999999; border: none; border: 1px solid #EEE; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
406	}
407	.ui-autocomplete.ui-front.ui-menu > .ui-menu-item {
408		font-size: 17px; line-height: 26px; list-style-image: none; background-color: #FFF; cursor: pointer; border: none;
409	}
410	.ui-autocomplete.ui-front.ui-menu > .ui-menu-item a.ui-state-focus {
411		line-height: 26px;
412		border-color: #616161;
413		background: #616161 !important;
414		font-weight: bold !important;
415		color: #ffffff !important;
416	}
417	@media only screen and (max-width:768px){.fb_dialog_content>iframe:first-child, .fb-customerchat iframe {bottom: 50px !important;}.quickcheckout-checkout .fb_dialog_content>iframe:first-child, .quickcheckout-checkout .fb-customerchat iframe {bottom: 90px !important;}}
418	.onsale{ width:65px; height:24px; min-width:65px; min-height:24px; padding:2px; border-radius:5%; line-height:20px; }
419	#navbar-top-socialbar li.social-icon{ line-height:0px; padding-top:6px; }
420	#navbar-top-socialbar li.social-icon>a>i{ line-height:24px; }
421	.display_price { display:none; }
422
423	#payment-logo-list{
424		width: 100%;
425		max-width: 1200px;
426		margin: 0 auto;
427		/*padding-bottom: 20px;*/
428		padding-top: 10px;
429	}
430
431	#payment-logo-list .pl-row {
432		display: flex;
433		flex-wrap: wrap;
434		justify-content: center;
435		gap: 20px;
436	}
437
438	#payment-logo-list .pl-col {
439		flex: 1;
440		max-width: 120px;
441		padding: 2px;
442		text-align: center;
443	}
444	#payment-logo-list .pl-col img {
445		max-height: 40px;
446		line-height: 40px;
447		object-fit: contain
448	}
449	@media only screen and (max-width:768px){
450		#payment-logo-list .pl-col {
451			min-width: 10%;
452		}
453	}
454	</style> <style>
455	.preload-hidden { opacity: 0; transition: opacity .3s ease; }
456	.awoo-ui { display:block; margin-top:20px; margin-bottom:20px; }
457	</style> 
457<script>
458	window.addEventListener('load', function(){
459		try {
460			setTimeout(function(){
461				var preloadElements = document.querySelectorAll('.preload-hidden');
462				preloadElements.forEach(function(element) {
463					element.style.opacity = '1';
464				});
465			}, 300);
466		} catch(e) {}
467	});
468	</script>
468 </head> <body id="myBody" data-customer-group="1" data-instant-allow-query-string itemscope itemtype="https://schema.org/WebSite" class="responsive  home fullscreen skin-2 "> <div id="fb-root"></div> 
468<script>
469	window.fbAsyncInit = function() {
470		FB.init({
471		  appId      		: '162172840650014',
472		  autoLogAppEvents 	: true,
473		  cookie     		: true,
474		  xfbml            	: true,
475		  status     		: true,
476		  version    		: 'v19.0'
477		});
478			};
479</script>
479 <meta itemprop="url" content="https://www.iporkcut.com.tw/" /> <!-- Mobile Header --> <!--googleoff: index--> <div id="mobile-navbar" class="navbar navbar-static-top FixedTop visible-xs visible-sm" style="display:none;"> <div class="navbar-inner"> <ul class="nav"> <li id="menu-btn" class="menu-btn"><span>&#9776;</span></li> <li class="site-title"> <a href="https://www.iporkcut.com.tw/">愛不是手★愛的是脆片肉乾</a> </li> <li id="shopping-cart-list" class="shopping-cart" data-direction="left" style="overflow: visible; margin: 0px; padding-right: 10px;"><a href="https://www.iporkcut.com.tw/cart"><i class="fa fa-shopping-cart" aria-hidden="true"></i><span class="badge hidden">0</span></a></li> </ul> </div> </div> <!--googleon: index--> <!-- Pushy Menu --> <nav id="mobile-menu-pushy" class="pushy pushy-left visible-xs visible-sm" style="display:none;"> <div class="pushy-content"> <ul> <li class="pushy-menu-storename"> <a href="https://www.iporkcut.com.tw/">愛不是手★愛的是脆片肉乾</a> <span><i class="fa fa-times" aria-hidden="true"></i></span> </li> <div class="pushy-menu-main"> <li class="header-logged-menu pushy-submenu hidden"> <button><i class="fa fa-user-circle-o"></i>&nbsp;<span id="header-mobile-user"></span></button> <ul> <li class="pushy-link"><a href="/account">會員中心</a></li> <li class="pushy-link"><a href="https://www.iporkcut.com.tw/account/edit">我的資料</a></li> <li class="pushy-link"><a href="https://www.iporkcut.com.tw/account/reward">我的紅利</a></li> <div class="pushy-menu-divide"></div> <li class="pushy-link"><a href="https://www.iporkcut.com.tw/wishlist">願望清單</a></li> <li class="pushy-link"><a href="https://www.iporkcut.com.tw/compare">商品比較</a></li> <div class="pushy-menu-divide"></div> <li class="pushy-link"><a href="https://www.iporkcut.com.tw/newsletter">我的訂閱</a></li> </ul> </li> <li class="header-logged-menu pushy-submenu hidden"> <button><i class="fa fa-truck" aria-hidden="true"></i>&nbsp;我的訂單</button> <ul> <li class="pushy-link"><a href="https://www.iporkcut.com.tw/account/order/payment">填寫匯款單</a></li> <li class="pushy-link"><a href="https://www.iporkcut.com.tw/order">我的訂單</a></li> <li class="pushy-link"><a href="https://www.iporkcut.com.tw/account/return">退/換貨紀錄</a></li> </ul> </li> <li class="pushy-link header-none-logged-menu hidden"><a href="/login"><i class="fa fa-user-circle-o"></i>&nbsp;會員中心&nbsp;(登入)</a></li> <li class="pushy-link header-none-logged-menu hidden"><a href="/guestorder"><i class="fa fa-search-plus" aria-hidden="true"></i>&nbsp;我要查訂單</a></li> <li class="pushy-submenu"> <button><i class="fa fa-commenting-o" aria-hidden="true"></i>&nbsp;找店長</button> <ul> <li class="pushy-link"><a href="https://www.iporkcut.com.tw/contact">線上留言</a></li> <li class="pushy-link"><a href="mailto:[email protected]" target="_blank" rel="noopener noreferrer nofollow">電子郵件</a></li> <li class="pushy-link"><a href="https://www.messenger.com/t/iporkcut" target="_blank" rel="noopener noreferrer nofollow">Facebook訊息</a></li> </ul> </li> <li class="pushy-link header-logged-menu hidden"><a href="https://www.iporkcut.com.tw/account/logout"><i class="fa fa-sign-out" aria-hidden="true"></i>&nbsp;登出</a></li> </div> <!-- \.pushy-menu-main --> <div class="pushy-menu-divide"></div> <div class="search"> <form method="get" action="/search"> <span class="fa fa-search"></span> <input type="text" name="q" placeholder="商品關鍵字" autocomplete="off"> </form><br/> </div> <div class="pushy-menu-category"> <li class="pushy-link home-item-link"><a href="https://www.iporkcut.com.tw/">商店首頁</a></li> <li class="pushy-link" > <a href="https://www.iporkcut.com.tw/年節禮盒" >年節禮盒</a> </li> <li class="pushy-link" > <a href="https://www.iporkcut.com.tw/海鮮系列" >海鮮系列</a> </li> <li class="pushy-link" > <a href="https://www.iporkcut.com.tw/肉乾系列" >肉乾系列</a> </li> <li class="pushy-link" > <a href="https://www.iporkcut.com.tw/肉紙系列" >肉紙系列</a> </li> <li class="pushy-link" > <a href="https://www.iporkcut.com.tw/脆片系列" >脆片系列</a> </li> <li class="pushy-link" > <a href="https://www.iporkcut.com.tw/美味香鬆" >美味香鬆</a> </li> <li class="pushy-link" > <a href="https://www.iporkcut.com.tw/涮嘴零嘴" >涮嘴零嘴</a> </li> </div> </ul> </div> </nav> <!-- Site Overlay --> <div class="site-overlay"></div> <header id="header" class="visible-lg visible-md" itemscope itemtype="https://schema.org/Organization"> <div class="container"> <!-- search bar --> <div class="container" id="search" class="search"> <div class="searchbox input-append" itemprop="potentialAction" itemscope itemtype="https://schema.org/SearchAction"> <meta itemprop="target" content="https://www.iporkcut.com.tw/search?q={filter_name}"/> <input itemprop="query-input" type="search" name="filter_name" value="" placeholder="搜尋" class="input-xxlarge" /> <button class="button button-search" type="button"><i class="icon-search"></i></button> </div> </div> <ul class="nav nav-pills pull-right"> <li style="margin-top:-1px; margin-right: 10px;"></li> <li></li> <li><section class="float-mini-cart" id="cart"> <style>
480.mini-cart-info td, .mini-cart-total td { line-height:20px; }
481</style> <div class="heading"> <i class="fa fa-shopping-cart"></i>&nbsp;
482		( <a href="https://www.iporkcut.com.tw/cart" id="cart-total">
483					 0 件商品 $0				</a>
484		 )
485			</div> <div class="content"> <div class="empty white">購物車沒有加入任何商品</div> <a id="closecart" class="close" title="Close" onclick="$('#cart').removeClass('active');">×</a> </div> </section></li> <li id="header-logged-menu" class="dropdown hidden"> <a href="https://www.iporkcut.com.tw/account" class="dropdown-toggle" data-toggle="dropdown"><i class="fa fa-user-o"></i>&nbsp;<span id="header-logged-user"></span>&nbsp;<b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="https://www.iporkcut.com.tw/account">會員中心</a></li> <li><a href="https://www.iporkcut.com.tw/order">我的訂單</a></li> <li><a href="https://www.iporkcut.com.tw/account/order/payment">填寫匯款單</a></li> <li><a href="https://www.iporkcut.com.tw/wishlist">願望清單</a></li> <li><a href="https://www.iporkcut.com.tw/compare">商品比較</a></li> <li class="divider"></li> <li><a href="https://www.iporkcut.com.tw/account/logout">登出</a></li> </ul> </li> <li id="header-none-logged-menu"><a href="https://www.iporkcut.com.tw/login" title="會員登入" id="bt
485nLogin"><i class="fa fa-user-o"></i> 會員登入</a></li> <li class="dropdown"> <a href="##" class="dropdown-toggle" data-toggle="dropdown"><i class="fa fa-commenting-o"></i></a> <ul class="dropdown-menu"> <li><a href="https://www.iporkcut.com.tw/contact"><i class="fa fa-comments-o">&nbsp;線上留言</i></a></li> <li><a href="mailto:[email protected]" target="_blank" rel="noopener noreferrer nofollow"><i class="fa fa-envelope-o">&nbsp;電子郵件</i></a></li> <li><a href="https://www.messenger.com/t/iporkcut" target="_blank" rel="noopener noreferrer nofollow"><i class="fa fa-facebook-square">&nbsp;Facebook訊息</i></a></li> </ul> </li> <li><a href="##" id="switchSearchPanel" class="switchSearchPanel" title="搜商品"><i class="fa fa-search"></i></a></li> </ul> <a itemprop="url" class="logo" href="https://www.iporkcut.com.tw/"><img onerror='imgError(this);' itemprop="logo" src="//image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2018/09/26/1e97bc46691f1b39b1763c3dd3aca3c3.jpg" title="愛不是手★愛的是脆片肉乾" alt="愛不是手★愛的是脆片肉乾" /></a> </div> <br/><br/> </header> <div id="content-wrapper"> <div class="container"> <nav id="mainnav" class="navbar visible-lg visible-md" role="navigation" style="visibility:hidden"> <div class="navbar-inner"> <div class="container"> <button type="button" class="button button-navbar" data-toggle="collapse" data-target=".nav-collapse"> <span>
486
487								選單</span> <i class="icon-navbtn"></i> </button> <div class="nav-collapse"> <ul class="nav"> <li data-categoryid="15"  href="https://www.iporkcut.com.tw/年節禮盒" > <a href="https://www.iporkcut.com.tw/年節禮盒"  data-hover="">年節禮盒</a> </li> <li data-categoryid="22"  href="https://www.iporkcut.com.tw/海鮮系列" > <a href="https://www.iporkcut.com.tw/海鮮系列"  data-hover="">海鮮系列</a> </li> <li data-categoryid="9"  href="https://www.iporkcut.com.tw/肉乾系列" > <a href="https://www.iporkcut.com.tw/肉乾系列"  data-hover="肉乾系列">肉乾系列</a> </li> <li data-categoryid="10"  href="https://www.iporkcut.com.tw/肉紙系列" > <a href="https://www.iporkcut.com.tw/肉紙系列"  data-hover="肉紙系列">肉紙系列</a> </li> <li data-categoryid="8"  href="https://www.iporkcut.com.tw/脆片系列" > <a href="https://www.iporkcut.com.tw/脆片系列"  data-hover="脆片系列">脆片系列</a> </li> <li data-categoryid="11"  href="https://www.iporkcut.com.tw/美味香鬆" > <a href="https://www.iporkcut.com.tw/美味香鬆"  data-hover="美味香鬆">美味香鬆</a> </li> <li data-categoryid="12"  href="https://www.iporkcut.com.tw/涮嘴零嘴" > <a href="https://www.iporkcut.com.tw/涮嘴零嘴"  data-hover="涮嘴零嘴">涮嘴零嘴</a> </li> </ul> </div> </div> </div> </nav><!-- #navbar --> </div><!-- .container --> <div class="fluid-container"> <div id="content-top"></div> </div><!-- .fluid-container --> <div id="body-outer-container" class="container"> <div class="container-inner"> <div class="row-fluid"> <section id="maincontent" class="span12 home"> <div class="mainborder"> <section class="content-top"> <center> <div id="banner0" class="banner" > <a href="https://www.iporkcut.com.tw/product/product&amp;product_id=66" class=""><img onerror='imgError(this);' src="//image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/0825中秋.jpg" alt="" title="" /></a> </div> </center> <div class="flipper_wrap clearfix"> <!-- 愛不是手 節慶限定精選禮盒區塊 --> <div class="ipork-four-products-section"> <div class="ipork-four-products-container"><!-- 區塊標頭 --> <div class="ipork-section-header"> <h2>節慶限定・美味首選</h2> <p>歲時過節、歡聚相伴,愛不是手為您傳遞最誠摯的澎湃心意</p> </div> <!-- 商品並排網格 --> <div class="ipork-product-grid-four"><!-- 商品卡片 1:箸畐禮盒 --> <div class="ipork-product-card"> <div class="product-badge">人氣熱銷</div> <div class="product-img-box"><img alt="箸畐禮盒" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2021/12/07/858569dc84297cb7410d075ef163d60f.jpg" /></div> <div class="product-info"> <h3>【愛不是手】箸畐禮盒</h3> <p class="product-desc">嚴選優質原料,手作烘焙保留最純粹的黃金比例美味。</p> <div class="product-price-box"><!-- 已改為單一價格顯示 -->
487<span class="sale-price">NT$750</span></div> <a class="btn-buy" href="https://www.iporkcut.com.tw/product/product&amp;product_id=65" target="_blank">立即選購</a></div> </div> <!-- 商品卡片 2:幸福禮盒 --> <div class="ipork-product-card"> <div class="product-badge">主廚推薦</div> <div class="product-img-box"><img alt="幸福禮盒" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2026/06/10/b31f36f5c8415c0c65122820aeebe4e6.jpg" /></div> <div class="product-info"> <h3>【愛不是手】幸福禮盒</h3> <p class="product-desc">獨家工藝封存飽滿精華,口感層次豐富讓人愛不釋手。</p> <div class="product-price-box"><!-- 已改為單一價格顯示 --><span class="sale-price">NT$750</span></div> <a class="btn-buy" href="https://www.iporkcut.com.tw/product/product&amp;product_id=66" target="_blank">立即選購</a></div> </div> <!-- 商品卡片 3:經典禮盒 --> <div class="ipork-product-card"> <div class="product-badge">節慶限定</div> <div class="product-img-box"><img alt="經典禮盒" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2021/12/07/3d4a7e5c47eefa293f810961c3b1a1ab.jpg" /></div> <div class="product-info"> <h3>【愛不是手】經典禮盒</h3> <p class="product-desc">節慶奢華包裝,圓團聚拜訪長輩、客戶的體面首選。</p> <div class="product-price-box"><!-- 已改為單一價格顯示 --><span class="sale-price">NT$750</span></div> <a class="btn-buy" href="https://www.iporkcut.com.tw/%E4%B8%AD%E7%A7%8B%E7%A6%AE%E7%9B%92" target="_blank">立即選購</a></div> </div> </div> </div> </div> <!-- 專屬品牌優化樣式 (CSS) --> <style type="text/css">/* 基礎設定 */
488.ipork-four-products-section {
489  background-color: #ffffff;
490  padding: 60px 20px;
491  font-family: "PingFang TC", "Heiti TC", "Microsoft JhengHei", sans-serif;
492}
493.ipork-four-products-container {
494  max-width: 1200px;
495  margin: 0 auto;
496}
497
498/* 標頭樣式 */
499.ipork-section-header {
500  text-align: center;
501  margin-bottom: 40px;
502}
503.ipork-section-header h2 {
504  color: #333333;
505  font-size: 28px;
506  font-weight: bold;
507  position: relative;
508  display: inline-block;
509  margin-bottom: 12px;
510}
511.ipork-section-header h2::after {
512  content: '';
513  display: block;
514  width: 50px;
515  height: 3px;
516  background-color: #b51a63; /* 品牌桃紅色 */
517  margin: 8px auto 0 auto;
518  border-radius: 2px;
519}
520.ipork-section-header p {
521  color: #666666;
522  font-size: 15px;
523  margin: 0;
524}
525
526/* 核心:3 欄排列自適應網格 */
527.ipork-product-grid-four {
528  display: flex;
529  flex-wrap: wrap;
530  gap: 30px;
531  justify-content: center;
532}
533
534/* 商品卡片本體 */
535.ipork-product-card {
536  background: #ffffff;
537  border: 1px solid #eeeeee;
538  border-radius: 12px;
539  overflow: hidden;
540  position: relative;
541  transition: all 0.3s ease;
542  display: flex;
543  flex-direction: column;
544  width: calc((100% - 60px) / 3); 
545  box-sizing: border-box;
546}
547.ipork-product-card:hover {
548  transform: translateY(-8px);
549  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
550  border-color: #e0b0c5;
551}
552
553/* 小標籤樣式 */
554.product-badge {
555  position: absolute;
556  top: 12px;
557  left: 12px;
558  color: white;
559  padding: 4px 12px;
560  font-size: 12px;
561  font-weight: bold;
562  border-radius: 20px;
563  z-index: 2;
564  background-color: #b51a63; 
565}
566.ipork-product-grid-four .ipork-product-card:nth-child(3) .product-badge {
567  background-color: #d49e35; 
568}
569
570/* 圖片框外框比例固定 (1:1正方形) */
571.product-img-box {
572  width: 100%;
573  padding-top: 100%; 
574  position: relative;
575  background: #f9f9f9;
576  overflow: hidden;
577}
578.product-img-box img {
579  position: absolute;
580  top: 0;
581  left: 0;
582  width: 100%;
583  height: 100%;
584  object-fit: cover;
585  transition: transform 0.5s ease;
586}
587.ipork-product-card:hover .product-img-box img {
588  transform: scale(1.06);
589}
590
591/* 商品資訊區 - 透過 flex-grow 達成等高對齊 */
592.product-info {
593  padding: 20px;
594  display: flex;
595  flex-direction: column;
596  flex-grow: 1; 
597}
598.product-info h3 {
599  font-size: 16px;
600  color: #333333;
601  margin: 0 0 8px 0;
602  font-weight: 600;
603  line-height: 1.4;
604  height: 44px; 
605  overflow: hidden;
606}
607.product-desc {
608  font-size: 13px;
609  color: #777777;
610  margin: 0 0 15px 0;
611  line-height: 1.5;
612  flex-grow: 1; 
613}
614.product-price-box {
615  margin-bottom: 15px;
616  display: flex;
617  align-items: baseline;
618  gap: 8px;
619}
620.sale-price {
621  color: #b51a63;
622  font-weight: bold;
623  font-size: 19px; /* 單一價格稍微放大,視覺更聚焦 */
624}
625
626/* 立即選購按鈕 */
627.btn-buy {
628  display: block;
629  text-align: center;
630  background-color: #ffffff;
631  color: #b51a63;
632  border: 1px solid #b51a63;
633  padding: 10px;
634  border-radius: 6px;
635  text-decoration: none;
636  font-size: 14px;
637  font-weight: 600;
638  transition: all 0.3s ease;
639}
640.btn-buy:hover {
641  background-color: #b51a63;
642  color: #ffffff;
643}
644
645/* RWD 平板版 */
646@media (max-width: 1024px) {
647  .ipork-product-card {
648    width: calc((100% - 30px) / 2);
649  }
650}
651/* RWD 手機版 */
652@media (max-width: 768px) {
653  .ipork-product-grid-four {
654    gap: 15px;
655  }
656  .ipork-product-card {
657    width: calc((100% - 15px) / 2);
658    border-radius: 8px;
659  }
660  .product-info { padding: 12px; }
661  .product-info h3 { font-size: 14px; height: 40px; }
662  .product-desc { display: none; } 
663  .sale-price { font-size: 16px; }
664}
665</style></div> <center> <div id="banner1" class="banner" > </div> </center> <div class="flipper_wrap clearfix"> <!-- ==========================================================================
666   【愛不是手】首頁團購激推標題 + 完整商品資料網格 (完美復刻 image_4e5bfe.jpg 帶字與價格)
667   ========================================================================== --> <div class="ipork-homepage-section"><!-- 上半部:質感置中標題組 --> <div class="ipork-section-header"> <h2>團購激推・熱銷完滿</h2> <p>辦公小憩、同事分享,愛不是手為您打造最療癒的午茶食光</p> </div> <!-- 下半部:精美商品資訊網格 (圖片、名稱、價格完美並排置中) --> <div class="ipork-products-grid"><!--煙燻魷魚絲 --> <div class="ipork-product-item"> <div class="ipork-img-wrapper"><a href="https://www.iporkcut.com.tw/product/product&amp;product_id=62"><img alt="煙燻魷魚絲" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2023/07/31/f19c25380bc96dc522b00f446189982a.jpg" /></a></div> <div class="ipork-product-info"><a class="ipork-title" href="https://www.iporkcut.com.tw/product/product&amp;product_id=5">煙燻魷魚絲</a> <div class="ipork-price">$260</div> </div> </div> <!-- 蜜汁肉乾 --> <div class="ipork-product-item"> <div class="ipork-img-wrapper"><a href="https://www.iporkcut.com.tw/product/product&amp;product_id=11"><img alt="蜜汁肉乾" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2018/09/25/d88df60dccb9b0f5c5f613cdcfc48366.jpg" /></a></div> <div class="ipork-product-info"><a class="ipork-title" href="https://www.iporkcut.com.tw/product/product&amp;product_id=1">蜜汁肉乾</a> <div class="ipork-price">$230</div> </div> </div> <!-- 原味松板厚切 --> <div class="ipork-product-item"> <div class="ipork-img-wrapper"><a href="https://www.iporkcut.com.tw/product/product&amp;product_id=30"><img alt="原味松板厚切" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2021/12/07/570907ff8c2b952728d2d9738f1ca321.jpg" /></a></div> <div class="ipork-product-info"><a class="ipork-title" href="https://www.iporkcut.com.tw/product/product&amp;product_id=11">原味松板厚切</a> <div class="ipork-price">$230</div> </div> </div> <!-- 商品 4:原味肉紙 --> <div class="ipork-product-item"> <div class="ipork-img-wrapper"><a href="https://www.iporkcut.com.tw/product/product&amp;product_id=13"><img alt="原味肉紙" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2023/07/31/640d8440357133684ed2b744377aa72d.jpg" /></a></div> <div class="ipork-product-info"><a class="ipork-title" href="https://www.iporkcut.com.tw/product/product&amp;product_id=8">原味肉紙</a> <div class="ipork-price">$230</div> </div> </div> </div> </div> <!-- 專屬高質感結構樣式表 (CSS) --> <style type="text/css">.ipork-homepage-section {
668    background-color: #ffffff !important;
669    padding: 40px 20px !important;
670    width: 100% !important;
671    box-sizing: border-box !important;
672    font-family: "PingFang TC", "Heiti TC", "Microsoft JhengHei", sans-serif !important;
673}
674
675/* 上半部:標題組 CSS */
676.ipork-section-header {
677    text-align: center !important;
678    margin-bottom: 50px !important;
679}
680
681.ipork-section-header h2 {
682    color: #333333 !important;
683    font-size: 28px !important;
684    font-weight: bold !important;
685    letter-spacing: 2px !important;
686    margin: 0 auto 15px auto !important;
687    display: table !important;
688    position: relative !important;
689}
690
691.ipork-section-header h2::after {
692    content: '' !important;
693    display: block !important;
694    width: 45px !important;
695    height: 3px !important;
696    background-color: #b51a63 !important;
697    margin: 12px auto 0 auto !important;
698    border-radius: 2px !important;
699}
700
701.ipork-section-header p {
702    color: #777777 !important;
703    font-size: 15px !important;
704    font-weight: normal !important;
705    letter-spacing: 1px !important;
706    margin: 15px 0 0 0 !important;
707    line-height: 1.6 !important;
708}
709
710/* 下半部:商品網格排版 */
711.ipork-products-grid {
712    max-width: 1200px !important;
713    margin: 0 auto !important;
714    display: flex !important;
715    flex-direction: row !important;
716    flex-wrap: nowrap !important;
717    justify-content: space-between !important;
718}
719
720.ipork-product-item {
721    width: calc((100% - 45px) / 4) !important;
722    box-sizing: border-box !important;
723    display: flex !important;
724    flex-direction: column !important;
725}
726
727/* 圖片包裝與防變形 */
728.ipork-img-wrapper {
729    width: 100% !important;
730    aspect-ratio: 1 / 1 !important;
731    overflow: hidden !important;
732    border-radius: 4px !important;
733    background-color: #fcfcfc !important;
734    border: 1px solid #f0f0f0 !important;
735}
736
737.ipork-img-wrapper img {
738    width: 100% !important;
739    height: 100% !important;
740    object-fit: cover !important;
741    transition: transform 0.5s ease !important;
742}
743
744.ipork-img-wrapper:hover img {
745    transform: scale(1.05) !important;
746}
747
748/* ==========================================================================
749   全新修復:完美復刻 image_4e5bfe.jpg商品名稱與價格的文字樣式與置中間距
750   ========================================================================== */
751.ipork-product-info {
752    text-align: center !important; /* 確保所有文字絕對置中 */
753    padding-top: 15px !important; /* 與上方圖片推開適當的精緻距離 */
754}
755
756/* 商品主名稱連結 */
757.ipork-title {
758    color: #333333 !important;
759    font-size: 15px !important;
760    font-weight: 500 !important;
761    text-decoration: none !important;
762    display: inline-block !important;
763    margin-bottom: 6px !important;
764    transition: color 0.3s ease !important;
765}
766
767.ipork-title:hover {
768    color: #b51a63 !important; /* 懸停時變為愛不是手品牌色 */
769}
770
771/* 商品價格金額 */
772.ipork-price {
773    color: #555555 !important;
774    font-size: 14px !important;
775    font-weight: bold !important;
776}
777
778/* ==========================================================================
779   RWD 響應式手機/平板防爆控制
780   ========================================================================== */
781@media (max-width: 992px) {
782    .ipork-products-grid {
783        flex-wrap: wrap !important;
784    }
785    .ipork-product-item {
786        width: calc((100% - 15px) / 2) !important;
787        margin-bottom: 25px !important;
788    }
789}
790
791@media (max-width: 768px) {
792    .ipork-section-header h2 {
793        font-size: 22px !important;
794    }
795    .ipork-section-header p {
796        font-size: 13px !important;
797        padding: 0 10px !important;
798    }
799}
800</style></div> <div class="flipper_wrap clearfix"> <!-- ==========================================================================
801   【愛不是手】首頁解饞囤貨區塊 - 標題 + 完整商品資料網格 (獨立新區塊專用)
802   ========================================================================== --> <div class="ipork-snack-section"><!-- 上半部:質感置中標題組 (解饞首選主題) --> <div class="ipork-snack-header"> <h2>解饞首選・美味相伴</h2> <p>追劇必備、歡聚時刻,愛不是手讓您的每個日常都充滿香Q滋味</p> </div> <!-- 下半部:精美商品資訊網格 (對齊真實產品源、名稱與價格) --> <div class="ipork-snack-grid"><!-- 豬肉絲 --> <div class="ipork-snack-item"> <div class="ipork-snack-img"><a href="https://www.iporkcut.com.tw/product/product&amp;product_id=12"><img alt="豬肉絲" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2018/09/25/53ed983176ea7953b361e62eb9d3cc6b.jpg" /></a></div> <div class="ipork-snack-info"><a class="snack-title" href="https://www.iporkcut.com.tw/product/product&amp;product_id=13">豬肉絲</a> <div class="snack-price">$230</div> </div> </div> <!-- 黑胡椒松坂厚切 --> <div class="ipork-snack-item"> <div class="ipork-snack-img"><a href="https://www.iporkcut.com.tw/product/product&amp;product_id=29"><img alt="黑胡椒松坂厚切" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2021/12/07/436eda4ad245a1fadbc5c8f1076d4da4.jpg" /></a></div> <div class="ipork-snack-info"><a class="snack-title" href="https://www.iporkcut.com.tw/product/product&amp;product_id=3">黑胡椒松坂厚切</a> <div class="snack-price">$230</div> </div> </div> <!-- 杏仁芝麻脆片) --> <div class="ipork-snack-item"> <div class="ipork-snack-img"><a href="https://www.iporkcut.com.tw/product/product&amp;product_id=6"><img alt="杏仁芝麻脆片" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2018/09/25/539f27a43f1902a4a729a6da55fea413.jpg" /></a></div> <div class="ipork-snack-info"><a class="snack-title" href="https://www.iporkcut.com.tw/product/product&amp;product_id=9">杏仁芝麻脆片</a> <div class="snack-price">$230</div> </div> </div> <!-- 章魚花 --> <div class="ipork-snack-item"> <div class="ipork-snack-img"><a href="https://www.iporkcut.com.tw/product/product&amp;product_id=61"><img alt="章魚花" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2018/09/25/e036039bb2b8a89911da289ba960e16e.jpg" /></a></div> <div class="ipork-snack-info"><a class="snack-title" href="https://www.iporkcut.com.tw/product/product&amp;product_id=4">章魚花</a> <div class="snack-price">$260</div> </div> </div> </div> </div> <!-- 獨立新區塊專用樣式表 (CSS) --> <style type="text/css">/* 獨立區塊外層,與上一個區塊推開 50px 的舒適微距 */
803.ipork-snack-section {
804    background-color: #ffffff !important;
805    padding: 50px 20px 40px 20px !important;
806    width: 100% !important;
807    box-sizing: border-box !important;
808    font-family: "PingFang TC", "Heiti TC", "Microsoft JhengHei", sans-serif !important;
809}
810
811/* 上半部:解饞主題標題組 CSS */
812.ipork-snack-header {
813    text-align: center !important;
814    margin-bottom: 50px !important;
815}
816
817.ipork-snack-header h2 {
818    color: #333333 !important;
819    font-size: 28px !important;
820    font-weight: bold !important;
821    letter-spacing: 2px !important;
822    margin: 0 auto 15px auto !important;
823    display: table !important;
824    position: relative !important;
825}
826
827/* 完美復刻:第二區塊專屬品牌桃紅精緻下襯線 */
828.ipork-snack-header h2::after {
829    content: '' !important;
830    display: block !important;
831    width: 45px !important;
832    height: 3px !important;
833    background-color: #b51a63 !important;
834    margin: 12px auto 0 auto !important;
835    border-radius: 2px !important;
836}
837
838.ipork-snack-header p {
839    color: #777777 !important;
840    font-size: 15px !important;
841    font-weight: normal !important;
842    letter-spacing: 1px !important;
843    margin: 15px 0 0 0 !important;
844    line-height: 1.6 !important;
845}
846
847/* 下半部:解饞商品四欄網格排版 */
848.ipork-snack-grid {
849    max-width: 1200px !important;
850    margin: 0 auto !important;
851    display: flex !important;
852    flex-direction: row !important;
853    flex-wrap: nowrap !important;
854    justify-content: space-between !important;
855}
856
857.ipork-snack-item {
858    width: calc((100% - 45px) / 4) !important;
859    box-sizing: border-box !important;
860    display: flex !important;
861    flex-direction: column !important;
862}
863
864/* 商品圖片正方形封裝 */
865.ipork-snack-img {
866    width: 100% !important;
867    aspect-ratio: 1 / 1 !important;
868    overflow: hidden !important;
869    border-radius: 4px !important;
870    background-color: #fcfcfc !important;
871    border: 1px solid #f0f0f0 !important;
872}
873
874.ipork-snack-img img {
875    width: 100% !important;
876    height: 100% !important;
877    object-fit: cover !important;
878    transition: transform 0.5s ease !important;
879}
880
881/* 懸停放大效果 */
882.ipork-snack-img:hover img {
883    transform: scale(1.05) !important;
884}
885
886/* 商品名稱與價格排版 */
887.ipork-snack-info {
888    text-align: center !important;
889    padding-top: 15px !important;
890}
891
892.snack-title {
893    color: #333333 !important;
894    font-size: 15px !important;
895    font-weight: 500 !important;
896    text-decoration: none !important;
897    display: inline-block !important;
898    margin-bottom: 6px !important;
899    transition: color 0.3s ease !important;
900}
901
902.snack-title:hover {
903    color: #b51a63 !important;
904}
905
906.snack-price {
907    color: #555555 !important;
908    font-size: 14px !important;
909    font-weight: bold !important;
910}
911
912/* ==========================================================================
913   RWD 手機/平板自適應防爆
914   ========================================================================== */
915@media (max-width: 992px) {
916    .ipork-snack-grid {
917        flex-wrap: wrap !important;
918    }
919    .ipork-snack-item {
920        width: calc((100% - 15px) / 2) !important;
921        margin-bottom: 25px !important;
922    }
923}
924
925@media (max-width: 768px) {
926    .ipork-snack-header h2 {
927        font-size: 22px !important;
928    }
929    .ipork-snack-header p {
930        font-size: 13px !important;
931        padding: 0 10px !important;
932    }
933}
934</style></div> <center> <div id="banner2" class="banner" > </div> </center> <div class="flipper_wrap clearfix"> <!-- ==========================================================================
935   【愛不是手】首頁專用 - 品牌故事精簡導讀區塊 (首頁全域置中對齊優化版)
936   ========================================================================== --> <div class="index-brand-story-teaser"> <div class="teaser-container-luxury"><!-- 左側:精選形象圖區塊 --> <div class="teaser-image-block"><img alt="愛不是手 創辦人玉霜姐市場攤位" class="lazy-loading-img" onerror="imgError(this);" src="https://image-cdn-flare.qdm.cloud/q6a5dd2e0d87d6/image/data/2026/06/04/592ef719288d095a9e0d6405d7da2221.jpg" /></div> <!-- 右側:動人導讀與看更多按鈕 --> <div class="teaser-text-block"><span class="teaser-top-tag">
936BRAND STORY</span> <h2 class="teaser-main-title">愛不是手 | 品牌故事</h2> <div class="teaser-title-line">&nbsp;</div> <p class="teaser-lead-text">每個台灣人的記憶裡,都有一種讓人戒不掉的味道。</p> <p class="teaser-body-text">「愛不是手」的老闆玉霜姐,在父親因傷面臨退休之際,因為捨不得爸爸大半輩子引以為傲的肉乾好手藝就此失傳,毅然決然接下家業。</p> <p class="teaser-body-text">面對父親最初的擔憂與質疑,她用女性特有的細膩與不服輸的堅毅韌性,成功帶領傳統老字號走入精品百貨與現代網路電商。這不僅是一份讓人吃過就愛不釋手的美味,更是一段關於女兒傳承、創新與愛的故事&hellip;&hellip;</p> <!-- 連結已配置優化 --> <div class="teaser-btn-wrapper"><a class="teaser-more-btn" href="https://www.iporkcut.com.tw/pages/4">閱讀完整故事 <i class="btn-arrow">&rarr;</i> </a></div> </div> </div> </div> <!-- 專為首頁品牌故事對齊商品欄位設計的 CSS 樣式表 --> <style type="text/css">/* 首頁 teaser 全域容器(對齊核心:擴大寬度並強制左右自適應居中) */
937.index-brand-story-teaser {
938    width: 100% !important;
939    max-width: 1200px !important; /* 拉大最大寬度,完美對齊上方商品網格線 */
940    margin: 60px auto !important; /* 確保上下有完美的精品呼吸間距,並且左右絕對居中 */
941    padding: 20px 15px !important;
942    background-color: #ffffff !important;
943    font-family: "PingFang TC", "Heiti TC", "Microsoft JhengHei", sans-serif !important;
944    box-sizing: border-box !important;
945}
946
947/* 雙欄並排框架 */
948.teaser-container-luxury {
949    display: flex !important;
950    flex-direction: row !important;
951    align-items: center !important; /* 垂直完美置中 */
952    gap: 55px !important; /* 擴大圖文間距,讓排版更大氣 */
953    background: #ffffff !important;
954    width: 100% !important;
955}
956
957/* 左欄:影像精緻化 */
958.teaser-image-block {
959    flex: 1 !important; 
960    text-align: center !important;
961}
962.teaser-image-block img {
963    width: 100% !important;
964    max-width: 440px !important; /* 配合寬版型微調圖片最大尺寸 */
965    height: auto !important;
966    display: block !important;
967    margin: 0 auto !important;
968    border-radius: 8px !important;
969    box-shadow: 0 4px 25px rgba(0, 0, 0, 0.05) !important;
970}
971
972/* 右欄:文字與內容編排 */
973.teaser-text-block {
974    flex: 1.1 !important;
975    text-align: left !important; /* 內文精準靠左齊頭 */
976    display: flex !important;
977    flex-direction: column !important;
978}
979
980/* 小標籤 */
981.teaser-top-tag {
982    font-size: 12px !important;
983    color: #b51a63 !important; 
984    font-weight: bold !important;
985    letter-spacing: 2px !important;
986    margin-bottom: 8px !important;
987}
988
989/* 主標題 */
990.teaser-main-title {
991    font-size: 26px !important; /* 微調放大,在大版型下更醒目 */
992    color: #222222 !important;
993    font-weight: bold !important;
994    margin: 0 0 14px 0 !important;
995    letter-spacing: 1px !important;
996}
997
998/* 標題下襯線 */
999.teaser-title-line {
1000    width: 45px !important;
1001    height: 3px !important;
1002    background-color: #b51a63 !important;
1003    border-radius: 2px !important;
1004    margin-bottom: 24px !important;
1005}
1006
1007/* 懸念引導句 */
1008.teaser-lead-text {
1009    font-size: 16.5px !important;
1010    color: #b51a63 !important;
1011    font-weight: bold !important;
1012    margin: 0 0 14px 0 !important;
1013    line-height: 1.6 !important;
1014}
1015
1016/* 導讀內文正文 */
1017.teaser-body-text {
1018    font-size: 15px !important;
1019    color: #444444 !important;
1020    line-height: 1.75 !important;
1021    margin: 0 0 14px 0 !important;
1022    text-align: justify !important;
1023}
1024.teaser-body-text:last-of-type {
1025    margin-bottom: 30px !important; 
1026}
1027
1028/* 按鈕定位控制 */
1029.teaser-btn-wrapper {
1030    text-align: left !important;
1031}
1032
1033/* 奢華專櫃質感「看更多」按鈕 */
1034.teaser-more-btn {
1035    display: inline-block !important;
1036    background-color: #b51a63 !important;
1037    color: #ffffff !important;
1038    font-size: 14.5px !important;
1039    font-weight: bold !important;
1040    padding: 11px 32px !important;
1041    border-radius: 4px !important;
1042    text-decoration: none !important;
1043    letter-spacing: 1px !important;
1044    box-shadow: 0 3px 12px rgba(181, 26, 99, 0.2) !important;
1045    transition: all 0.3s ease !important;
1046}
1047.teaser-more-btn:hover {
1048    background-color: #93124e !important; 
1049    box-shadow: 0 5px 18px rgba(181, 26, 99, 0.3) !important;
1050    transform: translateY(-1px) !important;
1051}
1052.btn-arrow {
1053    display: inline-block !important;
1054    transition: transform 0.3s ease !important;
1055    margin-left: 5px !important;
1056}
1057.teaser-more-btn:hover .btn-arrow {
1058    transform: translateX(4px) !important; 
1059}
1060
1061/* ==========================================================================
1062   RWD 手機端首頁自動最佳化排版
1063   ========================================================================== */
1064@media (max-width: 768px) {
1065    .index-brand-story-teaser {
1066        padding: 15px 10px !important;
1067        margin: 30px auto !important;
1068    }
1069    .teaser-container-luxury {
1070        flex-direction: column !important; /* 手機端自動轉為上下垂直排版 */
1071        gap: 25px !important;
1072    }
1073    .teaser-image-block, 
1074    .teaser-text-block {
1075        width: 100% !important;
1076        flex: none !important;
1077    }
1078    .teaser-main-title {
1079        font-size: 21px !important;
1080    }
1081    .teaser-lead-text {
1082        font-size: 15px !important;
1083    }
1084    .teaser-body-text {
1085        font-size: 14px !important;
1086    }
1087    .teaser-btn-wrapper {
1088        text-align: center !important;
1089    }
1090    .teaser-more-btn {
1091        width: 85% !important;
1092        padding: 12px 0 !important;
1093        text-align: center !important;
1094    }
1095}
1096</style></div> </section> </div> </section> </div> </div> <!-- .container-inner --> </div> <!-- .container --> </div> <!-- #content_wrapper --> <input type="hidden" id="ga_utm_source" name="ga_utm_source" value=""> <input type="hidden" id="ga_utm_medium" name="ga_utm_medium" value=""> <input type="hidden" id="ga_utm_campaign" name="ga_utm_campaign" value=""> <footer id="footer" class="clearfix  "> <div class="footer-inner"> <!-- ==========================================================================
1097   【愛不是手】全自訂專業頁尾區塊 (第一版桌機還原・手機版 FB 隱藏清爽 3 欄版)
1098   ========================================================================== --> <div class="custom-site-footer"> <div class="footer-main-container"><!-- 欄位 1:商店訊息 --> <div class="footer-links-column"> <h4>商店訊息</h4> <ul> <li><a href="https://www.iporkcut.com.tw/pages/4">關於我們</a></li> <li><a href="/categories/暢銷商品">暢銷商品</a></li> <li><a href="/categories/特賣商品">特賣商品</a></li> </ul> </div> <!-- 欄位 2:客戶服務 --> <div class="footer-links-column"> <h4>客戶服務</h4> <ul> <li><a href="https://www.iporkcut.com.tw/shop/contact">商店留言板</a></li> <li><a href="https://www.iporkcut.com.tw/about/policy">商品退/換貨</a></li> <li><a href="/pages/remittance-form">填寫匯款單</a></li> <li><a href="https://www.iporkcut.com.tw/member/order">快速查訂單</a></li> </ul> </div> <!-- 欄位 3:會員中心 --> <div class="footer-links-column"> <h4>會員中心</h4> <ul> <li><a href="https://www.iporkcut.com.tw/member/member">會員中心</a></li> <li><a href="https://www.iporkcut.com.tw/member/order">訂購紀錄</a></li> </ul> </div> <!-- 欄位 4:右側 手製高質感臉書極簡小徽章 (電腦版完美顯現,手機版專屬隱藏) --> <div class="footer-fb-column"> <div class="fb-badge-wrapper"> <div class="fb-badge-top"> <div class="fb-badge-logo"><img alt="愛不是手肉乾" onerror="imgError(this);" src="https://graph.facebook.com/iporkcut/picture?type=large" /></div> <div class="fb-badge-text"><a class="fb-badge-title" href="https://www.facebook.com/iporkcut" target="_blank" rel="noopener noreferrer nofollow">愛不是手肉乾</a> <div class="fb-badge-fans">1.1 萬 位追蹤者</div> </div> </div> <div class="fb-badge-bottom"><a class="fb-btn-follow" href="https://www.facebook.com/iporkcut" target="_blank" rel="noopener noreferrer nofollow"><svg viewbox="0 0 24 24"><path d="M12 2.04c-5.5 0-10 4.49-10 10.02c0 5 3.66 9.15 8.44 9.9v-7H7.9v-2.9h2.54V9.85c0-2.51 1.49-3.89 3.78-3.89c1.09 0 2.23.19 2.23.19v2.46h-1.26c-1.24 0-1.63.77-1.63 1.56v1.88h2.78l-.45 2.9h-2.33v7a10 10 0 0 0 8.44-9.9c0-5.53-4.5-10.02-10-10.02Z" fill="currentColor"></path></svg> 追蹤粉絲專頁 </a> <a class="fb-btn-share" href="https://www.facebook.com/sharer/sharer.php?u=https://www.iporkcut.com.tw/" target="_blank"> <svg viewbox="0 0 24 24">
1098<path d="M18.08 12.74c-.72 0-1.37.32-1.83.83l-5.34-2.83a2.44 2.44 0 0 0 0-1.48l5.27-2.79c.46.52 1.13.85 1.89.85c1.41 0 2.55-1.14 2.55-2.55c0-1.42-1.14-2.56-2.55-2.56c-1.42 0-2.56 1.14-2.56 2.56c0 .25.04.49.1.71L10.29 8.27c-.46-.51-1.12-.83-1.87-.83c-1.41 0-2.55 1.14-2.55 2.56c0 1.41 1.14 2.55 2.55 2.55c.76 0 1.42-.32 1.88-.84l5.34 2.83c-.06.21-.09.44-.09.68c0 1.41 1.14 2.55 2.55 2.55c1.41 0 2.56-1.14 2.56-2.55c0-1.42-1.15-2.56-2.56-2.56Z" fill="currentColor"></path></svg> 分享 </a></div> </div> </div> </div> </div> <!-- 專屬精密優化樣式表 --> <style type="text/css">/* ==========================================================================
1099   第一版桌機樣式:還原大氣排版
1100   ========================================================================== */
1101.custom-site-footer {
1102    background-color: #ffffff !important;
1103    padding: 60px 20px 50px 20px !important; 
1104    border-top: 1px solid #f0f0f0 !important;
1105    width: 100% !important;
1106    box-sizing: border-box !important;
1107    font-family: "PingFang TC", "Heiti TC", "Microsoft JhengHei", sans-serif !important;
1108    display: block !important;
1109    margin-bottom: 0 !important; 
1110}
1111
1112.footer-main-container {
1113    max-width: 1200px !important;
1114    margin: 0 auto !important;
1115    display: flex !important;
1116    flex-direction: row !important;
1117    flex-wrap: nowrap !important; 
1118    justify-content: space-between !important;
1119    align-items: flex-start !important;
1120}
1121
1122.footer-links-column {
1123    width: calc((100% - 390px - 60px) / 3) !important;
1124    min-width: 140px !important;
1125    box-sizing: border-box !important;
1126}
1127
1128.footer-fb-column {
1129    width: 360px !important;
1130    flex-shrink: 0 !important;
1131}
1132
1133.footer-links-column h4 {
1134    color: #333333 !important;
1135    font-size: 16px !important;
1136    font-weight: bold !important;
1137    margin: 0 0 20px 0 !important;
1138    letter-spacing: 1px !important;
1139}
1140
1141.footer-links-column ul {
1142    list-style: none !important;
1143    padding: 0 !important;
1144    margin: 0 !important;
1145}
1146
1147.footer-links-column li {
1148    margin-bottom: 12px !important;
1149}
1150
1151.footer-links-column a {
1152    color: #666666 !important;
1153    font-size: 14px !important;
1154    text-decoration: none !important;
1155    transition: color 0.3s ease !important;
1156    display: inline-block !important;
1157}
1158
1159.footer-links-column a:hover {
1160    color: #b51a63 !important;
1161}
1162
1163.fb-badge-wrapper {
1164    background: #ffffff !important;
1165    border: 1px solid #e9ebee !important;
1166    box-sizing: border-box !important;
1167    width: 100% !important;
1168    padding: 0 !important;
1169}
1170
1171.fb-badge-top {
1172    display: flex !important;
1173    padding: 12px !important;
1174    background: #ffffff !important;
1175    align-items: center !important;
1176}
1177
1178.fb-badge-logo {
1179    width: 50px !important;
1180    height: 50px !important;
1181    border: 1px solid #d3d3d3 !important;
1182    padding: 0 !important;
1183    background: #ffffff !important;
1184    flex-shrink: 0 !important;
1185    overflow: hidden !important;
1186}
1187
1188.fb-badge-logo img {
1189    width: 100% !important;
1190    height: 100% !important;
1191    object-fit: cover !important;
1192}
1193
1194.fb-badge-text {
1195    margin-left: 12px !important;
1196}
1197
1198.fb-badge-title {
1199    color: #365899 !important; 
1200    font-size: 18px !important;
1201    font-weight: bold !important;
1202    text-decoration: none !important;
1203    display: block !important;
1204    margin-bottom: 2px !important;
1205}
1206
1207.fb-badge-fans {
1208    color: #4b4f56 !important;
1209    font-size: 13px !important;
1210}
1211
1212.fb-badge-bottom {
1213    background: #f5f6f7 !important;
1214    border-top: 1px solid #e9ebee !important;
1215    padding: 8px 12px !important;
1216    display: flex !important;
1217    justify-content: space-between !important;
1218    align-items: center !important;
1219}
1220
1221.fb-badge-bottom a {
1222    background: #f5f6f7 !important;
1223    border: 1px solid #ccd0d5 !important;
1224    color: #4b4f56 !important;
1225    font-size: 12px !important;
1226    font-weight: bold !important;
1227    padding: 4px 10px !important;
1228    border-radius: 2px !important;
1229    text-decoration: none !important;
1230    display: inline-flex !important;
1231    align-items: center !important;
1232}
1233
1234.fb-badge-bottom svg {
1235    width: 14px !important;
1236    height: 14px !important;
1237    margin-right: 6px !important;
1238    color: #4267b2 !important;
1239}
1240
1241/* ==========================================================================
1242   手機移動端專用:3 欄緊湊排版,【FB 區塊物理蒸發隱藏】
1243   ========================================================================== */
1244@media (max-width: 1100px) {
1245    .footer-main-container { flex-wrap: wrap !important; }
1246    .footer-links-column { width: calc((100% - 380px) / 2) !important; margin-bottom: 25px !important; }
1247}
1248
1249@media (max-width: 768px) {
1250    .custom-site-footer {
1251        padding: 20px 15px !important; 
1252    }
1253
1254    .footer-main-container { 
1255        display: flex !important; 
1256        flex-direction: column !important;
1257        gap: 0 !important; 
1258    }
1259
1260    /* 關鍵字:在手機版直接將整個 FB 欄位從畫面上抹除 */
1261    .footer-fb-column {
1262        display: none !important;
1263    }
1264
1265    .footer-links-column { 
1266        width: 100% !important; 
1267        display: block !important; 
1268        margin-bottom: 0 !important; 
1269        margin-top: 0 !important;
1270        padding-right: 0 !important;
1271    }
1272
1273    /* 3 個文字標題高度收緊 */
1274    .footer-links-column h4 {
1275        position: relative !important;
1276        display: block !important;
1277        margin: 0 !important;
1278        padding-top: 7px !important;   
1279        padding-bottom: 7px !important;
1280        padding-right: 40px !important;
1281        line-height: 1.2 !important;
1282        border-bottom: 1px solid #eaeaea !important; 
1283        font-size: 15px !important;
1284        color: #222222 !important;
1285        font-weight: bold !important;
1286        cursor: pointer !important;
1287        -webkit-tap-highlight-color: transparent !important;
1288    }
1289
1290    /* 下拉指示小箭頭 ▼ */
1291    .footer-links-column h4::after {
1292        content: '▼' !important;
1293        position: absolute !important;
1294        right: 10px !important;
1295        top: 50% !important;
1296        transform: translateY(-50%) scale(0.75) !important;
1297        font-size: 11px !important;
1298        color: #b51a63 !important; 
1299        transition: transform 0.2s ease !important;
1300    }
1301
1302    /* 展開時的箭頭 ▲ */
1303    .footer-links-column h4.is-expanded::after {
1304        transform: translateY(-50%) scale(0.75) rotate(180deg) !important;
1305        color: #333333 !important;
1306    }
1307
1308    /* 未開啟時隱藏選單,消滅空白 */
1309    .footer-links-column ul {
1310        display: none !important;
1311        max-height: 0px !important;
1312        overflow: hidden !important;
1313        opacity: 0 !important;
1314        margin: 0 !important;
1315        padding-left: 10px !important;
1316    }
1317
1318    .footer-links-column li {
1319        padding-top: 5px !important;
1320        padding-bottom: 5px !important;
1321        margin: 0 !important;
1322    }
1323}
1324</style> <!-- ==========================================================================
1325   純粹 3 欄式精準開合智慧監聽腳本
1326   ========================================================================== -->
1326<script type="text/javascript">
1327document.addEventListener("DOMContentLoaded", function() {
1328    function initClean3ColumnAccordion() {
1329        if (window.innerWidth > 768) return; 
1330
1331        // 只抓取 3 個文字清單欄位
1332        var columns = document.querySelectorAll('.footer-links-column');
1333
1334        columns.forEach(function(column) {
1335            var title = column.querySelector('h4');
1336            var list = column.querySelector('ul');
1337            
1338            if (!title || !list) return;
1339
1340            title.removeEventListener('click', handleFooterToggle);
1341            title.addEventListener('click', handleFooterToggle);
1342            
1343            function handleFooterToggle(e) {
1344                e.preventDefault();
1345                e.stopPropagation();
1346
1347                var isOpen = title.classList.contains('is-expanded');
1348
1349                // 1. 全域重設:先收回所有人的空間
1350                columns.forEach(function(c) {
1351                    var h = c.querySelector('h4');
1352                    var u = c.querySelector('ul');
1353                    if (h) h.classList.remove('is-expanded');
1354                    if (u) {
1355                        u.style.maxHeight = "0px";
1356                        u.style.opacity = "0";
1357                        u.style.setProperty ? u.style.setProperty('display', 'none', 'important') : (u.style.display = 'none');
1358                    }
1359                });
1360
1361                // 2. 獨立開啟點選的這一組
1362                if (!isOpen) {
1363                    title.classList.add('is-expanded');
1364                    list.style.setProperty ? list.style.setProperty('display', 'block', 'important') : (list.style.display = 'block');
1365                    list.style.maxHeight = "none"; 
1366                    list.style.opacity = "1";
1367                    list.style.paddingTop = "5px";
1368                    list.style.paddingBottom = "10px";
1369                }
1370            }
1371        });
1372    }
1373
1374    initClean3ColumnAccordion();
1375    setTimeout(initClean3ColumnAccordion, 400);
1376});
1377</script>
1377 </div> <div class="footer-bottom container  "> <div id="footer-copyright" class="row-fluid"> <div id="payment-logo-list" class="pl-container"> <div class="pl-row"> </div> </div> <div id="copy"> <p>Copyright ©2026 愛不是手★肉乾</p> <!--googleoff: index--><span style="display:none;">q6a5dd2e0d87d6</span><!--googleon: index--> </div> <div id="qdm-copy"><a href='https://www.iporkcut.com.tw/googlebase.xml' title="RSS" target='blank'><i class="fa fa-rss"></i></a><a href='https://www.iporkcut.com.tw/sitemap'>網站地圖</a></div> </div> </div> </footer> <!-- #footer --> 
1377<script src="https://cdn.qdm.cloud/assets/js/LAB.min.js"></script>
1377 
1377<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
1377 
1377<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-migrate/1.4.1/jquery-migrate.min.js"></script>
1377 
1377<script type="text/javascript">	
1378			
1379			$(document).ready(function() {
1380				var j = 0;
1381				var delay = 3000; 
1382				function cycleStickyBarTop(){
1383					var jmax = $(".sticky-bar-top .sticky-bar-content").length -1;
1384					if(jmax > 0){
1385						$(".sticky-bar-top .sticky-bar-content:eq(" + j + ")")
1386						.animate({"opacity" : "1","z-index":"9998"} ,400)
1387						.animate({"opacity" : "1","z-index":"9998"}, delay)
1388						.animate({"opacity" : "0","z-index":"9"}, 400, function(){
1389							(j == jmax) ? j=0 : j++;
1390							cycleStickyBarTop();
1391						});
1392					}else{
1393						$(".sticky-bar-top .sticky-bar-content:eq(" + j + ")")
1394						.animate({"opacity" : "1","z-index":"9998"}, delay)
1395					}
1396				};
1397				cycleStickyBarTop();
1398				
1399				var i = 0;
1400				function cycleStickyBarBottom(){
1401					var imax = $(".sticky-bar-bottom .sticky-bar-content").length -1;
1402					if(imax > 0){
1403						$(".sticky-bar-bottom .sticky-bar-content:eq(" + i + ")")
1404						.animate({"opacity" : "1","z-index":"9998"} ,400)
1405						.animate({"opacity" : "1","z-index":"9998"}, delay)
1406						.animate({"opacity" : "0","z-index":"9"}, 400, function(){
1407							(i == imax) ? i=0 : i++;
1408							cycleStickyBarBottom();
1409						});
1410					}else{
1411						$(".sticky-bar-bottom .sticky-bar-content:eq(" + i + ")")
1412						.animate({"opacity" : "1","z-index":"9998"}, delay)
1413					}
1414					
1415				};
1416				cycleStickyBarBottom();
1417				
1418				var k = 0;
1419				function cycleStickyBarTopMobile(){
1420					var kmax = $(".mobile-sticky-bar-top .sticky-bar-content").length -1;
1421					if(kmax > 0){
1422						$(".mobile-sticky-bar-top .sticky-bar-content:eq(" + k + ")")
1423						.animate({"opacity" : "1","z-index":"9998"} ,400)
1424						.animate({"opacity" : "1","z-index":"9998"}, delay)
1425						.animate({"opacity" : "0","z-index":"9"}, 400, function(){
1426							(k == kmax) ? k=0 : k++;
1427							cycleStickyBarTopMobile();
1428						});
1429					}else{
1430						$(".mobile-sticky-bar-top .sticky-bar-content:eq(" + k + ")")
1431						.animate({"opacity" : "1","z-index":"9998"}, delay)
1432					}
1433				};
1434				cycleStickyBarTopMobile();
1435				
1436				//COUNTDOWN TIMER
1437				$(".sticky-bar-countdown").each(function(){
1438					
1439					var sticky_bar_date = $(this).attr("data-countdown-date").replace(/-/g,'/');
1440					var sticky_bar_countdown_id = $(this).attr("id");
1441					var countDownDate = new Date(sticky_bar_date).getTime();
1442
1443					var x = setInterval(function() {
1444					
1445						var now = new Date().getTime();
1446						
1447						var distance = countDownDate - now;
1448						
1449						var days = Math.floor(distance / (1000 * 60 * 60 * 24));
1450						var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
1451						var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
1452						var seconds = Math.floor((distance % (1000 * 60)) / 1000);
1453						
1454						if(hours<10){
1455							var hours1 = "0"+hours;
1456						}else{
1457							var hours1 = hours;
1458						}
1459						if(minutes<10){
1460							var minutes1 = "0"+minutes;
1461						}else{
1462							var minutes1 = minutes;
1463						}
1464						if(seconds<10){
1465							var seconds1 = "0"+seconds;
1466						}else{
1467							var seconds1 = seconds;
1468						}
1469						
1470						if( $("#" + sticky_bar_countdown_id).length ) {
1471							document.getElementById(sticky_bar_countdown_id).innerHTML = " "+days+ " DAY " + hours1 + ": "
1472						+ minutes1 + ": " + seconds1 + " ";
1473						}
1474						
1475						if (distance < 0) {
1476							clearInterval(x);
1477							//document.getElementById(sticky_bar_countdown_id).innerHTML = "-";
1478							$("#"+sticky_bar_countdown_id).remove();
1479						}
1480					}, 1000);
1481					
1482				 });
1483				
1484			});
1485			 
1486			jQuery.ajaxPrefilter( function( s ) {
1487				if ( s.crossDomain ) {
1488					s.contents.script = false;
1489				}
1490			});
1491			
1492			var loc = window.location.href, index = loc.indexOf('#');
1493			if (index > 0) {
1494				try {
1495					var urlHash = loc.split("#")[1];
1496					if( urlHash ) {
1497						if( $('#' + urlHash).length ) {
1498							$('html,body').animate({
1499								scrollTop: $('#' + urlHash).offset().top
1500							}, 1200);
1501						} else {
1502							window.location = loc.substring(0, index) + "&" + loc.substring(index+1);
1503						}
1504					}
1505				} catch(err) { }
1506			}
1507			
1508			var readyInitPage = 1;
1509			var doAdjust = true;
1510			var doAdjustCounter = 0;
1511			var jsLoadTimeout = null;
1512			var previousWidth = 0;
1513			var maxHeight = 0;
1514			var flipper_random_status = 0;
1515			var float_banner_count = 0;
1516			var lazy = 1;
1517			var transInitial = -280;
1518			var mDistance = 0;
1519					
1520			if (window!= top) top.location.href = location.href;
1521			
1522			//20210713 add menu url target
1523			 $(".pushy-submenu button span").click(function(){
1524				if($(this).attr("target")){
1525					$(this).removeClass("pushy-submenu-parent");
1526					if($(this).parents("li").hasClass("pushy-submenu-open")){
1527						window.open($(this).data("url"),"_blank");
1528					}
1529				}
1530			});
1531
1532			$(".pushy-menu-storename span").click(function(){
1533				$("#myBody").removeClass("pushy-open-left");
1534			});
1535			
1536			function getScript(url,success){
1537			var script = document.createElement('script');
1538			script.type = 'text/javascript';
1539			script.src = url;
1540			var head=document.getElementsByTagName('head')[0], done=false;
1541			script.onload=script.onreadystatechange = function(){
1542			  if ( !done && (!this.readyState || this.readyState == 'loaded' || this.readyState == 'complete') ) {
1543				done=true;
1544				success();
1545				script.onload = script.onreadystatechange = null;
1546				head.removeChild(script);
1547			  }
1548			};
1549			head.appendChild(script);
1550			}
1551						
1552			function getParams(a){var b=document.getElementsByTagName("script");for(var i=0;i<b.length;i++){if(b[i].src.indexOf("/"+a)>-1){var c=b[i].src.split("?").pop().split("&");var p={};for(var j=0;j<c.length;j++){var d=c[j].split("=");p[d[0]]=d[1]}return p}}return{}}
1553			
1554			function adjustBoxHeights() {
1555				maxHeight1 = 270;
1556				maxHeight2 = 270;
1557				maxHeight3 = 270;
1558				maxHeight4 = 270;
1559				maxHeight5 = 270;
1560				
1561				$('.content-top .product-box > div').each(function(){
1562					$(this).height('auto');
1563					if (maxHeight2 < $(this).height()) { maxHeight2 = $(this).height(); }
1564				});
1565				$('.content-top .product-box > div').each(function(){
1566					if( maxHeight2 ) {
1567						$(this).height(maxHeight2);
1568					}
1569				});
1570				
1571				$('.content-bottom .product-box > div').each(function(){
1572					$(this).height('auto');
1573					if (maxHeight3 < $(this).height()) { maxHeight3 = $(this).height(); }
1574				});
1575				$('.content-bottom .product-box > div').each(function(){
1576					if( maxHeight3 ) {
1577						$(this).height(maxHeight3);
1578					}
1579				});
1580				
1581				$('.product-grid > div').each(function(){
1582					var img_src = $(this).find(".image img[src]").attr("src");
1583					try {
1584						var img_src_ext = img_src.split('.').pop().toLowerCase();
1585					} catch(err) {
1586						img_src_ext = "";
1587					}
1588					$(this).height('auto');
1589					if( $( "#myBody" ).hasClass("product-category") ){
1590						img_src_ext = "";
1591					}
1592					if( img_src_ext != "gif" ) {
1593						if (maxHeight1 < $(this).height()) { maxHeight1 = $(this).height(); }
1594					} else {
1595						$(this).addClass("gif-tag");
1596					}
1597				});
1598				var img_gif_height = 0;
1599				$('.product-grid > div').each(function(){
1600					var img_src = $(this).find(".image img[src]").attr("src");
1601					try {
1602						var img_src_ext = img_src.split('.').pop().toLowerCase();
1603					} catch(err) {
1604						img_src_ext = "";
1605					}
1606					if( maxHeight1 ){
1607						$(this).height(maxHeight1);
1608						if( img_src_ext != "gif" ) {
1609							img_gif_height = $(this).find(".image img").height();
1610						}
1611					}
1612				});
1613				$('.product-grid > div.gif-tag').attr("style","");
1614				if( img_gif_height ) {
1615					$('.product-grid > div.gif-tag').find(".image img").attr("style","height:" + img_gif_height + "px;width:auto;");
1616				}
1617				
1618				$('.box-content').each(function(index,elmain){
1619					$(elmain).find('.product-box').each(function(index,el){
1620						maxHeight1 = 0;
1621						$(el).find('.grid-box').each(function(index,el2){
1622							$(el2).height('auto');
1623						});
1624						$(el).find('.grid-box .inner').each(function(index,el2){
1625							if (maxHeight1 < $(el2).height()) { maxHeight1 = $(el2).height(); }
1626						});
1627						maxHeight1 = maxHeight1 + 18;
1628						$(el).find('.grid-box').each(function(index,el2){
1629							if( maxHeight1 ) {
1630								$(el2).height(maxHeight1);
1631							}
1632						});
1633					});
1634				});
1635				
1636				$('#related-products').each(function(index,elmain){
1637					$(elmain).imagesLoaded(function(){
1638						$(this).find('.product-box').each(function(index,el){
1639							maxHeight1 = 0;
1640							$(el).find('.grid-box').each(function(index,el2){
1641								$(el2).height('auto');
1642							});
1643							$(el).find('.grid-box .inner').each(function(index,el2){
1644								if (maxHeight1 < $(el2).height()) { maxHeight1 = $(el2).height(); }
1645							});
1646							maxHeight1 = maxHeight1 + 36;
1647							if( maxHeight1 < 220 ) maxHeight1 = 220;
1648							if( !is.mobile() ) {
1649								if( maxHeight1 < 340 ) maxHeight1 = 340;
1650							}
1651							$(el).find('.grid-box').each(function(index,el2){
1652								if( maxHeight1 ) {
1653									$(el2).height(maxHeight1);
1654								}
1655							});
1656						});
1657					});
1658				});
1659				
1660				$('.content-bottom #related-products').each(function(index,elmain){
1661					var contentset_height = parseInt($('.content-bottom #related-products .contentset').height());
1662					if( contentset_height ) contentset_height = contentset_height + 70;
1663					$(elmain).imagesLoaded(function(){
1664						$(this).find('.product-box').each(function(index,el){
1665							maxHeight1 = 0;
1666							$(el).find('.grid-box').each(function(index,el2){
1667								$(el2).height('auto');
1668							});
1669							$(el).find('.grid-box .inner').each(function(index,el2){
1670								if (maxHeight1 < $(el2).height()) { maxHeight1 = $(el2).height(); }
1671							});
1672							maxHeight1 = maxHeight1 + 36 + contentset_height;
1673							if( maxHeight1 < 220 ) maxHeight1 = 220;
1674							if( !is.mobile() ) {
1675								if( maxHeight1 < 340 ) maxHeight1 = 340;
1676							}
1677							$(el).find('.grid-box').each(function(index,el2){
1678								if( maxHeight1 ) {
1679									$(el2).height(maxHeight1);
1680								}
1681							});
1682						});
1683					});
1684				});
1685				
1686				$('.any-products').each(function(index,el){
1687					
1688					if(is.mobile()){
1689						$(el).find(".grid-box").attr("style","");
1690					}
1691					
1692					maxHeight5 = 0;
1693					$(el).find('.any-box > div').each(function(index,el2){
1694						$(el2).height('auto');
1695						if (maxHeight5 < $(el2).height()) { maxHeight5 = $(el2).height(); }
1696					});
1697					$(el).find('.any-box > div').each(function(index,el2){
1698						if( maxHeight5 ) {
1699							$(el2).height(maxHeight5);
1700						}
1701					});
1702					$(el).find('.grid-box > .inner').each(function(index,el2){
1703						$(el2).css("display", "block");
1704					});
1705				});
1706			}
1707			
1708			var supportsNatural = ( "naturalWidth" in (new Image()) );
1709			
1710			function initDeferImages() {
1711				[].forEach.call(document.querySelectorAll('img[data-src]'), function(img) {
1712					img.setAttribute('src', img.getAttribute('data-src'));
1713					img.onload = function() {
1714						this.removeAttribute('data-src');
1715						if (this.style.opacity !== undefined) {
1716							this.style.opacity = 1;
1717						}
1718						var naturalWidth = supportsNatural ? this.naturalWidth : $(this).width();
1719						if( naturalWidth == 0 ) {
1720							this.src += '?timestamp=' + new Date().getTime();
1721						}
1722					};
1723				});
1724				$(".grid-box img,.product-row img").each(function(){
1725					var _this = $(this);
1726					_this.imagesLoaded(function(){
1727						_this.animate({opacity: 1.0}, 100);
1728						_this.closest('.grid-box').find('.onsale').removeClass("hidden");
1729						_this.closest('.grid-box').find('.name').removeClass("hidden");
1730						_this.closest('.grid-box').find('.price').removeClass("hidden");
1731						_this.closest('.grid-box').find('.label-important').removeClass("hidden");
1732						_this.closest('.grid-box').find('.load-thumb-conver').remove();
1733						_this.closest('.product-row').find('.load-thumb-conver').remove();
1734						try { 
1735							if (typeof _this.data('flipper') !== 'undefined') {
1736								_this.flipper(); 
1737							}
1738						} catch(err) { }
1739						_this.height('auto');
1740						if( (lazy == $(".grid-box img").length) ) { adjustBoxHeights(); }
1741						lazy++;
1742					});
1743				});
1744			}
1745			
1746			function updateCartProductCount() {
1747				$.get("index.php?route=module/cart/GetProductTotal", function(data) {
1748					$("#shopping-cart-list .badge").html(data);
1749					if(data>0){
1750						$("#shopping-cart-list .badge").removeClass("hidden");
1751						$("#shopping-cart-list .badge").removeClass("animated");
1752						$("#shopping-cart-list .badge").addClass("animated bounce");
1753					} else {
1754						$("#shopping-cart-list .badge").addClass("hidden");
1755					}
1756				});
1757			}
1758			
1759			function updateQuantityByProductKey(key, quantity) {
1760				quantity = typeof(quantity) != 'undefined' ? quantity : 1;
1761				$.ajax({
1762					url: 'index.php?route=checkout/cart/updateProductQuantity',
1763					type: 'post',
1764					data: { 'quantity':quantity, 'key': key },
1765					dataType: 'json',
1766					success: function(json) {
1767						$.get( "index.php?route=module/cart/list", function( data ) {
1768							$(".slidePanel .slidePanel-content").html(data);
1769							updateCartProductCount();
1770						});
1771					}
1772				});
1773			}
1774			
1775			function removeProductFromSideCart(key, idx) {
1776				//var newkey = encodeURIComponent(key);
1777				var newkey = key;
1778				$.get("index.php?route=module/cart&remove=" + newkey, function(data) {
1779					$.get( "index.php?route=module/cart/list", function( data ) {
1780						$(".slidePanel .slidePanel-content").html(data);
1781						updateCartProductCount();
1782					});
1783				});
1784				$("#producr-list-" + idx).fadeOut(1200, function() { $(this).remove(); });
1785				return false;
1786			}
1787			
1788			function openSideCart(ta_product_id){
1789				var slidePanelVisible = $(".slidePanel").hasClass("slidePanel-show");
1790				if( slidePanelVisible ) {
1791					$("#content-wrapper").off("click");
1792					$.slidePanel.hide();
1793				} else {
1794					updateCartProductCount();
1795										$.slidePanel.show({
1796						url: 'index.php?route=module/cart/list'
1797					}, {
1798						direction: "left",
1799						duration: '500',
1800						mouseDrag: false,
1801						touchDrag: false,
1802						pointerDrag: false,
1803						loading: {
1804							template: function(options) {
1805								return '<div class="' + options.classes.loading + '"><div class="spinner"><i class="fa fa-circle-o-notch fa-spin fa-3x fa-fw"></i><span class="sr-only">Loading...</span></div></div>';
1806							}
1807						}
1808					});
1809					$("#content-wrapper").on('click', function(event) {
1810						$("#content-wrapper").off("click");
1811						$.slidePanel.hide();
1812						event.preventDefault();
1813						event.stopPropagation();
1814						
1815						var t_url = location.href; 
1816						var c_url = "https://www.iporkcut.com.tw/cart";
1817						
1818						if(t_url == c_url){
1819							location.reload();
1820						}
1821						
1822					});
1823					$(".fancybox-product").on('click', function(event) {
1824						$.slidePanel.hide();
1825						event.preventDefault();
1826						event.stopPropagation();
1827						
1828						var t_url = location.href; 
1829						var c_url = "https://www.iporkcut.com.tw/cart";
1830						
1831						if(t_url == c_url){
1832							location.reload();
1833						}
1834						
1835					});
1836									}
1837			}
1838			
1839			function gaTrackAddToCart(page, product_ids) {
1840				
1841				product_ids.forEach(function(item){
1842					
1843					try {
1844					
1845						// UA
1846						dataLayer.push({
1847						  'event': 'addToCart',
1848						  'ecommerce': {
1849							'currencyCode': '',
1850							'add': {
1851							  'products': [{
1852								'name': item.p_name,
1853								'id': item.p_id,
1854								'price': item.p_prices,
1855								'quantity': item.p_qty
1856							   }]
1857							}
1858						  }
1859						});
1860						
1861						// GA4
1862						dataLayer.push({
1863						  'event': 'add_to_cart',
1864						  'ecommerce': {
1865							'items': [{
1866							  'item_name': item.p_name,
1867							  'item_id': item.p_id,
1868							  'price': item.p_prices,
1869							  'quantity': item.p_qty
1870							}]
1871						  }
1872						});
1873						
1874												
1875										
1876					} catch (e) { }
1877					
1878				});
1879
1880			}
1881
1882			// Defers instant-add until the async-loaded $.fancybox exists, so early
1883			// clicks no longer hit an undefined open() and feel dead. One poller at a
1884			// time, latest click wins - repeated clicks don't stack duplicate opens.
1885			// Keep in sync with common/footer_cart.tpl (same guard for '/cart' URLs).
1886			var _fancyboxPendingCb = null;
1887			var _fancyboxPolling = false;
1888			function whenFancyboxReady(callback){
1889				if (typeof $.fancybox !== 'undefined') { callback(); return; }
1890				_fancyboxPendingCb = callback;   // latest click wins if several arrive while waiting
1891				if (_fancyboxPolling) { return; }
1892				_fancyboxPolling = true;
1893				(function poll(attempt){
1894					if (typeof $.fancybox !== 'undefined') {
1895						_fancyboxPolling = false;
1896						var cb = _fancyboxPendingCb;
1897						_fancyboxPendingCb = null;
1898						if (cb) { cb(); }
1899						return;
1900					}
1901					if (attempt < 50) { setTimeout(function(){ poll(attempt + 1); }, 100); return; }
1902					_fancyboxPolling = false;
1903					_fancyboxPendingCb = null;
1904					if (window.console && console.warn) { console.warn('fancybox not ready after 5s; instant add aborted'); }
1905				})(0);
1906			}
1907
1908			function InstantAddToCart(product_id, quantity, promotion_id, free_present_id){
1909				
1910				if( product_id && quantity ) {
1911					
1912					gecommProductToCart.product_id = product_id;
1913					gecommProductToCart.quantity = quantity;
1914					
1915					try {
1916						
1917						var p_name = $("[data-producttlid='"+product_id+"'] .name [itemprop='name']").html();
1918						var p_prices = $("[data-producttlid='"+product_id+"'] .price[data-price]").data("price");
1919						gecommProductToCart.product_name = p_name;
1920						
1921						gecommProductToCart.price = p_prices;
1922						
1923						// UA
1924						dataLayer.push({
1925						  'event': 'addToCart',
1926						  'ecommerce': {
1927							'currencyCode': '',
1928							'add': {
1929							  'products': [{
1930								'name': p_name,
1931								'id': product_id,
1932								'price': p_prices,
1933								'quantity': quantity
1934							   }]
1935							}
1936						  }
1937						});
1938						
1939						// GA4
1940						dataLayer.push({
1941						  'event': 'add_to_cart',
1942						  'ecommerce': {
1943							'items': [{
1944							  'item_name': p_name,
1945							  'item_id': product_id,
1946							  'price': p_prices,
1947							  'quantity': quantity
1948							}]
1949						  }
1950						});
1951						
1952												
1953												
1954												
1955												
1956												
1957												
1958						
1959						
1960					} catch (e) { }
1961					
1962				}
1963				
1964				$('[data-toggle="tooltip"], .tooltip').tooltip("hide");
1965				
1966				promotion_id = typeof(promotion_id) != 'undefined' ? promotion_id : -1;
1967				free_present_id = typeof(free_present_id) != 'undefined' ? free_present_id : -1;
1968				
1969				if(free_present_id != "-1"){
1970					quantity = $('input[name="quantity"]').val();
1971					quantity = typeof(quantity) != 'undefined' ? quantity : 1;
1972				}
1973				
1974				var price = $('#price-price-block .price-normal').attr('data-content');
1975		
1976				if(typeof(price) === 'undefined') price = $('#price-price-block .price-new').attr('data-content');
1977				
1978				price = typeof(price) != 'undefined' ? price : 0;
1979				
1980				var instantCartSrc = 'https://www.iporkcut.com.tw/index.php?route=product/instant_add&product_id=' + product_id + '&promotion_id=' + promotion_id + '&quantity=' + quantity +'&price=' + price + '&free_present_id=' + free_present_id;
1981
1982				whenFancyboxReady(function(){
1983					try {
1984						$.fancybox.open({
1985							src  : instantCartSrc,
1986							type : 'iframe',
1987							opts : {
1988								openEffect 			: 'none',
1989								closeEffect 		: 'none',
1990								closeClickOutside 	: true,
1991								iframe : { css : { "max-width" : '332px', "width:": '100%' } },
1992								beforeLoad: function() {
1993									$(".fancybox-container").css("zIndex", 999999993);
1994								}
1995							}
1996						});
1997					} catch (e) { }
1998				});
1999			}
2000			
2001			function InstantAddToCart1(product_id, quantity, key_id, type, position){
2002				
2003				product_id = (typeof product_id !== 'undefined') ?  product_id : 0;
2004				quantity = (typeof quantity !== 'undefined') ?  quantity : 1;
2005				key_id = (typeof key_id !== 'undefined') ?  key_id : "-1";
2006				type = (typeof type !== 'undefined') ?  type : "";
2007				position = (typeof position !== 'undefined') ?  position : "";
2008				
2009				if( product_id && quantity ) {
2010					
2011					gecommProductToCart.product_id = product_id;
2012					gecommProductToCart.quantity = quantity;
2013					
2014					try {
2015						
2016						var p_name = $("[data-producttlid='"+product_id+"'] .name [itemprop='name']").html();
2017						var p_prices = $("[data-producttlid='"+product_id+"'] .price[data-price]").data("price");
2018						gecommProductToCart.product_name = p_name;
2019
2020						gecommProductToCart.price = p_prices;
2021						
2022						// UA
2023						dataLayer.push({
2024						  'event': 'addToCart',
2025						  'ecommerce': {
2026							'currencyCode': '',
2027							'add': {
2028							  'products': [{
2029								'name': p_name,
2030								'id': product_id,
2031								'price': p_prices,
2032								'quantity': quantity
2033							   }]
2034							}
2035						  }
2036						});
2037						
2038						// GA4
2039						dataLayer.push({
2040						  'event': 'add_to_cart',
2041						  'ecommerce': {
2042							'items': [{
2043							  'item_name': p_name,
2044							  'item_id': product_id,
2045							  'price': p_prices,
2046							  'quantity': quantity
2047							}]
2048						  }
2049						});
2050						
2051												
2052												
2053												
2054												
2055												
2056												
2057					} catch (e) { }
2058					
2059				}
2060				
2061				$('[data-toggle="tooltip"], .tooltip').tooltip("hide");
2062				
2063				if(type == "promotion"){
2064					var promotion_id = typeof(key_id) != 'undefined' ? key_id : -1;
2065					var send_value = '&promotion_id=' + promotion_id ;
2066				}
2067				
2068				if(type == "present"){
2069					var free_present_id = typeof(key_id) != 'undefined' ? key_id : -1;
2070					
2071					//if(free_present_id > 0){
2072						quantity = $('input[name="quantity"]').val();
2073						quantity = typeof(quantity) != 'undefined' ? quantity : 1;
2074					//}
2075					
2076					var send_value = '&free_present_id=' + free_present_id +'&position=' + position;
2077				}
2078				
2079				if(type == "buytogether"){
2080					var buy_together_id = typeof(key_id) != 'undefined' ? key_id : -1;
2081					
2082					quantity = $('input[name="quantity"]').val();
2083					quantity = typeof(quantity) != 'undefined' ? quantity : 1;
2084					
2085					var send_value = '&buy_together_id=' + buy_together_id +'&position=' + position;
2086				}
2087				
2088				var price = $('#price-price-block .price-normal').attr('data-content');
2089		
2090				if(typeof(price) === 'undefined') price = $('#price-price-block .price-new').attr('data-content');
2091				
2092				price = typeof(price) != 'undefined' ? price : 0;
2093				
2094				
2095				var instantCart1Src = 'index.php?route=product/instant_add&product_id=' + product_id + '&quantity=' + quantity +'&price=' + price +send_value ;
2096
2097				whenFancyboxReady(function(){
2098					try {
2099						$.fancybox.open({
2100							src  : instantCart1Src,
2101							type : 'iframe',
2102							opts : {
2103								closeClickOutside : true,
2104								iframe : { css : { width : '320px' } },
2105								beforeLoad: function() {
2106									$(".fancybox-container").css("zIndex", 999999993);
2107								}
2108							}
2109						});
2110					} catch (e) { }
2111				});
2112			}
2113			
2114			// Debounced mini-cart reload: every module/cart hit rewrites server-side
2115			// cart state, so a burst of reloads can undo a just-added product.
2116			// Keep in sync with common/footer_cart.tpl -- only one footer renders per page
2117			// (common/footer.php picks a single template), so the two copies never collide.
2118			var miniCartReloadTimer = null;
2119			function reloadMiniCart(immediate){
2120				// One shared timer for every caller; immediate only shortens the wait.
2121				// Bypassing it made add-to-cart fire two overlapping module/cart requests
2122				// (closePopFancybox() and TriggerMyCartList() each trigger mouseover).
2123				// Rescheduling is not a lock, so this is "almost always one", not a guarantee.
2124				clearTimeout(miniCartReloadTimer);
2125				miniCartReloadTimer = setTimeout(loadMiniCart, immediate ? 0 : 300);
2126			}
2127
2128			function loadMiniCart(){
2129				$("#cart").load("index.php?route=module/cart #cart > *", function(){
2130					try { refreshMiniCartScrollBar(); } catch (e) { }
2131				});
2132			}
2133
2134			function closePopFancybox(){
2135				try {
2136					$.fancybox.close();
2137					$.fancybox.destroy();
2138				} catch (e) { }
2139				if( is.desktop() ) {
2140					setTimeout(function(){
2141						$("#cart > .heading a").trigger('mouseover');	
2142						setTimeout(function(){ refreshMiniCartScrollBar(); }, 300);
2143					}, 500);
2144				}
2145			}
2146			
2147			function LastPresentsOption(html,key,qty){
2148				$("#lg_option_"+key).prepend(html);
2149				$('.last_free_presents').trigger('change');
2150				$('.free_present_qty').trigger('change');
2151			}
2152			
2153			function TriggerMyCartList(){
2154				if( is.not.desktop() ){
2155					updateCartProductCount();
2156					setTimeout(function(){
2157						$("#shopping-cart-list .badge").removeClass("animated");
2158						$("#shopping-cart-list .badge").addClass("animated");
2159						$("#shopping-cart-list .badge").addClass("bounce");
2160					}, 800);
2161				} else {
2162					setTimeout(function(){
2163						$("#cart > .heading a").trigger('mouseover');	
2164						setTimeout(function(){ refreshMiniCartScrollBar(); }, 300);
2165					}, 500);
2166				}
2167			}
2168			
2169			function removeCartByProductID(product_id) {
2170				if( is.existy(product_id) ) {
2171				$.ajax({
2172					url: 'index.php?route=module/cart&remove=' + product_id + "%3Anull%3A-1%3A0",
2173					type: 'post',
2174					dataType: 'json',
2175					success: function(json) {
2176						TriggerMyCartList();
2177					}
2178				});
2179				}
2180			}
2181			
2182			function updateQuantityByProductID(product_id, quantity) {
2183				quantity = typeof(quantity) != 'undefined' ? quantity : 1;
2184				$.ajax({
2185					url: 'index.php?route=checkout/cart/updateProductQuantity',
2186					type: 'post',
2187					data: { 'quantity':quantity, 'key': product_id+'%3Anull%3A-1%3A0' },
2188					dataType: 'json',
2189					success: function(json) {
2190						TriggerMyCartList();
2191					}
2192				});
2193			}
2194			
2195			
2196			function bulk_add_to_cart() {
2197				$("select.bulk-add-quantity").change(function() {
2198					var value = $("option:selected", this).val();
2199					var select_idx 	= $(this).data("idx");
2200					var product_id 	= $(this).data("productid");
2201					var prevval 	= $(this).data("prevval");
2202					
2203					if( value == 0 ) { 
2204						$(this).next(".bulk-add-quantity").addClass("no-cart"); 
2205						if(prevval!=0){
2206							removeCartByProductID(product_id);
2207						}
2208					} else { 
2209						$(this).next(".bulk-add-quantity").removeClass("no-cart"); 
2210						
2211						if( value == 999 ) {
2212							InstantAddToCart(product_id, 999); 
2213							$(this).next(".bulk-add-quantity").find(".current").text("+ 9");
2214						} else {
2215							if(prevval==0){
2216								// 第一次加入
2217								InstantAddToCart(product_id, value); 
2218							} else {
2219								// 更新數量
2220								updateQuantityByProductID(product_id, value); 
2221							}
2222						}
2223					}
2224					$(this).data("prevval", value); 
2225					$(this).attr("data-prevval", value); 
2226				});
2227			}
2228			
2229			function downloadJSAtOnload() {
2230				
2231				$("#myBody").removeAttr('style');
2232				
2233				if( is.not.desktop() ) {
2234					$('.any-products').each(function(index,el){
2235						$(el).find('.grid-box').each(function(index,el2){
2236							$(el2).attr('style','');
2237						});
2238					});
2239				}
2240				
2241				try {
2242				getScript("https://cdnjs.cloudflare.com/ajax/libs/izitoast/1.4.0/js/iziToast.min.js",function(){ });
2243				} catch(e) { }
2244				
2245								
2246				var queue = $LAB.queueScript("https://cdn.qdm.cloud/assets/js/core.240901.compressed.js");
2247				queue.queueWait(function(){
2248
2249					// core.js reloads module/cart on EVERY mini-cart hover, unthrottled (10
2250					// requests in 5s observed). Rebind to the debounced reload, keeping
2251					// hover-to-expand behaviour. The mouseleave rebind is like-for-like: in
2252					// core.240901 (the bundle queued above) its body is only
2253					// removeClass("active"). Re-check if that bundle is rebuilt.
2254					// Keep in sync with common/footer_cart.tpl -- it queues a different
2255					// bundle, so verify that claim against ITS bundle.
2256					//
2257					// The ready() wrapper is load-bearing: core.js binds inside its own
2258					// ready() callback, registered while this queued script runs, and jQuery
2259					// fires ready callbacks in registration order -- so off() is guaranteed to
2260					// run after that bind. Calling off() directly here only works if DOM ready
2261					// happens to have fired already; otherwise it removes nothing and BOTH
2262					// handlers stay attached.
2263					$(document).ready(function(){
2264						try {
2265							$(document).off("mouseover", "#cart > .heading");
2266							$(document).on("mouseover", "#cart > .heading", function(e){
2267								$("#cart").addClass("active");
2268								// Programmatic refreshes get here via .trigger('mouseover') (add-to-cart /
2269								// fancybox close / login). Debouncing them delayed the reload past each
2270								// call site's paired setTimeout(refreshMiniCartScrollBar, 300). jQuery
2271								// marks synthetic events with isTrigger; losing that just falls back to
2272								// the debounced path.
2273								reloadMiniCart(e && e.isTrigger);
2274							});
2275							$(document).off("mouseleave", "#cart");
2276							$(document).on("mouseleave", "#cart", function(){
2277								$(this).removeClass("active");
2278							});
2279						} catch (e) {
2280							// Never break the rest of the queued callback, but do not fail
2281							// silently either -- a swallowed error degrades straight back to
2282							// the unthrottled reload.
2283							if (window.console && console.warn) { console.warn("mini-cart rebind failed", e); }
2284						}
2285
2286						// Self-check. off(type, selector) matches on the selector STRING, so a whitespace
2287						// variant alone breaks it: a rebuilt bundle emitting "#cart>.heading" survives our
2288						// off() and BOTH handlers stay attached. Both spellings hit the same element, so
2289						// compare with whitespace stripped -- that covers drift on either side.
2290						// Known limit: whitespace is the ONLY rewrite covered. "#cart .heading", a trailing
2291						// " a", a comma-separated selector or a direct element bind all stay silent.
2292						// A tripwire for the likely case, not proof that the rebind held.
2293						// _data is a jQuery internal, so it gets its own try/catch: if it ever goes away,
2294						// the rebind above is still correct and must not be reported failed.
2295						try {
2296							var miniCartEvents = $._data(document, "events");
2297							var miniCartBound = ((miniCartEvents && miniCartEvents.mouseover) || []).filter(function(h){
2298								return h.selector && h.selector.replace(/\s+/g, "") === "#cart>.heading";
2299							}).length;
2300							if (miniCartBound !== 1 && window.console && console.warn) {
2301								console.warn("mini-cart rebind: expected 1 mouseover handler, found", miniCartBound);
2302							}
2303						} catch (e2) {
2304							if (window.console && console.warn) { console.warn("mini-cart rebind self-check unavailable", e2); }
2305						}
2306					});
2307
2308				
2309										
2310					$(".ajax-popup-link").unbind();
2311					$(".ajax-popup-link").fancybox({
2312						closeBtn    : true,
2313						closeClick  : true,
2314						helpers     : { 
2315							overlay : {closeClick: true} 
2316						},
2317						buttons : [ 'close' ],
2318						clickOutside : 'close',
2319						closeClick  : true,
2320						toolbar : true
2321					});
2322					
2323										
2324					var milliseconds = new Date().getTime();
2325					$.getJSON( "index.php?route=common/header/getLoggedInUserInfo&token=" + milliseconds + "1" + (Math.floor(Math.random() * 999) + 100), function( data ) {
2326						if( is.existy(data) && data.isLogged ) {
2327														$("#header-logged-user").html(data.logged_user_name + data.logged_group_name);
2328							$("#header-mobile-user").html(data.logged_user_name + data.logged_group_name);
2329							$(".header-logged-menu").removeClass("hidden");
2330							$("#header-logged-menu").removeClass("hidden");
2331							$("#header-none-logged-menu").remove();
2332						} else {
2333							$(".header-logged-menu").remove();
2334							$("#header-logged-menu").remove();
2335							$(".header-none-logged-menu").removeClass("hidden");
2336							$("#header-none-logged-menu").removeClass("hidden");
2337						}
2338						
2339						if( is.not.desktop() ){
2340							updateCartProductCount();
2341							setTimeout(function(){
2342								$("#shopping-cart-list .badge").removeClass("animated");
2343								$("#shopping-cart-list .badge").addClass("animated");
2344								$("#shopping-cart-list .badge").addClass("bounce");
2345							}, 800);
2346						} else {
2347							$("#cart > .heading a").trigger('mouseover');
2348							$("section#cart").removeClass("active");	
2349							setTimeout(function(){ $("section#cart").removeClass("active"); }, 50);
2350						}
2351						
2352					});
2353					
2354					setTimeout(function(){
2355						$('.side_float_banner_wrapper').attr("style","");
2356						$('.banner').each(function( index ) {
2357							if( $(this).find("a").length == 1 ) {
2358								$(this).attr("style","");
2359							}
2360						});
2361					}, 2000);
2362					
2363					if (typeof init_inline === 'function') {
2364						if($("#image-additional").length){
2365							$.fancybox.defaults.hash = false;
2366						}
2367						setTimeout(function(){ init_inline(); }, 300);
2368					}
2369
2370					if (typeof init_fullslideshow === 'function') { init_fullslideshow(); }
2371					
2372					$("#contact-block").removeAttr('style');
2373					
2374										if( is.not.desktop() ) {
2375						$('#shopping-cart-list').on('click', function() {
2376							openSideCart();
2377							return false;
2378						});
2379					}
2380										
2381					if ( $("input[name='quantity']").length > 0 ) {
2382						var qtyMin = $("input[name='quantity']").data("min"); 
2383						if(qtyMin=="" || qtyMin==undefined) qtyMin = 1;
2384						$("input[name='quantity']").TouchSpin({
2385							min: qtyMin,
2386							max: 99999
2387						});
2388					}
2389				
2390					$(window).resize(function() {
2391						if( $(window).width() < 992 ){
2392							$("#footer-inner-row").removeClass("offset2");
2393						} else {
2394							var data_count = $("#footer-inner-row").data("count");
2395							if(data_count < 1) {
2396								$("#footer-inner-row").addClass("offset2");	
2397							}
2398						}
2399					});	
2400					
2401					$("#header .flipper").each(function(){
2402						var imgLoad = $(this).imagesLoaded(function(){
2403							try { 
2404								if (typeof $(this).data('flipper') !== 'undefined') {
2405									$(this).flipper(); 
2406								}
2407							} catch(err) { }
2408						});
2409					});
2410					
2411					$('a[href*="#"]').each(function() {
2412						var hash = $(this).attr('href');
2413						if(hash=="##") return;
2414						if(hash=="#") return;
2415						if(hash=="#mobile-menu") return;
2416						$(this).click( function(e) {
2417							var url = $(this).attr('href');
2418							var type = url.split('#');
2419							var hash = '';
2420							if(type.length > 1)
2421							hash = type[1];
2422							if($("[name='"+hash+"']").length){
2423								if(hash && hash != "undefined" && hash != null && hash != undefined){
2424									e.preventDefault(); 
2425									$('html,body').animate({ scrollTop: $("[name='"+hash+"']").offset().top}, 600);
2426									return false;
2427								}
2428							}									
2429						});
2430					});
2431					
2432										
2433										
2434									
2435										
2436					if ( $(".masonry").length > 0 ) {
2437						$(".masonry").each(function(index, value) { 
2438							var $grid = $('.masonry').masonry();
2439							setTimeout(function(){ $grid.masonry('layout'); }, 2000);
2440						});
2441					}
2442					
2443					if ( $(".owl-carousel").length > 0 ) {
2444						$(".owl-carousel").not('[data-exclude]').each(function(index, value) { 
2445						
2446							var autoplay = is.null( $(this).attr('data-autoPlay') ) ? true : $(this).attr('data-autoPlay');
2447							var pagination = is.null( $(this).attr('data-pagination') ) ? false : $(this).attr('data-pagination');
2448							var slideSpeed = is.null( $(this).attr('data-slideSpeed') ) ? 200 : $(this).attr('data-slideSpeed');
2449							var paginationSpeed = is.null( $(this).attr('data-paginationSpeed') ) ? 800 : $(this).attr('data-paginationSpeed');
2450							var singleItem = is.null( $(this).attr('data-singleItem') ) ? true : $(this).attr('data-singleItem');
2451							var transitionStyle = is.null( $(this).attr('data-transitionStyle') ) ? "fade" : $(this).attr('data-transitionStyle');
2452							
2453							$(this).owlCarousel({
2454								autoPlay : Boolean(autoplay),
2455								navigation : false,
2456								pagination : Boolean(pagination),
2457								slideSpeed : slideSpeed,
2458								paginationSpeed : paginationSpeed,
2459								singleItem: Boolean(singleItem),
2460								transitionStyle : transitionStyle,
2461								stopOnHover: true,
2462								autoHeight: true
2463							});
2464							
2465						});
2466					}
2467					
2468										
2469					var vidDefer = document.getElementsByTagName('iframe');
2470					for (var i=0; i<vidDefer.length; i++) {
2471						if(vidDefer[i].getAttribute('data-src')) {
2472							vidDefer[i].setAttribute('src',vidDefer[i].getAttribute('data-src'));
2473						} 
2474					}
2475					
2476					$(".fancybox").fancybox({
2477						closeBtn: false,
2478						padding : 1,
2479						helpers			: {
2480							overlay : {
2481								closeClick : true,
2482								speedOut   : 200,
2483								showEarly  : true,
2484								css        : {},
2485								locked     : true
2486							},
2487							title		: { type : 'inside' },
2488							buttons		: {}
2489						}
2490					});	
2491					
2492										
2493					if( is.not.desktop() ){
2494						$("#footer-inner-row").removeClass("offset2");
2495					} 
2496					
2497					if ( $('#bestseller-products .flexslider').length > 0 ) {
2498						$('#bestseller-products .flexslider').each(function(index, value) {
2499							$(this).flexslider({
2500								animation: "slide",
2501								animationLoop: true,
2502								itemWidth: 182,
2503								itemMargin: 3,
2504								minItems: 2,
2505								maxItems: 6,
2506								animationSpeed: 700,
2507								touch: true,
2508								slideshow: false,								slideshowSpeed: 5000							});
2509						});
2510					}
2511					if ( $('#featured-products .flexslider').length > 0 ) {
2512						$('#featured-products .flexslider').each(function(index, value) { 
2513							$(this).flexslider({
2514								animation: "slide",
2515								animationLoop: true,
2516								itemWidth: 182,
2517								itemMargin: 3,
2518								minItems: 2,
2519								maxItems: 6,
2520								animationSpeed: 700,
2521								touch: true,
2522								slideshow: false,								slideshowSpeed: 5000							});
2523						});
2524					}
2525					if ( $('#latest-products .flexslider').length > 0 ) {
2526						$('#latest-products .flexslider').each(function(index, value) { 
2527							$(this).flexslider({
2528								animation: "slide",
2529								animationLoop: true,
2530								itemWidth: 182,
2531								itemMargin: 3,
2532								minItems: 2,
2533								maxItems: 6,
2534								animationSpeed: 700,
2535								touch: true,
2536								slideshow: false,								slideshowSpeed: 5000							});
2537						});
2538					}
2539					if ( $('#related-products .flexslider').length > 0 ) {
2540						$('#related-products .flexslider').each(function(index, value) { 
2541							$(this).flexslider({
2542								animation: "slide",
2543								animationLoop: true,
2544								itemWidth: 182,
2545								itemMargin: 3,
2546								minItems: 2,
2547								maxItems: 6,
2548								animationSpeed: 700,
2549								touch: true,
2550								slideshow: false,								slideshowSpeed: 5000							});
2551						});
2552					}
2553					if ( $('#special-products .flexslider').length > 0 ) {
2554						$('#special-products .flexslider').each(function(index, value) { 
2555							$(this).flexslider({
2556								animation: "slide",
2557								animationLoop: true,
2558								itemWidth: 182,
2559								itemMargin: 3,
2560								minItems: 2,
2561								maxItems: 6,
2562								animationSpeed: 700,
2563								touch: true,
2564								slideshow: false,								slideshowSpeed: 5000							});
2565						});
2566					}
2567
2568					if ( $('#comingsoon-products .flexslider').length > 0 ) {
2569						$('#comingsoon-products .flexslider').each(function(index, value) {
2570							$(this).flexslider({
2571								animation: "slide",
2572								animationLoop: true,
2573								itemWidth: 182,
2574								itemMargin: 3,
2575								minItems: 2,
2576								maxItems: 6,
2577								animationSpeed: 700,
2578								touch: true,
2579								slideshow: false,								slideshowSpeed: 5000							});
2580						});
2581					}
2582					
2583					jQuery('.flexslider').each( function() {
2584						var $slider = jQuery(this);
2585						var $slides = jQuery(this).children().children('.slides');
2586						if ( -1 === jQuery.inArray( $slider.data('flexslider').vars.animation, [ 'slide', 'swing' ] ) )
2587							return;
2588						$slides.bind( 'mousewheel', function( e ) {
2589							e.preventDefault();
2590							if ( jQuery(this).hasClass('dragging') )
2591								return;
2592							if ( e.originalEvent.deltaY > 0 ) {
2593								$slider.flexslider('next');
2594							}
2595							if ( e.originalEvent.deltaY < 0 ) {
2596								$slider.flexslider('prev');
2597							}
2598							return false;
2599						} );
2600					} );
2601					
2602					if ( $('.any-products').length > 0 ) {
2603						$(window).resize(function() {
2604							
2605							$('.any-products').each(function(index, value) { 
2606								var margin_vertical = $(this).data("marginVertical");
2607								if( is.mobile() ){
2608									$(this).find(".products-box").removeClass(".products-box").addClass("product-box");
2609								} else {
2610									if(margin_vertical){
2611										$(this).find(".product-box").removeClass(".product-box").addClass("products-box");
2612									}
2613								}
2614							});
2615							
2616							if(is.mobile()){
2617								$(".any-products").find(".grid-box").attr("style","");
2618								adjustBoxHeights();
2619							}
2620							
2621						});
2622					}
2623					
2624					if ( $('.banner-carousel').length > 0 ) {
2625						$('.banner-carousel').each(function(index, value) { 
2626							var slideSpeed = is.null( $(this).attr('data-slideSpeed') ) ? 600 : $(this).attr('data-slideSpeed');
2627							if( slideSpeed == undefined ) { slideSpeed = 600; }
2628							var el = "#" + $(this).attr("id");
2629							var items = $(this).data("item");
2630							
2631							var lilen = $(el+" li").length;
2632							var sliderLoop = true;
2633							if(lilen==items){sliderLoop = false;}
2634							
2635							var autoplay = parseInt($(this).data("autoplay"));
2636							var boolAutoplay = false;
2637							if( autoplay ) boolAutoplay = true;
2638							$(el).removeClass("hidden");
2639							$(el).show();
2640							$(el).imagesLoaded( function() {
2641								var el = "#" + $(this).attr("id");
2642								$(el+" img[data-lazy-src]").each(function(index, value) { 
2643									var loadimg = $(this).attr('data-lazy-src');
2644									$(this).attr('src', loadimg);
2645								});
2646								var slider = $(el).lightSlider({
2647									auto: boolAutoplay,
2648									pauseOnHover: true,
2649									pager: false,
2650									item:items,
2651									loop: sliderLoop,
2652									easing: 'cubic-bezier(0.25, 0, 0.25, 1)',
2653									speed: slideSpeed,
2654									onSliderLoad: function() {
2655										$(el).removeClass("hidden");
2656										$(el).show();
2657										$(el).css("height", "auto");
2658									} 
2659								});
2660								slider.refresh();
2661							});
2662						});
2663					}
2664					
2665					
2666					if ( $('.slideshow-container-appear li').length > 0 ) {
2667						$('.slideshow-container-appear').each(function(index, value) { 
2668							var el = "#" + $(this).attr("id");
2669							var full = $(this).data("full");
2670							if(full){
2671								$(this).appendTo('#content-top');
2672							}
2673							
2674							if(is.mobile()){
2675								$(el).find("li.desktop").remove();
2676								$(el).find("li.mobile:first").show();	
2677							} else {
2678								$(el).find("li.mobile").remove();
2679								$(el).find("li.desktop:first").show();	
2680							}						
2681							
2682							$(el).imagesLoaded( function(e) {
2683								
2684								if(is.mobile()){
2685									$(e).closest("li.mobile").attr("style","width:100%");
2686								} else {
2687									$(e).closest("li.desktop").attr("style","width:100%");
2688								}
2689								
2690								var controlNav = $(e).closest(".slideshow-container-appear").data("controlnav");
2691								var directionNav = $(e).closest(".slideshow-container-appear").data("directionnav");
2692								var el = "#" + $(e).attr("id");
2693								var delay = $(e).closest(".slideshow-container-appear").data("delay");
2694								if(delay<300) delay = 300;
2695								
2696								adaptiveHeight = true;
2697								if( is.mobile() ){
2698									//controlNav = false;
2699									//directionNav = false;
2700									adaptiveHeight = false;
2701								}
2702								
2703								var slideshow_img_h = 0;
2704								$(e).closest(".slideshow-container-appear li.mobile img").each(function(index, value) { 
2705									var img_h = $(this).data("height");
2706									if( (img_h > 0) && (slideshow_img_h > 0) && (img_h != slideshow_img_h) ) {
2707										slideshow_img_h = 0;
2708									} else {
2709										slideshow_img_h = img_h;
2710									}
2711								});
2712								
2713								if( is.mobile() && slideshow_img_h == 0 ){
2714									$(e).closest(".slideshow-container-appear").flexslider({
2715										animation: "fade",
2716										slideDirection: "horizontal",
2717										animationLoop: true,
2718										pauseOnHover: true,
2719										pauseOnAction: false,
2720										smoothHeight: false, 
2721										slideshowSpeed: delay,
2722										initDelay: 0, 
2723										slideshow: true,
2724										mousewheel: false,
2725										controlNav: controlNav,
2726										directionNav: directionNav, 
2727										prevText: "",
2728										nextText: "",
2729										start: function(slider) {
2730											var el = "#" + $(this).attr("id");
2731											$(el).removeClass('loading');
2732										}
2733									});
2734								} else {
2735									var slider = $(e).closest(".slides").lightSlider({
2736										auto:true,
2737										loop:true,
2738										pauseOnHover:true,
2739										adaptiveHeight:true,
2740										item:1,
2741										slideMargin:0,
2742										easing: 'cubic-bezier(0.25, 0, 0.25, 1)',
2743										speed:600,
2744										pause:delay,
2745										controls:directionNav,
2746										pager:controlNav
2747									}); 
2748									slider.refresh();
2749									setTimeout(function(){
2750									slider.play(); 
2751									slider.goToNextSlide(); 
2752									slider.goToPrevSlide();
2753									slider.goToPrevSlide(); 
2754									slider.refresh();
2755									}, 700);
2756								}
2757								
2758							});
2759							
2760						});
2761					}
2762					
2763					if( $('.side_float_banner .flipper').length > 0 ) {
2764						try {
2765							$('.side_float_banner .flipper').flipper();
2766						} catch(err) { }
2767					}
2768					
2769					if( $(".flexslider").find("img").length > 0 ) {
2770						$(".flexslider").find("img").trigger('appear');
2771					}
2772					
2773										
2774										
2775					$('[data-toggle="tooltip"]').tooltip();
2776					
2777					setTimeout(function(){ 
2778						$(window).trigger('resize'); 
2779					}, 300);
2780					
2781					$(".flex-direction-nav").remove();
2782					
2783					adjustBoxHeights();
2784					
2785										
2786					$("#menu-btn").show();
2787					$("#menu-btn").addClass('animated flash');
2788					
2789					setTimeout(function(){
2790					$("#mobile-navbar").removeAttr('style');
2791					}, 1000);
2792					
2793															
2794										
2795										
2796				});
2797				
2798				queue.runQueue();
2799				
2800												(function(d, s, id) {
2801				  var js, fjs = d.getElementsByTagName(s)[0];
2802				  if (d.getElementById(id)) return;
2803				  js = d.createElement(s); js.id = id;
2804				  				  js.src = "https://connect.facebook.net/zh_TW/sdk.js";
2805				  				  fjs.parentNode.insertBefore(js, fjs);
2806				}(document, 'script', 'facebook-jssdk'));
2807				
2808				if (window.location.hash == '#_=_') {
2809					window.location.hash = ''; // for older browsers, leaves a # behind
2810					history.pushState('', document.title, window.location.pathname + window.location.search);
2811				}
2812				
2813			}
2814			// Store subdomains count as same site; separate tenants on the platform domain do not
2815			function qdmIsSameSiteHost(host){
2816				var site = location.hostname.toLowerCase();
2817				host = (host || '').toLowerCase();
2818				if (host === site) {
2819					return true;
2820				}
2821				// Keep in sync with Response::isSameSiteHref() in system/library/response.php
2822				if (/(^|\.)(qdm\.(tw|com\.tw|cloud)|myorganic\.org\.tw)$/.test(site)) {
2823					return false;
2824				}
2825				var apex = site.replace(/^www\./, '');
2826				return host === apex || host.slice(-(apex.length + 1)) === '.' + apex;
2827			}
2828			function sanitizeTargetBlank(){
2829				$('a[rel~=external]').prop('target', '_blank');
2830				$('a[target="_blank"]').each(function(){
2831					var a = $(this);
2832					if(!qdmIsSameSiteHost(this.hostname)){
2833						var originalRel = (this.rel === undefined) ? '' : this.rel;
2834						var newRel = originalRel.split(" ");
2835						if (originalRel.toLowerCase().indexOf('noopener') === -1){
2836							newRel.push('noopener');
2837						}
2838						if (originalRel.toLowerCase().indexOf('noreferrer') === -1){
2839							newRel.push('noreferrer');
2840						}
2841						if (originalRel.toLowerCase().indexOf('nofollow') === -1){
2842							newRel.push('nofollow');
2843						}
2844						a.attr('rel', newRel.join(" ").trim() );
2845					}
2846				});
2847			}
2848			function create_mark(name) {
2849				if (window.performance.mark === undefined) {
2850					console.log("performance.mark Not supported");
2851					return;
2852				}
2853				window.performance.mark(name);
2854			}
2855			function initCoreJS() {
2856				$LAB.setGlobalDefaults({AlwaysPreserveOrder:true});
2857				jQuery.ajaxPrefilter(function(s) {
2858					if ( s.crossDomain ) {
2859						s.contents.script = false;
2860					}
2861				});
2862				$(function() { $('body').removeClass('fade-out'); });
2863				sanitizeTargetBlank();
2864				var def_img_idx = 1;
2865				[].forEach.call(document.querySelectorAll('img[data-src]'), function(img) {
2866					if( def_img_idx <= 12 ) {
2867						if (img.getAttribute('data-src') === null) { } else if (img.getAttribute('data-src') === '') {} else {
2868							img.setAttribute('src', img.getAttribute('data-src'));
2869							img.onload = function() {
2870								img.removeAttribute('data-src');
2871								if (img.style.opacity !== undefined) {
2872									img.style.opacity = 1;
2873								}
2874							};
2875						}
2876					}
2877					def_img_idx++;
2878				});
2879				if ( $('.slideshow .flexslider').length > 0 ) { 
2880					$('.slideshow .flexslider').each(function(index, value) { 
2881						var el = "#" + $(this).attr("id");
2882						var full = $(this).data("full");
2883						if(full){
2884							$(this).find("img").css({'width' : '100%', 'height' : 'auto' });
2885							$(this).closest("div.slideshow").appendTo('#content-top');
2886						}
2887					});
2888				}
2889				$LAB.script("https://cdnjs.cloudflare.com/ajax/libs/jquery.imagesloaded/5.0.0/imagesloaded.pkgd.min.js")
2890					  .script("https://cdnjs.cloudflare.com/ajax/libs/is_js/0.9.0/is.min.js").wait(function(){
2891						  initDeferImages();
2892						loadJS();
2893						downloadJSAtOnload();
2894						create_mark('mark_fully_loaded');
2895						if( $('.wow').eq(0).length ) {
2896							getScript("https://cdnjs.cloudflare.com/ajax/libs/wow/1.1.2/wow.min.js",function(){
2897								new WOW().init();
2898							});
2899						}
2900						if( $('img[usemap]').eq(0).length ) {
2901							getScript("https://cdnjs.cloudflare.com/ajax/libs/jQuery-rwdImageMaps/1.6/jquery.rwdImageMaps.min.js",function(){
2902								try { $('img[usemap]').rwdImageMaps(); } catch (e) { }
2903							});
2904						}
2905												
2906					  });
2907						//230117 fix flipper hover
2908						if($(".grid-box, .product-row").find(".flipper").length){
2909							$(".grid-box, .product-row").find(".flipper").hover(function(){
2910								oldSrc = $(this).attr("src");
2911								$(this).attr("src",$(this).attr("data-flipper"));
2912							},function(){
2913								$(this).attr("src",oldSrc);
2914							});
2915						}
2916			}
2917			
2918			initCoreCSS();
2919			setTimeout(function(){ 
2920				initCoreJS();
2921				$.getJSON( "index.php?route=account/account/get_user_track&token=" + (Math.floor(Math.random() * 999) + 100), function( data ) { 
2922					if( data.user_id ) { ga_userId = data.user_id; } 
2923					if( data.uuid ) {
2924						try {
2925							if ('localStorage' in window && window['localStorage'] !== null){
2926								localStorage.removeItem("qdm_user_uuid");
2927								localStorage.setItem("qdm_user_uuid", data.uuid);
2928								qdm_user_uuid = data.uuid;
2929							}
2930						} catch (e) {}
2931					}
2932					if( data.utm_source == "affiliates" ) { ga_utm_source = data.utm_source; }
2933						
2934				});
2935				var vidDefer = document.getElementsByTagName('iframe');
2936				for (var i=0; i<vidDefer.length; i++) {
2937					if(vidDefer[i].getAttribute('src')) {
2938						vidDefer[i].setAttribute('data-src',vidDefer[i].getAttribute('src'));
2939					} 
2940				}
2941				document.getElementsByTagName("body")[0].style.display = "block";
2942			}, 60);
2943		
2944		</script>
2944 </body> </html>

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.