1<!DOCTYPE html> 2<html lang="zh-TW" style="height:100%;"> 3 <head> 4
4<script> 5 window.dataLayer = window.dataLayer || []; 6 </script>
6 7 <!-- Google Tag Manager --> 8
8<script>
vendor: 375 bytes, lines 8-12
8(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 9 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 10 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 11 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 12 })(window,document,'script','dataLayer','
12GTM-57LN3CKM
vendor: 3 bytes, line 12
12');
12</script>
12 13 <!-- End Google Tag Manager --> 14 <!-- CYBERBIZ Google Tag Manager --> 15
15<script>
vendor: 345 bytes, lines 15-19
15(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 16 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 17 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 18 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 19 })(window,document,'script','cyb','
19GTM-TXD9LVJ
vendor: 3 bytes, line 19
19');
19</script>
19 20 <!-- End CYBERBIZ Google Tag Manager --> 21 22 <meta charset="utf-8"> 23<meta http-equiv="X-UA-Compatible" content="IE=edge"> 24<meta name="viewport" content="width=device-width, initial-scale=1"> 25<link rel="icon" href="https://cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?convert=false&sha=ea9d616a1920651b"> 26<link rel="apple-touch-icon" href="https://cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?convert=false&sha=ea9d616a1920651b"> 27 28<meta property="og:site_name" content="carryongarden" /> 29 30<!-- og tag --> 31 32 <meta name="keywords" content="å·æ¶æåï½ææ©æ¸ æ½å" /> 33 <meta name="description" content="ææ©æ¸ æ½å" /> 34 <meta property="og:title" content="carryongarden å·æ¶æå" /> 35 <meta property="og:description" content="ææ©æ¸ æ½å" /> 36 <meta property="og:url" content="https://www.carryongarden.com" /> 37 <meta property="og:type" content="website" /> 38 39 40<!-- og image --> 41 42 43 <meta property="og:image" content="https://cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b" /> 44 45 46 47<title> 48 49 carryongarden å·æ¶æå 50 51</title> 52 53 54 <style> 55 *:not(input):not(textarea) { 56 -webkit-touch-callout:none; 57 -webkit-user-select:none; 58 -khtml-user-select:none; 59 -moz-user-select:none; 60 -ms-user-select:none; 61 user-select:none; 62 } 63 </style> 64 65
65<script> 66 (function () { 67 function stopEvent(event) { 68 event.preventDefault(); 69 event.stopPropagation(); 70 } 71 72 ['dragstart', 'selectstart', 'contextmenu'].forEach(function(event) { 73 document.addEventListener(event, stopEvent); 74 }); 75 } 76 )(); 77 </script>
77 78 79
80<script src='//cdn-general.cybassets.com/frontend/shop/useSettingsData-3a2e378145f8a165.js' type='text/javascript'></script>
80 81 82 83 84
84<script> 85 window.setSettingsData({"draggable_sections":{"404":[],"index":["_main_slider_custom","_index_product_banner","1783495357112_2","_index_8_blocks","1779085303274_2","_index_4_blocks","_index_4_blocks_2"],"product":["product_info","product_description","board_comments","related_products"],"combo_product":["combo_product_info","combo_product_desc","board_comments"],"collection":[],"category":[],"blog":[],"article":[],"cart":[],"contact":[],"express_delivery":[],"search":[],"custom_page":["_main_slider_custom","_index_product_banner","_index_8_blocks","1779085303274_2","_index_4_blocks","_index_4_blocks_2"]},"sections":{"navbar":{"type":"navbar","visible":true,"settings":{"navbar_image_logo_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b","navbar_image_logo_tablet_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b","navbar_image_logo_mobile_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b","main_nav":"main-menu","slider_primary_linklist":"main-menu","slider_primary_linklist_set_open":true,"nav_show_three_dimension":true,"search_enabled":true,"display_only_index":false,"dict_header_banner_image_url":"","dict_header_banner_image_tablet_url":"","dict_header_banner_image_mobile_url":"","dict_header_banner_link":"https://lin.ee/QYIub4Q","display_count_down":false,"navbar_display_style":"displayDefault","header_banner_start":"","header_banner_end":"","timer_text_color":"#ffffff","timer_bg_color":"#000000","navbar_background_transparent":false,"menu_display_style":"two_dimension_menu","logo_height":"","mobile_logo_position":"center","link_menu_enabled":false,"link_menu":"undefined","navbar_pc_title_font_size_scale":"100","navbar_pc_body_font_size_scale":"100","navbar_mobile_title_font_size_scale":"100","navbar_mobile_body_font_size_scale":"100","display_banner_type":"textBanner","header_banner_simple_text":"å å ¥å·æ¶æå宿¹LINEé å éå·!","header_banner_simple_text_size":"12","header_banner_simple_text_color":"#ffffff","header_banner_simple_bg":"#33442f","breadcrumb_referrer_enabled":false},"custom_name":"å°è¦½å"},"footer":{"type":"footer","visible":true,"settings":{"footer_link":"footer","display_facebook":true,"shop_facebook":"https://www.facebook.com/","display_instagram":true,"shop_instagram":"https://www.instagram.com/?hl=zh-tw","display_line":true,"shop_line":"https://line.me/zh-hant/","display_youtube":true,"shop_youtube":"https://www.youtube.com/","footer_link_arrangement":"display_x","display_facebook_fan_block":true},"block_order":["default_contact_info","default_link_list","default_link_list_2"],"blocks":{"default_link_list":{"type":"link_list_setting","thumbnail":"list","draggable":true,"visible":true,"settings":{"dict_link_list_block_title":"éæ¼æå","footer_link":"footer"},"custom_name":"é¸å®"},"default_contact_info":{"type":"contact_info_setting","thumbnail":"contactInfo","draggable":true,"visible":true,"settings":{"dict_contact_info_block_title":"è¯çµ¡æå","display_phone":true,"dict_phone_number":"0930-691331","display_fax_number":false,"dict_shop_fax_number":"02-22345678","display_shop_email":true,"dict_shop_email":"[email protected]","display_shop_address":true,"dict_shop_address":"å°åå¸ä¸è¥¿åæ°çè·¯ä¸æ®µ100è(å çºè¯çµ¡å°åï¼ä¸å°å¤éæ¾)","display_office_time":true,"dict_shop_office_time":"10:30am - 4:00pm","display_tax_id":true,"dict_tax_id":"0018850"},"custom_name":"è¯çµ¡è³è¨"},"default_link_list_2":{"type":"link_list_setting","visible":true,"settings":{"dict_link_list_block_title":"Menu","footer_link":"main-menu"},"custom_name":"é¸å®"}},"custom_name":"é è ³"},"_main_slider_custom":{"type":"_main_slider_custom","visible":true,"blocks":{"display_main_slider_item_1":{"type":"image","visible":true,"settings":{"dict_link":"/pages/about-us","dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg3NTM5Mjc1X1BD5a6Y57ayQmFubmVyIDE5MjB4IDEwODAucG5nLnBuZyJdXQ.png?sha=6e250759509c3a69","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg3NTM5Mjc1X1BD5a6Y57ayQmFubmVyIDE5MjB4IDEwODAucG5nLnBuZyJdXQ.png?sha=6e250759509c3a69","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg3NTM5Mjc1X1BD5a6Y57ayQmFubmVyIDE5MjB4IDEwODAucG5nLnBuZyJdXQ.png?sha=6e250759509c3a69","slide_contents_display":"left","dict_slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","link_open_in_new_tab":true},"custom_name":"ç´ æ"},"display_main_slider_item_2":{"type":"image","visible":true,"settings":{"dict_link":"","dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc3NTc1Mzk5XzIwMDB4ICgxKS53ZWJwLndlYnAiXV0.webp?sha=fee9ab6d04f0c0d9","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc3NTc1Mzk5XzIwMDB4ICgxKS53ZWJwLndlYnAiXV0.webp?sha=fee9ab6d04f0c0d9","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc3NTc1Mzk5XzIwMDB4ICgxKS53ZWJwLndlYnAiXV0.webp?sha=fee9ab6d04f0c0d9","slide_contents_display":"left","dict_slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff"},"custom_name":"ç´ æ"},"1783495950014_0":{"type":"image","custom_name":"ç´ æ","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg4MjQ3ODIzX0NZ5qmr5bmF5buj5ZGKICgxOTIwIHggMTA4MCDlg4_ntKApLnBuZy5wbmciXV0.png?sha=fc0a15688bff193b","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg4MjQ3ODIzX0NZ5qmr5bmF5buj5ZGKICgxOTIwIHggMTA4MCDlg4_ntKApLnBuZy5wbmciXV0.png?sha=fc0a15688bff193b","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg4MjQ3ODIzX0NZ5qmr5bmF5buj5ZGKICgxOTIwIHggMTA4MCDlg4_ntKApLnBuZy5wbmciXV0.png?sha=fc0a15688bff193b","dict_link":"","slide_contents_display":"left","dict_slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff"}}},"block_order":["display_main_slider_item_1","display_main_slider_item_2","1783495950014_0"],"settings":{"margin_x":"0","margin_bottom":"48","mobile_margin_x":"0","mobile_margin_bottom":"24","swiper_delay":"3","transition_speed":"0.3","image_number":"1","image_space":"12","mobile_image_number":"1","mobile_image_space":"8"},"custom_name":"輪æç´ æ"},"_index_8_blocks":{"type":"_index_8_blocks","visible":true,"settings":{"dict_title":"ææ·¨æ¥å¸¸ç³»å","collection_handle":"cleanlife","limit":"4","margin_x":"0","margin_bottom":"48","mobile_margin_x":"","mobile_margin_bottom":"24","product_display":"displayPartial","product_arrangement":"2","product_column_for_pc":"4","product_column_for_mobile":"3","product_alignment":"leftPosition","product_text_align":"center","product_card_hover_effect":"button","product_image_border_radius":"15"},"custom_name":"åååé¡"},"_index_product_banner":{"type":"_index_product_banner","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f","dict_link":"","display_cta_btn":true,"cta_btn_display_style":"midPosition","cta_btn_text":"Read More","cta_btn_bg_color":"#f07d4a","cta_btn_text_color":"#ffffff","margin_x":"80","margin_bottom":"48","mobile_margin_x":"0","mobile_margin_bottom":"24"},"blocks":{},"block_order":[],"custom_name":"æ©«å¹ å»£å"},"_index_4_blocks":{"type":"_index_4_blocks","visible":false,"blocks":{"index_4_blocks_block_1":{"type":"image","visible":true,"settings":{"title":"","dict_link":"/collections/life","dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MDgyOTg4X05ldXRyYWwgTWluaW1hbGlzdGljIFNraW4gQ2FyZSBUaXBzIEluc3RhZ3JhbSBQb3N0ICgxKS5wbmcucG5nIl1d.png?sha=176d570d46fc9352","dict_tablet_image_url":"","dict_mobile_image_url":"","block_propotion":"33.3","dict_image_description":"","dict_image_title":"ææ·¨æ¥å¸¸ç³»å","link_open_in_new_tab":true},"custom_name":"åç"},"index_4_blocks_block_2":{"type":"image","visible":true,"settings":{"dict_image_url":"/theme_src/i18n_nolli/default_img/index_4_blocks_1_block_2.png","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"/collections/food","block_propotion":"33.3","dict_image_description":"","dict_image_title":"æçé£å ç³»å"},"custom_name":"åç"},"index_4_blocks_block_3":{"type":"image","visible":true,"settings":{"dict_image_url":"/theme_src/i18n_nolli/default_img/index_4_blocks_1_block_3.png","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"","block_propotion":"33.3","dict_image_description":""},"custom_name":"åç"}},"block_order":["index_4_blocks_block_1","index_4_blocks_block_2","index_4_blocks_block_3"],"settings":{"margin_x":"180","margin_bottom":"48","mobile_margin_x":"0","mobile_margin_bottom":"24","mobile_columns":1,"margin_block":"10","mobile_margin_block":"10","mobile_align":"left"},"custom_name":"èªè¨æçè¨è¨"},"_index_4_blocks_2":{"type":"_index_4_blocks","visible":true,"settings":{"margin_x":"80","margin_bottom":"48","mobile_margin_x":"16","mobile_margin_bottom":"24","mobile_columns":2,"margin_block":"10","mobile_margin_block":"10","mobile_align":"left"},"blocks":{"_index_4_blocks_2_block_1":{"type":"video","visible":true,"settings":{"dict_video_link":"https://youtu.be/7RG8FE4tAEs?si=H5zhgFc7jg0g3URb","block_propotion":"100","auto_play":false,"hide_controls":false,"loop":true},"custom_name":"å½±ç"},"1777574801971_1":{"type":"video","custom_name":"å½±ç","visible":true,"settings":{"dict_video_link":"https://youtu.be/2Kh5Fzcr6yg?si=VxmNRZ0E66SZqzLY","auto_play":false,"hide_controls":false,"loop":true,"block_propotion":"100"}}},"block_order":["_index_4_blocks_2_block_1","1777574801971_1"],"custom_name":"èªè¨æçè¨è¨"},"express_delivery_index_4_blocks":{"type":"_index_4_blocks","visible":false,"blocks":{"express_delivery_display_index_4_block_1":{"type":"image","visible":true,"settings":{"title":"","dict_link":"","dict_image_url":"/theme_src/i18n_nolli/default_img/index_4_blocks_1_block_1.png","dict_tablet_image_url":"","dict_mobile_image_url":""}}},"block_order":["express_delivery_display_index_4_block_1"]},"custom_text":{"type":"custom_text","visible":true,"settings":{}},"blog":{"type":"blog","visible":true,"settings":{"article_limit_in_blog_page":"6"}},"article":{"type":"article","visible":true,"settings":{"display_blog_menu":true,"dict_blog_tags_title":"æç« åé¡","blog_latest_post_limit":"2"}},"category":{"type":"category","visible":true,"settings":{"category_sidebar_set_open":false,"category_product_block_limit":"4","category_product_swiper_item_limit":"
856","category_product_item_limit":"18"}},"shop_setting":{"type":"shop_setting","visible":true,"settings":{"favicon_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b","og_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b","shop_title":"å·æ¶æå","shop_description":"ææ©æ¸
æ½å","shop_keywords":"å·æ¶æåï½ææ©æ¸
æ½å","prevent_right_click":true},"custom_name":"å
¨ç«è¨å®"},"color_settings":{"type":"color_settings","visible":true,"settings":{"button_color":"#13180d","button_text_color":"#ffffff","accent_color":"#f07d4a","heading_color":"#000000","text_color":"#bbb19e","price_color":"#f07d4a","discount_price_color":"#f07d4a","theme_bg_color":"#FFFFFF","product_border_color":"#bbb19e","nav_logo_bg_color":"#ffffff","nav_menu_bg_color":"#ffffff","nav_menu_text_color":"#000000","nav_menu_icon_color":"#643114","footer_bg_color":"#fff9f2","footer_text_color":"#555555","checkout_button_color":"#f07d4a","checkout_accent_color":"#643114","tips_text_color":"#0C5460"},"custom_name":"é¡è²è¨å®"},"popup":{"type":"popup","visible":true,"blocks":{"popup_block_1":{"type":"image","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MTIyMDE2X-aXpeabtDU0IOeahOikh-acrCDnmoTopIfmnKwucG5nLnBuZyJdXQ.png?sha=b6e69a9d3ca95344","icon_size":"middle","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MTIyMDE2X-aXpeabtDU0IOeahOikh-acrCDnmoTopIfmnKwucG5nLnBuZyJdXQ.png?sha=b6e69a9d3ca95344","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MTIyMDE2X-aXpeabtDU0IOeahOikh-acrCDnmoTopIfmnKwucG5nLnBuZyJdXQ.png?sha=b6e69a9d3ca95344","dict_icon_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MTIyMDE2X-aXpeabtDU0IOeahOikh-acrCDnmoTopIfmnKwucG5nLnBuZyJdXQ.png?sha=b6e69a9d3ca95344","dict_link":"https://lin.ee/Vg1Pb9b"},"custom_name":"åç"}},"block_order":["popup_block_1"],"settings":{},"custom_name":"å½çªå»£å"},"product_info":{"type":"product_info","visible":true,"settings":{"display_product_sku":true,"dict_vip_custom_price_text":"","dict_vip_custom_price_href":""}},"product_description":{"type":"product_description","visible":true},"board_comments":{"type":"board_comments","visible":true,"settings":{},"thumbnail":"list","draggable":false},"related_products":{"type":"related_products","visible":true,"settings":{"display_related_cols":true,"use_custom_related_cols":true,"dict_group_related_cols_related_product":"ç¸éåå","related_products_limit":"4"}},"combo_product_info":{"type":"combo_product_info","visible":true,"settings":{}},"combo_product_desc":{"type":"combo_product_desc","visible":true,"settings":{}},"contact":{"type":"contact","visible":true,"settings":{"show_google_map":true,"show_google_map_iframe":"\u003ciframe src=\"https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3613.6479170127777!2d121.56760821400371!3d25.07991984260527!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x3442ac6fbd841bbd%3A0x64e16bcf25e3da31!2zMTE05Y-w5YyX5biC5YWn5rmW5Y2A55Ge5YWJ6LevNTEz5be3MzDomZ8!5e0!3m2!1szh-TW!2stw!4v1485156761267\" width=\"600\" height=\"450\" frameborder=\"0\" style=\"border:0\" allowfullscreen\u003e\u003c/iframe\u003e"}},"collection":{"type":"collection","visible":true,"settings":{"collection_sidebar":"main-menu","collection_sidebar_set_open":false,"collection_pagination_limit":"24"}},"404":{"type":"404","visible":true,"settings":{"image_url":"/theme_src/i18n_nolli/default_img/404_img.png","dict_404_image_url":"/theme_src/i18n_nolli/default_img/404_img.png","dict_title_text":"æ±æï¼æ¤é é¢ä¸å卿è
å·²ç¶è¢«ç§»é¤","dict_btn_text":"è¿åé¦é "}},"blogs_all":{"type":"blogs_all","visible":true,"settings":{}},"bundle_discounts":{"type":"bundle_discounts","visible":true,"settings":{}},"cart":{"type":"cart","visible":true,"settings":{}},"cart_empty":{"type":"cart_empty","visible":true,"settings":{}},"page":{"type":"page","visible":true,"settings":{}},"search":{"type":"search","visible":true,"settings":{"search_link_list":"main-menu"}},"customers/account":{"type":"customers/account","visible":true,"settings":{}},"customers/account_edit":{"type":"customers/account_edit","visible":true,"settings":{}},"customers/activate_account":{"type":"customers/activate_account","visible":true,"settings":{}},"customers/addresses":{"type":"customers/addresses","visible":true,"settings":{}},"customers/bonus_points":{"type":"customers/bonus_points","visible":true,"settings":{}},"customers/cancel":{"type":"customers/cancel","visible":true,"settings":{}},"customers/coupons":{"type":"customers/coupons","visible":true,"settings":{}},"customers/forgot_password":{"type":"customers/forgot_password","visible":true,"settings":{}},"customers/login":{"type":"customers/login","visible":true,"settings":{}},"customers/message":{"type":"customers/message","visible":true,"settings":{}},"customers/messages":{"type":"customers/messages","visible":true,"settings":{}},"customers/modify_password":{"type":"customers/modify_password","visible":true,"settings":{}},"customers/order":{"type":"customers/order","visible":true,"settings":{}},"customers/orders":{"type":"customers/orders","visible":true,"settings":{}},"customers/periodic_order":{"type":"customers/periodic_order","visible":true,"settings":{}},"customers/periodic_orders":{"type":"customers/periodic_orders","visible":true,"settings":{}},"customers/other_valid_orders":{"type":"customers/other_valid_orders","visible":true,"settings":{}},"customers/register":{"type":"customers/register","visible":true,"settings":{}},"customers/reset_password":{"type":"customers/reset_password","visible":true,"settings":{}},"customers/return":{"type":"customers/return","visible":true,"settings":{}},"customers/tracking_items":{"type":"customers/tracking_items","visible":true,"settings":{}},"express_delivery-navbar":{"type":"express_delivery-navbar","visible":true,"settings":{}},"express_delivery-content":{"type":"express_delivery-content","visible":true,"settings":{}},"1779085303274_2":{"type":"_index_8_blocks","custom_name":"åååé¡","visible":true,"settings":{"dict_title":"æçé£å
ç³»å","collection_handle":"food","limit":"4","product_arrangement":"2","product_column_for_pc":"4","product_column_for_mobile":"3","product_alignment":"leftPosition","product_text_align":"center","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"24","product_display":"displayDefault","product_card_hover_effect":"button","product_image_border_radius":"15"},"blocks":{},"block_order":[]},"1783495357112_2":{"type":"_index_8_blocks","custom_name":"åååé¡","visible":true,"settings":{"dict_title":"æå¥½å
éç³»å","collection_handle":"æå¥½å
éçµ","limit":"4","product_arrangement":"2","product_column_for_pc":"4","product_column_for_mobile":"3","product_alignment":"leftPosition","product_text_align":"center","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"24","product_display":"displayDefault","product_card_hover_effect":"button","product_image_border_radius":"15"},"blocks":{},"block_order":[]},"announcement_bar":{"type":"announcement_bar","visible":true,"blocks":{"announcement_bar_block_1":{"type":"text","visible":true,"settings":{"display_only_index":false,"display_period":"always","dict_link":"https://lin.ee/QYIub4Q","link_open_in_new_tab":false,"dict_image_url":"","dict_image_tablet_url":"","dict_image_mobile_url":"","image_alt":"","dict_content":"å å
¥å·æ¶æå宿¹LINEé å
éå·!","text_size":"12","text_color":"#ffffff","bg_color":"#33442f","timer_text_color":"#ffffff","timer_bg_color":"#000000","migrated_from_navbar":true},"custom_name":"æå"}},"block_order":["announcement_bar_block_1"],"settings":{"display_mode":"vertical","carousel_interval":"3"},"custom_name":"ç½®é å
Œ"}},"navbar_image_logo":true,"show_default_all_products":true,"one_dimension_limit":"
856","two_dimension_limit":"10","header_banner_display":true,"header_banner_link":"/","display_main_slider":true,"display_phone":true,"phone_number":"0912345678","display_fax_number":true,"shop_fax_number":"0222345678","display_shop_email":true,"shop_email":"[email protected]","display_shop_address":true,"shop_address":"測試å°å","display_office_time":true,"shop_office_time":"10:00-17:00","index_event_slider_display":true,"index_event_slider_item_1_display":true,"dict_index_event_slider_item_1_link":"#","index_event_slider_item_2_display":true,"dict_index_event_slider_item_2_title":"2019ç§å£é款æ°åä¸å¸","dict_index_event_slider_item_2_link":"#","index_event_slider_item_3_display":true,"dict_index_event_slider_item_3_title":"å ¨é¤¨ä»»é¸ä¸ä»¶çµå¸³åäº«ææ£ï¼ï¼8æï¼ï¼","dict_index_event_slider_item_3_link":"#","index_event_slider_item_4_display":true,"dict_index_event_slider_item_4_title":"FINAL SALE/å¤å¤©ç±é·ç¾æé款è£è²¨å°åº","dict_index_event_slider_item_4_link":"#","index_event_slider_item_5_display":true,"dict_index_event_slider_item_5_title":"ç±è³£åæ¸","dict_index_event_slider_item_5_link":"#","index_event_slider_item_6_display":true,"dict_index_event_slider_item_6_title":"ç¾å¨è¨»åæå¡å³å¯äº«ææ£éï¼50ï¼ç¾æï¼","dict_index_event_slider_item_6_link":"#","index_event_slider_item_7_display":false,"dict_index_event_slider_item_7_title":"","dict_index_event_slider_item_7_link":"","index_event_slider_item_8_display":false,"dict_index_event_slider_item_8_title":"","dict_index_event_slider_item_8_link":"#","index_event_slider_item_9_display":false,"dict_index_event_slider_item_9_title":"","dict_index_event_slider_item_9_link":"#","index_event_slider_item_10_display":false,"dict_index_event_slider_item_10_title":"","dict_index_event_slider_item_10_link":"#","index_4_slider_display":true,"dict_index_4_slider_title":"Instagram","index_4_slider_item_1_display":true,"dict_index_4_slider_item_1_link":"#","index_4_slider_item_2_display":true,"dict_index_4_slider_item_2_link":"#","index_4_slider_item_3_display":true,"dict_index_4_slider_item_3_link":"#","index_4_slider_item_4_display":true,"dict_index_4_slider_item_4_link":"#","index_4_slider_item_5_display":true,"dict_index_4_slider_item_5_link":"#","index_4_slider_item_6_display":false,"dict_index_4_slider_item_6_link":"#","index_4_slider_item_7_display":false,"dict_index_4_slider_item_7_link":"#","index_4_slider_item_8_display":false,"dict_index_4_slider_item_8_link":"#","index_video_blocks_display":true,"dict_index_video_blocks_title":"Youtube","dict_index_video_blocks_video_link":"https://www.youtube.com/watch?v=3bI4IUIVjCk","collection_sidebar":"main-menu","collection_sidebar_set_open":false,"collection_pagination_limit":"24","product_slogan_display":false,"display_product_total_sold":false,"display_periodic_order_label":false,"cart_quantity_limit":"0","is_empty_clickable":true,"is_first_selected":false,"display_product_images_color":false,"discount_product_images_color_expand":false,"display_product_discounts_list":true,"display_discount_price_name":false,"discount_price_slogan_url":"","dict_discount_price_name":"","display_discount_price_suggestion_name":false,"dict_discount_price_suggestion_name":"","display_product_section_description":true,"dict_product_section_description":"ååä»ç´¹","description_section_spec_setting":true,"dict_product_description_section_spec":"è¦æ ¼èªªæ","description_section_shipping_setting":true,"dict_product_description_section_shipping":"ééæ¹å¼","vip_custom_price_visible":false,"display_global_event_1":false,"dict_show_global_event_1_link":"#","display_global_event_2":false,"dict_show_global_event_2_link":"#","display_global_event_3":false,"dict_show_global_event_3_link":"#","display_contact_address":true,"dict_contact_address":"測試å°å","show_google_map":true,"show_google_map_iframe":"\u003ciframe src=\"https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3613.6479170127777!2d121.56760821400371!3d25.07991984260527!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x3442ac6fbd841bbd%3A0x64e16bcf25e3da31!2zMTE05Y-w5YyX5biC5YWn5rmW5Y2A55Ge5YWJ6LevNTEz5be3MzDomZ8!5e0!3m2!1szh-TW!2stw!4v1485156761267\" width=\"600\" height=\"450\" frameborder=\"0\" style=\"border:0\" allowfullscreen\u003e\u003c/iframe\u003e","display_selected_blog":true,"selected_blog":"news","product_scale":"three_to_four_scale","display_inventory_policy":true,"display_product_vendor":true,"nav_icon_style":"icon_type_default","google_font":"{'ja':{'value':'Noto Sans JP'},'zh-TW':{'value':'Noto Sans TC'},'en':{'value':'Noto Sans TC'},'zh-CN':{'value':'Noto Sans TC'}}","product_text_align":"start","styled_shop_menu":"buttonType","product_video_display_location":"before","product_card_hover_effect":"button","product_labels":{"items":[{"id":"sale_label","kind":"system","title":"ç¹å¹æ¨ç±¤","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"large"},{"id":"out_of_stock_label","kind":"system","title":"缺貨æ¨ç±¤","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"periodic_event_label","kind":"system","title":"宿å®é¡æ¨ç±¤","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"7015a86e-7c86-419f-9234-7c29801222d8","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 1","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"fd338e98-9325-460b-a317-d6b9ae3936b2","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 2","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"dc33aa94-26d1-4a43-b430-753177e6ba6b","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 3","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"dbb04026-5fe8-47e1-b7a2-bb8436e75cde","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 4","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"d6d42b70-96ec-4e56-95f1-7be60662be59","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 5","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"}]},"product_image_border_radius":"0"}); 86 </script>
86 87 88 89 90 91 92 93 94 95
95<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","url":"https://www.carryongarden.com","logo":"https://cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b"}</script>
95<script type="application/ld+json">{"@context":"https://schema.org/","@type":"WebSite","name":"carryongarden","url":"https://www.carryongarden.com","potentialAction":{"@type":"SearchAction","target":"www.carryongarden.com/search?q={search_term_string}","query-input":"required name=search_term_string"}}</script>
95 96 97 98 99 <!-- for vendor --> 100 <!-- cyb_snippet _bootstrap start --> 101 102<!-- cyb_snippet _bootstrap end --> 103 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/vendor-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 104 105 <!-- common css rulesets --> 106 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/common-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 107 108 <!-- for navbar --> 109 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/navbar-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 110 111 <!-- for footer --> 112 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/footer-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 113 114 <!-- theme assets --> 115 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/main-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 116 117 <!-- for vendor --> 118
118<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/vendor-3a2e378145f8a165.js' type='text/javascript'></script>
118 119 120
120<script> 121 window.sci = "eyJzaG9wX2lkIjozNTgzMiwic2hvcF9wbGFuIjoiYm9zc19wbHVzIiwiZGlt\nX2FmZmlsaWF0ZSI6bnVsbCwiY3VzdG9tZXJfaWQiOm51bGwsImN1c3RvbWVy\nX25hbWUiOm51bGwsInNob3BfbmFtZSI6ImNhcnJ5b25nYXJkZW4iLCJzaGFy\nZV9hdHRyaWJ1dGlvbl9lbmFibGVkIjpmYWxzZX0=\n"; 122 </script>
122 123 124 125<meta name="csrf-param" content="authenticity_token" /> 126<meta name="csrf-token" content="GKXZk-0inlgF09CRn_Uky6c1AWfCARwkr99kPD1FhNei8hD2Fxsnbns_ae5GvOgMp83ha_zMxwWm9jVPi0MnaA" />
127<script>(function () { 128 window.gaConfigurations = {"useProductIdInProductEvents":false}; 129})(); 130</script>
vendor: 1 bytes, line 130
130
131<script>(function () { 132 window.CYBERBIZ_PageContext = {"page_type":"home"}; 133})(); 134</script>
134 135<link href="//cdn-general.cybassets.com/frontend/shop/quark-3a2e378145f8a165.css" rel="stylesheet" type="text/css" media="all" /> 136
136<script> 137 window.shopScriptHelper = { 138 i18nLocale: "zh-TW", 139 i18nLocaleDefault: "zh-TW", 140 availableCurrencies: [], 141 defaultCurrency: "TWD", 142 currenciesInfo: [{"name":"æ°å°å¹£ (TWD)","html":"NT${{amount_no_decimals}}","money_format":"%u%n","unit":"","decimal_precision":0,"email_unit":"NT${{amount_no_decimals}}","html_unit":"NT${{amount_no_decimals}}","format":"NT${{amount_no_decimals}}","trailing_zeros":false,"code":"TWD","email":"NT${{amount_no_decimals}}","symbol":"NT$"}], 143 vueOverrideTranslations: {"zh-TW":{"vue":{"bonus_mall":{"add_to_cart":"å å ¥è³¼ç©è»","already_added_to_cart":"å·²å å ¥è³¼ç©è»","available_bonus_and_used":"ç´ å©é»æ¸ç¸½è¨ {customerRemainPoints} é»ï¼ä½¿ç¨ {usedBonusPoints} é»","bonus_points":"{points} é»","bonus_points_verbose":"ç´ å©{points}é»","bonus_price":"ç´ å©é»æ¸","bonus_price_asc":"ä¾ç´ å©é»æ¸å°å°å¤§æåº","bonus_price_desc":"ä¾ç´ å©é»æ¸å¤§å°å°æåº","bonus_redemption_price":"ç´ å© {price}","countdown":"éè³£åæ¸","days":"æ¥","default_sort":"é è¨æåº","exceed_buy_limit":"è¶ åºè³¼è²·æ¸ééå¶","exceed_stock_quantity":"è¶ åºåº«åæ¸é","hours":"æ","insufficient_points":"黿¸ä¸è¶³","loading_error":"è¼å ¥ååè³¼ç©è»è³æé¯èª¤","minutes":"å","need_to_buy_something":"æ¸éä¸å¾å°æ¼1","not_on_sale_yet":"å°æªéè³£","points":"黿¸","proceed_to_checkout":"åå¾çµå¸³","product_count":"å ± {totalCount} ä»¶åå","quantity":"æ¸é","recent_days_sold_asc":"ä¾è¿æé·å®éå°å°å¤§","recent_days_sold_desc":"ä¾è¿æé·å®é大å°å°","seconds":"ç§","select_itmes_count":"å·²é¸è³¼ {quantity} ä»¶ç´ å©åå","sell_from_asc":"ä¸å¸æ¥æèå°æ°","sell_from_desc":"ä¸å¸æ¥ææ°å°è","sold_out":"å·²å®å®","subtotal":"å°è¨","wrong_quantity":"æ¸éè¼¸å ¥é¯èª¤"},"common":{"add_to_cart":"å å ¥è³¼ç©è»","buy_at_least_one":"購買æ¸éä¸å¯å°æ¼1","buy_now":"ç«å³è³¼è²·","cancel":"åæ¶","confirm_submit":"éåº","contact_merchant":"è¯çµ¡åºå®¶","corona":{"confirm_no":"åæ¶","confirm_yes":"確èª","default_sort":"é è¨æåº","price_asc":"广 ¼ç±ä½å°é«","price_desc":"广 ¼ç±é«å°ä½","price_filter":"广 ¼","recent_days_sold_desc":"æ¬é±ç±è³£","select_page":"鏿é 碼","select_sort_by":"鏿æåºæ¹å¼","sell_from_asc":"ä¸å¸æ¥æèå°æ°","sell_from_desc":"ä¸å¸æ¥ææ°å°è","suggested_range":"建è°åé:"},"default_sort":"é è¨æåº","exceed_stock_quantity":"è¶ éåº«åæ¸é","exceed_upper_limit":"è¶ é購買ä¸é","failed_to_update_cart":"æ´æ°è³¼ç©è»å¤±æ","onsale":"ç¹å¹","periodic_order_label":"宿å®é¡","pre_order":"é è³¼åå","price_asc":"广 ¼ç±ä½å°é«","price_desc":"广 ¼ç±é«å°ä½","price_label":"建è°å®å¹","product_description":"ååç°¡è¿°","product_name":"ååå稱","product_sold":"å·²é·å®ï¼{productSold}","product_status_label":{"login_to_view":"ç»å ¥æ¥ç","login_to_view_full":"ç»å ¥æ¥çè³æ ¼","member_exclusive":"é¨åæå¡éå®","not_eligible":"è³æ ¼ä¸ç¬¦","not_eligible_full":"è³¼è²·è³æ ¼ä¸ç¬¦","upcoming_product_with_time":"{time} éè³£"},"recent_days_sold_desc":"æ¬é±ç±è³£","return":"è¿å","see_more":"æ¥çæ´å¤","select_option":"è«é¸æ {option}","sell_from_asc":"ä¸å¸æ¥æèå°æ°","sell_from_desc":"ä¸å¸æ¥ææ°å°è","sold_out":"å·²å®å®","subtotal":"å°è¨","system_busy_try_again":"系統å¿ç¢ï¼è«ç¨å¾å試","theme":{"choose_specification":"è«é¸æè¦æ ¼","wrong_date":"æ¥æé¯èª¤"},"video_not_supported":"ä½ çç覽å¨ä¸æ¯æ´ HTML 5 video","wrong_quantity":"æ¸éè¼¸å ¥é¯èª¤"},"eticket_orders":{"category_all":"ææç¥¨å¸","category_available":"å¯ä½¿ç¨","category_pending":"æªä»æ¬¾","category_used":"使ç¨å®ç¢","eticket_orders_branch_stores_address":"éå¸å°å","eticket_orders_branch_stores_name":"éå¸å稱","eticket_orders_branch_stores_phone":"éå¸é»è©±","eticket_orders_branch_stores_show":"é¡¯ç¤ºå¯æ ¸é·éå¸","eticket_orders_cancel_order":"åæ¶è¨å®","eticket_orders_cancel_order_announcement":"æ¬äººåæç¼ç¥¨ä½å»¢æãçæ¥äººé·è²¨éåé²è²¨éåºè²¨ææè®èæå®ãå°å ¨æ¬ç±é ç«æºæ §è¡ä»½æéå ¬å¸èçï¼ä»¥å©å é鿬¾ä½æ¥ã妿é貨/æè®ï¼å°ç´æ¥éç«æè®å®ä¸å³è³è²¡æ¿é¨é»åç¼ç¥¨æ´åæåå¹³å°åèã","eticket_orders_cancel_order_cancel":"åæ¶æä½","eticket_orders_cancel_order_title":"ä½ ç¢ºå®è¦åæ¶éçè¨å®ï¼","eticket_orders_canceled":"已忶","eticket_orders_discounted_price":"ææ£å¹","eticket_orders_eticket_notice":"ç¥¨å¸æ³¨æäºé ","eticket_orders_go_to_payments":"åå¾ä»æ¬¾","eticket_orders_invoice_infos":"ç¼ç¥¨è³è¨","eticket_orders_invoice_number":"ç¼ç¥¨è碼","eticket_orders_invoice_status":"ç¼ç¥¨çæ ","eticket_orders_order_date":"è¨è³¼æ¥æ","eticket_orders_order_details":"è¨å®æç´°","eticket_orders_order_established":"è¨å®æç«","eticket_orders_order_no_query_records":"è¨å®ç®åæ²æåçç´é","eticket_orders_order_notes":"è¨å®å註","eticket_orders_order_number":"è¨å®ç·¨è","eticket_orders_order_query_records":"è©¢åç´é","eticket_orders_payment_infos":"仿¬¾è³è¨","eticket_orders_payment_method":"仿¬¾æ¹å¼","eticket_orders_payment_status":"仿¬¾çæ ","eticket_orders_qrcode_download":"ä¸è¼","eticket_orders_qrcode_not_used":"æªæ ¸é·","eticket_orders_qrcode_quantity":"æ¸éï¼{ quantity }","eticket_orders_qrcode_share":"å享","eticket_orders_qrcode_share_text":"鿝æ¨çé»å票å¸ï¼è«å¦¥åä¿ç®¡ï¼\n{ title }-{ variantTitle }\n票èï¼{ ticketNumber }","eticket_orders_qrcode_ticket_number":"票èï¼{ ticket_number }","eticket_orders_qrcode_used":"å·²æ ¸é·","eticket_orders_qrcode_used_status":"已使ç¨ï¼{ used } / å°æªä½¿ç¨ï¼{ not_used }","eticket_orders_quantity":"æ¸éï¼{ quantity }","eticket_orders_send_etickets":"å¯éé»å票å¸","eticket_orders_send_message_to_shop":"ç¼è¨æ¯çµ¦åºå®¶","eticket_orders_separate_etickets":"å票","eticket_orders_separate_etickets_cancel":"åæ¶æä½","eticket_orders_separate_etickets_confirm":"確èªå票","eticket_orders_separate_etickets_description":"è«æ³¨æï¼æ¨å³å°é²è¡å票ç¨åºãåç¥¨å¾æ¯å¼µç¥¨ææç¨ç«æ ¸é·ç¢¼ QR Codeï¼åæ¬æ ¸é·ç¢¼ QR Code å°ç¡æ³ä½¿ç¨ï¼ï¼æ¨å¯ä»¥å°ä¸åæ ¸é·ç¢¼æªåå享å¤äººä½¿ç¨ï¼æ¤æä½ä¸å¯å復ã","eticket_orders_submit":"éåº","eticket_orders_subtotal":"å°è¨","eticket_orders_title":"é»å票å¸è¨å®æ¥è©¢","eticket_orders_total_price":"總éé¡","eticket_orders_unused":"æªä½¿ç¨ï¼{ quantity }","eticket_orders_usage_status":"使ç¨çæ ","eticket_orders_used":"已使ç¨ï¼{ quantity }","eticket_orders_view_order_details":"æ¥çè¨å®è©³æ ","eticket_term_of_service":"CYBERBIZ é»åç¥¨å¸æå使ç¨èªªæ","failed_to_send_message":"ç¼éè¨æ¯å¤±æ","order_empty_note":"ç¡ä»»ä½è³è¨","payment_status_failed":"仿¬¾å¤±æï¼è«è¯çµ¡å®¢æ","payment_status_pending":"çå¾ è«æ¬¾","payment_status_success":"仿¬¾æå","show_eticket_button_qr_code":"é¡¯ç¤ºç¥¨å¸ QR code","show_eticket_button_used":"票å¸å·²ä½¿ç¨","usage_status_partial_used":"é¨å使ç¨","usage_status_used":"使ç¨å®ç¢"},"express_delivery":{"add_to_cart":"å å ¥è³¼ç©è»","add_to_cart_error":"å å ¥è³¼ç©è»å¤±æ","address_incomplete":"è¼¸å ¥ä¹å°åä¸å®æ´","address_incomplete_hint":"æ¨çå°åä¸å®æ´ï¼è«è¼¸å ¥æ£ç¢ºå°ååå è³¼ç©è»","back_to_product_list":"è¿åååå表","business_hours":"çæ¥æé","cancel":"åæ¶","change":"è®æ´","change_address":"è®æ´å°å","choose_store":"鏿å¤ééå¸","cyberbiz_now":"å¿«éå°è²¨","default_sort":"é è¨æåº","delivery_address":"å¤éå°å","delivery_address_detail":"æ¨å±¤ææ¿è","delivery_address_detail_hint":"è«è¼¸å ¥æ¨å±¤ææ¿è","delivery_address_hint":"è«è¼¸å ¥å¤éå°å","delivery_address_separate_tips":"è«å¦å¤å¡«å¯«æ¨å±¤ææ¿èè³è¨","empty_collection":"æ¤åé¡ç®åæ²æåå","exit":"é¢é","exit_prompt":"æ¨ç¢ºèªè¦é¢éå¿«éå°è²¨?","express_delivery":"CYBERBIZ NOW å¿«éå°è²¨","get_position_error_internal":"é¯èª¤ï¼è«éåç覽å¨ååä½ç½®æ¬é","get_position_error_no_permission":"é¯èª¤ï¼è«é忍çç¶²é å®ä½æå","get_position_error_require_https":"é¯èª¤ï¼éè¦https","get_position_error_timeout":"é¯èª¤ï¼è¶ éè«æ±æé","more_info":"æ´å¤è³è¨","not_search_stores_yet":"è«é»ææå°éå¸","phone":"è¯çµ¡é»è©±","please_select_specifications":"è«é¸æè¦æ ¼","pre_order":"é è³¼åå","price_asc":"广 ¼ç±ä½å°é«","price_desc":"广 ¼ç±é«å°ä½","product_count":"å ± {totalCount} ä»¶åå","recent_days_sold_desc":"æ¬é±ç±è³£","sales_start_info":"{time} éè³£","sales_start_info_verbose":"{day} {time} éè³£","search_failed":"æå°éå¸å¤±æ","search_product_count":"æ¨æå°{selectedStoreName}çååå ± {count} é ","search_stores":"æå°éå¸","sell_from_asc":"ä¸å¸æ¥æèå°æ°","sell_from_desc":"ä¸å¸æ¥ææ°å°è","service_description":"CYBERBIZ NOW å¿«éå°è²¨ æå說æï¼","service_description_detail":"æ¤è³¼ç©æåç± CYBERBIZ 系統æä¾ï¼æåèç¬¬ä¸æ¹åä½å¤¥ä¼´é åæä¾å¤éæåï¼æä¾æ¨æ´å¿«éçè³¼ç©é«é©ã","service_hours":"æ¥å®æéï¼{day} {time}","service_is_available":"æ¨è¼¸å ¥çå°åæ¯æ´ãCYBERBIZ NOW å¿«éå°è²¨ã","service_not_available_in_the_region":"徿±æï¼æ¨ç®åæå¨åå䏿¯æ´ãCYBERBIZ NOW å¿«éå°è²¨ãã","sold_out":"å·²å®å®","store_address":"éå¸å°å","store_address_info":"éå¸å°åï¼{address}","store_is_closed":"ç®å䏿¥åæå","view_products":"æ¥çåå"},"express_delivery_with_regularly_used_address":{"address":"å¤éå°å","address_detail":"æ¨å±¤ææ¿è","address_detail_placeholder":"è«è¼¸å ¥æ¨å±¤ææ¿è","address_incomplete_hint":"è«è¼¸å ¥å®æ´çå¤éå°å","address_invali
143d_content":"å¤éå°åçºå¿
å¡«","address_placeholder":"è«è¼¸å
¥å¤éå°å","button_create":"æ°å¢å°å","button_save":"å²å","button_save_as_regular":"å²åçºå¸¸ç¨","cancel":"åæ¶","create_address":"æ°å¢ä¸ç常ç¨å°å","delete":"åªé¤","delete_failed":"åªé¤å¤±æ","delete_hint":"ç§»é¤å°åå¾å°ç¡æ³å¾©åã","delete_message":"æ¨ç¢ºå®è¦åªé¤æ¤å°ååï¼","delete_success":"æååªé¤","edit":"編輯","empty_lists":"ç¡å¸¸ç¨å¤éå°å","empty_lists_hint":"æ¨ç®åå°ç¡å°åï¼è«é»ææ°å¢ä¾å»ºç«å¸¸ç¨å°åã","limit_hint":"常ç¨å°åæå¤å²å 5 çµï¼ç³»çµ±å°èªåç§»é¤ææ©å²åçå°å","name":"å稱","name_invalid_content":"å稱çºå¿
å¡«","name_placeholder":"è«è¼¸å
¥å稱","return":"ä¿ç","save_as_regular":"å²åçºå¸¸ç¨","save_success":"æåå²å","search_failed":"æ¤å°åæ²æå¯å¤ééå¸ï¼è«æ¹ç¨å
¶ä»å¤éå°å","select_address":"鏿叏ç¨å¤éå°å","site":"å°å","site_invalid_content":"å°åçºå¿
å¡«","site_placeholder":"è«è¼¸å
¥å°å","title_address_lists":"å·²å²å常ç¨å°å","title_delete_address":"確èªè¦åªé¤æ¤å°åï¼","title_edit_address":"編輯å¤éå°å","title_save_as_regular":"å²åçºå¸¸ç¨å¤éå°å"},"i18n_setting":{"currency":"å¹£å¥","language":"èªè¨","language_currency_setting":"èªè¨åå¹£å¥è¨å®"},"line_group_buy":{"add_to_cart":"å å
¥è³¼ç©è»","go_checkout":"åå¾çµè³¬","product_description":"ååä»ç´¹","product_shipping":"ééæ¹å¼","product_spec":"è¦æ ¼èªªæ"},"menu":{"fourDimensionMenu":{"account":"æç帳æ¶","cart":"è³¼ç©è»","help":"è¯çµ¡æå","locator":"é·å®æé»","wishlist":"æ¶èæ¸
å®"}},"omniauth_mobile":{"agree_label":"é²è¡é©è䏦宿æå¡è¨»å代表åæ","and":"è","check_account":"çºäºç¢ºèªæ¯æ¨æ¬äººï¼è«è¼¸å
¥ææ©è碼é²è¡é©è","confirm_account_information":"è«ç¢ºèªä»¥ä¸æ¯å¦çºæ¨çæå¡è³æ","confirm_submit":"éåº","cyb_ToS_and_privacy_policy":"æå¡è²¬ä»»è¦ç¯ååè³è²æ","enter_mobile_number":"è«è¼¸å
¥æ¨çææ©è碼","merge":"æ¯ï¼è«åä½µæå¡","mobile_number":"ææ©è碼","phone_validation":"ææ©é©è","reconfirm":"å¦ï¼éæ°é©è","registered":"æå·²ç¶ææå¡å¸³èäºï¼","resend":"éæ°ç¼é","resend_with_timer":"ï¼{ timer }ç§ï¼éæ°ç¼é","retry_later_error":"é系統æä½ä¸éï¼è«éæ°æ´ç並åè©¦ä¸æ¬¡","return_login":"åç»å
¥é é¢","send_confirmation_token":"å·²å°ç°¡è¨å¯éè³ææ©","send_message":"ç¼éç°¡è¨é©è碼","shop_ToS":"ååºæåæ¢æ¬¾","submit_btn":"å å
¥æå¡","verification_code":"4 使¸ç°¡è¨é©è碼"},"repurchase":{"all_cannot_repurchase":"æ¤è¨å®ååç¡æ³å次購買","comma":"ï¼","partial_cannot_repurchase":"{ reasonList }實éè«ä»¥è³¼ç©è»çºä¸»","quote_product_name":"ã{ productName }ã","reason_combo_product_changed":"çµååå
§å®¹ç°å","reason_exceed_the_stock":"庫åä¸è¶³åå","reason_product_is_discontinued":"已䏿¶åå","reason_product_not_found":"å·²åªé¤åå","separator":"ã"},"theme_pages":{"branch_store":{"get_store_empty":"ç¡å¯ç¨éå¸è³æ","get_store_error":"è¼å
¥éå¸è³æç¼çé¯èª¤","options_all_cities":"ææç¸£å¸","search_stores":"æå°","store_address":"å°å: { address }","store_open_time":"çæ¥æé: { openingHours }","store_phone":"é»è©±: { phone }"},"collection":{"all_filters":"ææç¯©é¸æ¢ä»¶","failed_to_add_to_cart_contact_shop":"ç¡æ³å å
¥è³¼ç©è»ï¼è«è¯ç¹«åå®¶","filter_button":"篩é¸","filter_no_result":"徿±æï¼ç¡åå符åç¯©é¸æ¢ä»¶","not_on_sale_yet":"å°æªéè³£","please_reselect":"è«éæ°è¼¸å
¥ç¯©é¸","product_sold_out":"ååå·²å®å®","products_total":"å
± { totalProductCounts } ä»¶åå","reset_all_filters":"æ¸
餿æç¯©é¸","reset_filter_button":"æ¸
é¤ç¯©é¸","suggested_range":"建è°åé:","view_product":"æ¥çåå"},"combo_product":{"add_cart_error_try_again":"å å
¥è³¼ç©è»æèª¤ï¼è«éæ°å試","and":"ï¼ä¸","arrive_soon":"å³å°å°è²¨","contact_shop":"è¯çµ¡åºå®¶","discount_bonus":"æ¤åå ã æé« ã坿æµç´
å©","has_stock":"å°æåº«å ","insufficient_selected_quantity":"è«é¸æçµåå忬¾å¼ï¼å°å·® { count } ä»¶","inventory_status":"ä¾è²¨çæ³","less_than_count":"æ¸éä¸å¾å°æ¼ { count }","limit_reached":"å·²éä¸é","no_stock":"庫åä¸è¶³","notification_enabled":"å·²ç»è¨è£è²¨éç¥","notify_me_when_stock_arrives":"å·²å®å®ï¼è²¨å°éç¥æ","over_cart_limit":"æ¸éè¶
é購買ä¸é","over_stock_quantity":"è¶
éåº«åæ¸é","point_equal":"ç´","points":"é»","pre_order":"é è³¼åå","quantity_over_combo_product_limit":"æ¸éå·²è¶
éçµåååä¸é","related_item_name":"款å¼å稱","related_item_quantity":"æ¸é","select_optional_combo_product_items":"鏿çµå忬¾å¼","selectable_count":"å
¨é¨å¯é¸æ { count } é
ï¼","selected_count":"å·²é¸ { count } é
","selection_status":"å·²é¸ { count } / { total } é
","some_variants_insufficient":"é¨åå忬¾å¼ä¸è¶³çµåå { count }
143 ä»¶","specified_count":"æå® { count } 份","stock_quantity_left":"åå庫åå©é¤ { count } ä»¶","stock_quantity_left_insufficient":"åå庫åå©é¤ { left_count } ä»¶ï¼ä¸è¶³çµåå { selected_count } ä»¶","stock_quantity_left_multiple_rules":"åå庫åå©é¤ { count } ä»¶ï¼å·²å¨å
¶ä»çµåé¸åéä¸é"},"contact":{"contact_form":"è¯çµ¡æå","email":"é»åéµä»¶","email_placeholder":"è«è¼¸å
¥æ¨çé»åéµä»¶ï¼ä¾ï¼[email protected]","fail_operation":"æä½å¤±æ!","invalid_email":"é䏿¯ææçé»åéµä»¶","invalid_name":"å§åçºå¿
å¡«","invalid_phone_number":"è¯çµ¡é»è©±çºå¿
å¡«","invalid_question_content":"åé¡å
§å®¹çºå¿
å¡«","name":"å§å","name_placeholder":"è«è¼¸å
¥æ¨çå§å","phone_number":"è¯çµ¡é»è©±","phone_number_placeholder":"è«è¼¸å
¥è¯çµ¡é»è©±","question_content":"åé¡å
§å®¹","question_content_placeholder":"è«è¼¸å
¥åé¡å
§å®¹","question_submit_fail":"ç¼çåé¡ï¼è«ç¨å¾å試","question_submit_success":"åé¡å·²æåéåºï¼æåå°ç¡å¿«èæ¨è¯ç¹«","question_type":"åé¡é¡å","success_operation":"æä½æå!"},"customer_coupon":{"customer_coupons_product_name":"å
æåå","customers_coupons_available_used":"å¯ä½¿ç¨ / 已使ç¨","customers_coupons_available_used_already_used":"{ availableUsed }次 / { alreadyUsed }次","customers_coupons_coupon":"åªæ å¸","customers_coupons_days":"天","customers_coupons_discount":"æ","customers_coupons_end_date":"ä½¿ç¨æé","customers_coupons_end_date_msg_1":"å¾{ start_date }éå§ç¡éæ","customers_coupons_end_date_msg_2":"峿¥èµ·è³{ end_date }","customers_coupons_end_date_msg_3":"å°æªåç¨ï¼å åºå®¶å°æªçµæ¡è¨å®{ name }","customers_coupons_end_date_msg_4":"ç¡éæ","customers_coupons_expired":"已失æ","customers_coupons_free_shipping":"å
é","customers_coupons_gift_coupon":"è´åå¸","customers_coupons_left":"å©","customers_coupons_list_div":"ã","customers_coupons_lookup_suit_product":"æ¥çé©ç¨åå","customers_coupons_method":"ä½¿ç¨æ¹å¼","customers_coupons_no_coupons_msg":"æ¨ç帳èç®åæ²æå¯ç¨çåªæ å¸","customers_coupons_no_end_date":"ç¡æé","customers_coupons_no_start_use":"å°æªåç¨","customers_coupons_not_suit":"ä¸é©ç¨","customers_coupons_product_deleted":"è´éååå·²åªé¤","customers_coupons_serial_number":"åºè","customers_coupons_still_available":"éå¯ä½¿ç¨ { timesLeft } 次","customers_coupons_suit_any_discount":"é©ç¨æææ´»å","customers_coupons_suit_any_product":"é©ç¨ææåå","customers_coupons_suit_discount":"é©ç¨æ´»å","customers_coupons_suit_product":"é©ç¨åå","customers_coupons_unlimited":"éå¯ä½¿ç¨ç¡é次","customers_coupons_unlimited_already_used":"ç¡é次 / { alreadyUsed }次","threshold_hint":"滿 { price } å¯ç¨"},"footer":{"about_us":"éæ¼æå","shop_address":"å°åï¼","shop_email":"ä¿¡ç®±ï¼","shop_fax":"客æå³çï¼","shop_phone":"客æå°ç·ï¼","shop_time":"客ææéï¼","tax_id":"çµ±ä¸ç·¨èï¼"},"order_return":{"account_name":"æ¶å","address1":"詳細é貨å°åï¼è·¯/å··/å¼/æ¨","all_return":"å
¨é¨é貨","apply_fail":"ç³è«å¤±æ","apply_return":"é貨ç³è«","apply_return_success":"æ¨çé貨ç³è«å·²æç«","apply_success":"ç³è«æå","bank_account":"éè¡å¸³è","bank_branch_name":"åè¡å稱","bonus_redemption":"ç´
å©æè³¼","check_account_length":"è«æª¢æ¥éè¡å¸³èé·åº¦","check_order":"è¨å®æ¥è©¢","choose_branch_bank":"è«é¸æåè¡","choose_return_reason":"è«é¸æé貨åå ","city":"åå¸","confirm_return":"ç³è«é貨","country_placeholder":"è«é¸æåå®¶","coupon_free_shipping":"å
é叿æµ","deliver_error":"å¯éååé¯èª¤","discount_detail":"ææ£æç´°","enter_account_name":"è«è¼¸å
¥æ¶å","enter_return_reason":"è«å¡«å¯«é貨åå ...","estimated_refund_amount":"é è¨é款éé¡","free":"å
è²»","gift_price":"å è³¼å¹","gift_purchase":"滿é¡/ä»¶è´","include_discount_and_shipping_fee":"å«åªæ ææ£èéè²»","keep_shopping":"ç¹¼çºè³¼ç©","keyin_address1":"è«å¡«å¯«è©³ç´°é貨å°åï¼è·¯/å··/å¼/æ¨","keyin_city":"è«è¼¸å
¥åå¸","keyin_zip":"è«è¼¸å
¥éµéåè","line_item_quantity":"æ¸éï¼{ lineItemQuantity }","literal_points":"é»","new_product_defect":"æ°åççµ","order_date":"è¨è³¼æ¥æ","order_number":"è¨å®ç·¨è","order_retrun_confirm":"æ¨ç¢ºèªè¦ç³è«é貨?","others":"å
¶ä»","please_choose_bank":"è«é¸æéè¡","please_select_country":"è«é¸æé款éè¡åå®¶","price_includes_tax":"(å
§å«æ¶è²»ç¨
ï¼{ tax })","product_content_defect":"ååå
§å®¹ä¸å
¨","product_defect":"ååæç¼ºé·","refund":"鿬¾éé¡","refund_account":"鿬¾å¸³æ¶","refund_info":"鿬¾è³è¨","refund_instruction":"ä¸å«åªæ ææ£èéè²»ï¼å¯¦é鿬¾éé¡å°ä»¥ç³»çµ±éé¡çºä¸»ã","refund_invoice_check":"æ¬äººåæç¼ç¥¨ä½å»¢æãçæ¥äººé·è²¨éåé²è²¨éåºè²¨ææè®èæå®ãå°å
¨æ¬ç±{ envoiceCompanyName }èçï¼ä»¥å©å é鿬¾ä½æ¥ã妿é貨/æè®ï¼å°ç´æ¥éç«æè®å®ä¸å³è³è²¡æ¿é¨é»åç¼ç¥¨æ´åæåå¹³å°åèã","related_item":"{ name } x{ quantity }","return_address":"é貨å°å","return_email_notification":"é貨ç³è«ä¿¡å·²å¯è³æ¨çä¿¡ç®±","return_info":"é貨è³è¨","return_instruction":"é貨說æ","return_item_error":"è«è³å°é¸æä¸ä»¶ååé²è¡é貨","return_msg_Taiwan_shop":"1. æ¶å°ååå¾å¦æç¼ç¾ççµæç ´æçæ³ï¼éè¦è¾¦çææè²¨ï¼è«æ¼æ¶å°è²¨å¾7天å
§ç»å
¥ãæç帳æ¶ãé é¢é»é¸ãç³è«é貨ãã\u003cbr\u003e 2. æ¶å°ååå¾å¯äº«æ7天å
è²»éè³
143æï¼å«ä¾åæ¥ï¼ãéæè²¨æè«ä¿æåå è£ååç宿´ï¼å å«è³¼è²·ååï¼éä»¶ï¼è´åçï¼ã\u003cbr\u003e 3. æ¶å°ç³è«å¾ï¼æåå°èæ¨è¯ç¹«ååååãè¥æä»»ä½é貨åé¡ï¼æ¨å¯ä»¥å¨ãè¨å®æç´°ãä¸ï¼é»é¸ãæè¦è©¢åãï¼è«å¿èªè¡å¯åååã\u003cbr\u003e 4. ç¶ä½ ç³è«é貨å¾ï¼è«åå°æ¬ç³è«å®é¨ååä¸èµ·å¯åã\u003cbr\u003e 5. æ¶å°æ¨çé貨åå並審æ¥ééå¾ï¼å°æ¼7åå·¥ä½å¤©å §é款è³ä½ ç鿬¾å¸³æ¶ã\u003cbr\u003e","return_msg_not_Taiwan_shop":"1. 妿¶å°ååå¾ï¼ç¼ç¾æççµæç ´æï¼éè¦ç³è«æè²¨æé款ï¼è«ç¡éè³ãæç帳æ¶ãï¼é»æãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®ä¸ï¼é»æãç³è«é貨ããå¦é詳細è³è¨åæå°ï¼è«åé±ååºçé貨æ¿çã\u003cbr\u003e 2. é貨ææè²¨æï¼è«ç¢ºä¿åå è£å®å¥½ç¡æï¼å æ¬æè³¼ååãé ä»¶ãè´åçã\u003cbr\u003e 3. 卿¶å°æ¨ç鿬¾ç³è«å¾ï¼æåæèæ¨è¯ç¹«å®æååååã妿任ä½é貨åé¡ï¼è«å¨ãæçè¨å®ãé é¢é»æãè¯ç¹«åå®¶ããè«å¿èªè¡éåååã\u003cbr\u003e 4. å°åºæ¤ç³è«è¡¨ä¸¦é¨é貨ååä¸åå¯åã\u003cbr\u003e 䏿¦æ¶å°ä¸¦æª¢æ¥æ¨çé貨ååå¾ï¼é款å°éåè³æ¨ç忝仿¹å¼æéè¡å¸³æ¶ã鿬¾å¯è½éè¦7è³14å¤©é¡¯ç¤ºæ¼æ¨çéè¡å°å¸³å®ã","return_product":"é貨åå","return_quantity":"é貨æ¸é","return_reason":"é貨åå ","shipping_fee":"éè²»","state_placeholder":"è«é¸æå·/ç","tax":"ç¨ é¡","total_bonus_redemption":"ç¸½ç´ å©æè³¼é»æ¸","tw_city_placeholder":"è«é¸æç¸£å¸","tw_district_placeholder":"è«é¸æéé®å¸å","vip_shipping_free":"VIPå éè²»","zip":"éµéåè"},"product_collection":{"check_product":"æ¥çåå"},"product_list":{"must_confirmed":"éå \u003ca href=\"/account\"\u003eé©èæ¨ç帳è\u003c/a\u003eæè½éå§çµå¸³","must_sign_up":"éå \u003ca href=\"/account/login?{ path }\"\u003eç»å ¥\u003c/a\u003eæ\u003ca href=\"/account/signup?{ path }\"\u003e註å\u003c/a\u003eæè½éå§çµå¸³"},"search":{"articles_total":"å ± { totalArticleCounts } ç¯æç« ","continue_reading":"ç¹¼çºé±è®","search_article_label":"æç« æå°çµæ ({ totalArticleCounts })","search_no_result":"徿±æï¼æ¾ä¸å° { queryString } è«éæ°è¼¸å ¥æå°ã","search_product_label":"ååæå°çµæ ({ totalProductCounts })","search_total":"æå° { queryString } çµæå ± { totalSearchCount } ç"},"special_collection":{"already_choose_and_buy_more":"å·²é¸è³¼ { quantity } ä»¶ï¼åè²· { quantity_more } ä»¶","buy_more_promotion":"è²·è¶å¤çè¶å¤åï¼","buy_quantity":"è²· { quantity } ä»¶ï¼","not_choose_items_yet":"å°æªé¸è³¼åå","not_choose_yet":"å°æªé¸è³¼","origin_price":"åå¹","over_cart_limit":"æ¸éè¶ é購買ä¸é","over_stock":"æ¸éè¶ é庫å","over_stock_count":"åå庫åå©é¤ { count } ä»¶","sales_price":"åªæ å¹","select":"é¸è³¼","selected":"å·²é¸è³¼","special_collection_discount_per":"享æ¯åææ£ { price }","special_collection_discount_price":"äº«ææ£ { price }","special_collection_discount_quantity1":"å³å¯äº« { quantity } ä»¶ { price }","special_collection_divided_by_ten":"享 { percentage } æåªæ "}},"validation":{"auth_to_add_notification":"è«å ç»å ¥æè¨»å以å©ç»è¨éç¥","check_email_immediately":"黿æ¥çä¿¡ç®±","click_to_resend_validate_email":"æ²ææ¶å°é»åéµä»¶ï¼è«æ¥çåå¾éµä»¶æ","click_to_resend_validate_sms":"æ²ææ¶å°ç°¡è¨ï¼è«é»æéæ°ç¼é","go_to_member":"å徿å¡","resend_too_frequently":"ç¼ééæ¼é »ç¹ï¼è«ç¨å¾ä¸åéå¾å試","resend_validation_email_success":"已鿰å¯é帳èé©èä¿¡","resend_validation_msg_failed":"éæ°å¯é帳èé©èè¨æ¯å¤±æï¼è«ç¨å¾å試","resend_validation_sms_success":"已鿰å¯é帳èé©èç°¡è¨","second":"ç§","select_variant":"è«é¸æå忬¾å¼","send_valid_email_again":"éæ°ç¼é","send_validation_email1":"å·²ç¼ééµä»¶è³æ¨ä¿¡ç®±{ customerEmail }","send_validation_email2":"è«æç §éµä»¶æç¤ºå®æå¸³èåç¨","send_validation_sms1":"å·²éç°¡è¨è³æ¨ææ©{ customerMobile }","send_validation_sms2":"è«æç §ç°¡è¨æç¤ºå®æå¸³èåç¨","validate_your_account":"é差䏿¥ï¼å®æé©èå³å¯åç¨å¸³è","wait_to_send_valid_email":"({ seconds })éæ°ç¼é"}}}}, 144 hasI18nInContextEditing: false, 145 shopMultipleCurrenciesCheckout: false, 146 hasLocalizedShopPriceFormat: true, 147 } 148 </script>
148 149 150 151
151<script 152 src="//cdn-general.cybassets.com/frontend/shop/tolgeeIntegration-3a2e378145f8a165.js"> 153 </script>
153 154
154<script defer> 155 /* 156 * Enable in-context translation for Liquid part on the page. 157 * This must be executed last to prevent conflicts with other Vue apps. 158 * So put it to `onload`, which will be executed after DOM ready's app mount 159 */ 160 window.onload = function() { 161 if ( 162 window.shopScriptHelper && 163 window.shopScriptHelper.hasI18nInContextEditing 164 ) { 165 window.initTolgeeForLiquid() 166 } 167 } 168 </script>
168 169
170<script> var google_con_event_labels = []</script>
vendor: 1 bytes, line 170
170
171<script src="//cdn-general.cybassets.com/frontend/shop/pageEventHandler-3a2e378145f8a165.js"></script>
vendor: 1 bytes, line 171
171
172<script src="//cdn-general.cybassets.com/frontend/shop/globalAnalysis-e4c650eb0b.js"></script>
172 173
173<script> 174 window.c12t = {"customer_id":null}; 175 </script>
175 176 177 <meta name="request-id" content="FDF9BF5533377FC3A19808155E71D5A2"/> 178 179<link rel="canonical" href="https://www.carryongarden.com/">
180<script src="//cdn-general.cybassets.com/frontend/shop/carousel-3a2e378145f8a165.js"></script>
180 181
181<script> 182 window.parent.postMessage({ type: 'previewShopInit', currentUrl: window.location.href }, '*'); 183 </script>
183 184
185<script src="//cdn-general.cybassets.com/frontend/appStoreSDK/main.2798231628aa7fab87a9.js"></script>
vendor: 1 bytes, line 185
185
186<script>window.CYBERBIZ_AppScriptSettings = {"shop_add_ons":"W3sidmVuZG9yX3R5cGUiOiJDWUJFUkJJWiBHb29nbGUgQW5hbHl0aWNzIDQi\nLCJhcHBfaWQiOiJRVWo1WnFvZUlPUjlaM2JaS2trMG44N3l5a0FpOWU0NURE\naDJ0YlFnaUJBIiwic2V0dGluZ3MiOnsiZ3RhZ19pZCI6IkctSDJEODc3U1I2\nSywgRy00QjdSSzdGSFdIIn19LHsidmVuZG9yX3R5cGUiOiJHb29nbGUgQW5h\nbHl0aWNzIDQiLCJhcHBfaWQiOiJSYkpWMTVFcVZWOHJ1Umo3NVlmV3Z1RUlD\nRm90Q0FPZm0xSDZtZ3hyNkZBIiwic2V0dGluZ3MiOnsiZ3RhZ19pZCI6Ikct\nWTFKTlBSMjhFUCJ9fSx7InZlbmRvcl90eXBlIjoiQ2hhdCBCb3giLCJhcHBf\naWQiOiJjOWQ4M2YwOTk2MTc0ZmJiYTg2ZWJhMDQxYWU4OThhMiIsInNldHRp\nbmdzIjp7IndpZGdldF9rZXkiOiJHSllVMjJZUXFEdDhwRWxFIn19LHsidmVu\nZG9yX3R5cGUiOiJEaWdpdGFsIEludGVsbGlnZW5jZSBUcmFja2VyIiwiYXBw\nX2lkIjoiMWI1MGE4NmRjMmQxNDE4Mzg4ZmRlZGY3YTBkNDM5YWUiLCJzZXR0\naW5ncyI6e319XQ==\n"} 187</script>
vendor: 1 bytes, line 187
187
188<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/9d6f4550aad572e9f70abb70ae5a6552482cf617ea5e4d5a32ed4ebbb5d60d54.js"></script>
vendor: 1 bytes, line 188
188
189<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/a810ec58aab67d16f8de1c4adf06fc7cc9f4477ec503b9cb1a998741bc692652.js"></script>
vendor: 1 bytes, line 189
189
190<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/8766542902afa60f4adda3c555c06025d2c27771ea85a6fc657a91cddbe5c59f.js"></script>
vendor: 1 bytes, line 190
190
191<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/35cd1f36a4a855bacbaa53900f8e17b376d4cab44c73812eef261aef6435163d.js"></script>
vendor: 1 bytes, line 191
191
192<script>window.CYBERBIZ.initializeSDK.initialize();</script>
vendor: 1 bytes, line 192
192
193<script src="//cdn-general.cybassets.com/frontend/shop/setAffliateCookie-3a2e378145f8a165.js"></script>
193 194 195 196 197 <!-- LINE Tag Setting --> 198
198<script> 199 var ltas = [{"customerType":"account","tagId":"e2e5c2a1-c555-4ba1-836f-31bfa3508374"}]; 200 var lts = ["e2e5c2a1-c555-4ba1-836f-31bfa3508374"]; 201 </script>
201 202 <!-- End LINE Tag Setting --> 203 204 <!-- LINE Tag Base Code --> 205 <!-- Do Not Modify --> 206
206<script> 207 (function(g,d,o){ 208 g._ltq=g._ltq||[];g._lt=g._lt||function(){g._ltq.push(arguments)}; 209 var h=location.protocol==='https:'?'https://d.line-scdn.net':'http://d.line-cdn.net'; 210 var s=d.createElement('script');s.async=1; 211 s.src=o||h+'/n/line_tag/public/release/v1/lt.js'; 212 var t=d.getElementsByTagName('script')[0];t.parentNode.insertBefore(s,t); 213 })(window, document); 214 ltas.forEach(function(lta){ 215 _lt('init', { customerType: lta.customerType, tagId: lta.tagId }); 216 _lt('send', 'pv', [lta.tagId]); 217 }); 218 </script>
218 219 <noscript> 220 <img height="1" width="1" style="display:none" src="https://tr.line.me/tag.gif?c_t=lap&t_id=e317566c-9fe5-48de-bc28-d6a2d773853a&e=pv&noscript=1" /> 221 </noscript> 222 <!-- End LINE Tag Base Code --> 223 224
224<script> 225 window.addEventListener('load', function() { 226 _lt('send', 'cv', { type: 'PageView' }, lts); 227 }); 228 </script>
228 229 230
230<script> 231 window.addEventListener('load', function() { 232 $(document).on('sendAddToCartEvent', function() { 233 _lt('send', 'cv', { type: 'AddToCart' }, lts); 234 }); 235 $(window).on('addToCart', function() { 236 _lt('send', 'cv', { type: 'AddToCart' }, lts); 237 }); 238 }); 239 </script>
239 240 241 242 243 244 245 246 247 248 <style id="color_settings"> 249 :root { 250 251 --button: #13180d; 252 253 254 255 --button_text: #ffffff; 256 257 258 259 --accent: #f07d4a; 260 261 262 263 --heading: #000000; 264 265 266 267 --text: #bbb19e; 268 269 270 271 --price: #f07d4a; 272 273 274 275 --discount_price: #f07d4a; 276 277 278 279 --theme_bg: #FFFFFF; 280 281 282 283 --nav_logo_bg: #ffffff; 284 285 286 287 --nav_menu_bg: #ffffff; 288 289 290 291 --nav_menu_text: #000000; 292 293 294 295 --nav_menu_icon: #643114; 296 297 298 299 --footer_bg: #fff9f2; 300 301 302 303 --footer_text: #555555; 304 305 306 307 --checkout_button: #f07d4a; 308 309 310 311 --checkout_accent: #643114; 312 313 314 315 --product_border: #bbb19e; 316 317 318 319 --tips_text: #0C5460; 320 321 322 323 324 325 } 326</style> 327 328 329 330 331 332 <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 74 bytes, lines 332-333
332 333 <script async src="https://www.googletagmanager.com/gtag/js?id=
333G-H2D877SR6K
vendor: 22 bytes, lines 333-334
333"></script> 334
334<script> 335 window.dataLayer = window.dataLayer || []; 336 function gtag(){dataLayer.push(arguments);} 337 gtag('js', new Date()); 338 gtag('config', 'G-H2D877SR6K', {"groups":"cyberbiz","custom_map":{"dimension1":"shop_id","dimension2":"customer_id","dimension3":"infinite_scroll","dimension4":"dim_affiliate"},"shop_id":35832,"dim_affiliate":null}); 339 gtag('config', 'UA-64017614-1', {"groups":"cyberbiz","custom_map":{"dimension1":"shop_id","dimension2":"customer_id","dimension3":"infinite_scroll","dimension4":"dim_affiliate"},"shop_id":35832,"dim_affiliate":null}); 340 </script>
340 341
341<script> 342 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 343 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 344 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 345 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 346 347 ga('create', '', 'auto', {'name': 'cyberbiz'}); 348 ga('cyberbiz.require', 'displayfeatures'); 349 ga('cyberbiz.set', 'dimension1', '35832'); 350 ga('cyberbiz.require', 'ec'); 351 ga('cyberbiz.send', 'pageview'); 352 </script>
352 353 354
354<script>
vendor: 426 bytes, lines 354-361
354 355 !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod? 356 n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n; 357 n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; 358 t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, 359 document,'script','//connect.facebook.net/en_US/fbevents.js'); 360 361 fbq('init', '
361626172074831187
vendor: 38 bytes, lines 361-362
361', {}, {'agent':'plcyberbiz'}); 362
362fbq('track', "PageView", '', { eventID: "PageView_FDF9BF5533377FC3A19808155E71D5A2" }); 363 var facebook_pixel_id = '626172074831187'</script>
363 364 365 </head> 366 367 <body style="display: flex; flex-direction: column;" class=""><!-- Google Tag Manager (noscript) -->
vendor: 74 bytes, lines 367-368
367 368 <noscript><iframe src="//www.googletagmanager.com/ns.html?id=
368GTM-57LN3CKM
vendor: 105 bytes, lines 368-370
368" 369 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 370
370<!-- End Google Tag Manager (noscript) -->
vendor: 74 bytes, lines 370-372
370 371 <noscript><iframe 372 src="//www.googletagmanager.com/ns.html?id=
372GTM-TXD9LVJ
vendor: 117 bytes, lines 372-378
372" 373 height="0" 374 width="0" 375 style="display:none;visibility:hidden"> 376 </iframe></noscript> 377 378
378<!-- Navigation --> 379 <!-- cyb_snippet liquid_helper start -->
380<script> 381 function getDiscountPriceName() { 382 return "false" === "true" ? "" : ""; 383 } 384 385 function getDiscountPriceSuggestionName() { 386 return "false" === "true" ? "" : ""; 387 } 388 389 document.addEventListener('DOMContentLoaded', function() { 390 const languageHandle = Cookies.get("language"); 391 const defaultLanguage = {"handle":"zh-TW","currency_code":"TWD","title":"ç¹é«ä¸æ"}; 392 const languages = []; 393 const currency = window.shopScriptHelper.defaultCurrency; 394 const currencies = window.shopScriptHelper.currenciesInfo; 395 window.liquidHelper = { 396 shopInternational: false, 397 defaultLanguage: defaultLanguage, 398 language: languages.find(function(l) { 399 return l.handle === languageHandle; 400 }) || defaultLanguage, 401 shopMultipleCurrenciesCheckout: false, 402 shopMultipleCurrencies: false, 403 defaultCurrencyFormat: "NT${{amount_no_decimals}}", 404 defaultCurrency: currency, 405 getCurrency: function() { 406 const currencyValue = Cookies.get("currencyValue") || currency; 407 return currencies.find(function(c) { return c.code === currencyValue; } 408 )}, 409 getDefaultCurrency: function() { return currencies.find(function(c) { 410 return c.code === currency; 411 })}, 412 getAvailableCurrencies: function() { return currencies.map(c => c.code) },
413 getCurrencyFormatInfo: function(currency) { 414 const currencyInfo = currencies.find(c => c.code === currency) 415 return _.pick(currencyInfo, [ 416 'decimal_precision', 417 'symbol', 418 'money_format', 419 'unit', 420 'trailing_zeros', 421 'html_unit', 422 'code', 423 ]); 424 }, 425 cartQuantityLimit: (function() { 426 const limit = Number("0" || undefined); 427 return limit <= 0 || isNaN(limit) ? Number.POSITIVE_INFINITY : limit; 428 })(), 429 isFirstVariantSelected: false , 430 isImageColorsUsed: false , 431 isEmptyClickable: true , 432 hasAddBuyProduct: '' !== "" ? true : false, 433 hasPriceWithDiscountPlugin: 'false' ? true : false, 434 conversionBonus: 1, 435 hasLocalizedShopPriceFormat: true, 436 hasCustomerCartPlugin: true, 437 isCartEnabled: true, 438 cdnHost: '//cdn-general.cybassets.com', 439 hasShopCustomPasswordRulePlugin: false, 440 hasDisableProductQuantityValidation: false, 441 hasBreadcrumbReferrerEnabled: false, 442 }; 443 }); 444</script>
444 445 446<!-- cyb_snippet liquid_helper end --> 447
448<script src='//cdn-general.cybassets.com/frontend/shop/navbarSection-3a2e378145f8a165.js' type='text/javascript'></script>
448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465<style> 466 467 #navbar { 468 --navbar-pc-title-scale: 1.0; 469 --navbar-pc-body-scale: 1.0; 470 --navbar-mobile-title-scale: 1.0; 471 --navbar-mobile-body-scale: 1.0; 472 } 473 474 475 476 477 478</style> 479 480 481 <span id="navbar" class="drawer drawer--left font-size-setting-enabled"> 482 <header id="header" class="qk-w--100vw qk-pos--fixed qk-t--0 qk-l--0"> 483 484 485 486 <div id="announcement-bar"></div> 487 488 489 490 491 <div class="computer_nav qk-hidden--mobile "> 492 <div class="header_logo qk-bg--nav_logo_bg"> 493 <div class="qk-pos--rel"> 494 <div class="qk-text--center"> 495 <!-- logo start --> 496 497 <nav class="logo qk-display--il_bk"> 498 <a href="/" class="qk-w--100"> 499 <img 500 src="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b" 501 class="qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--pc_logo qk-hidden--mobile" 502 style="width: auto; height: 52px;" 503 alt="" 504 height="52" 505 width="auto" 506 > 507 </a> 508 </nav> 509 510 <!-- logo end --> 511 <!-- tool-nav start --> 512 513 <!-- cyb_snippet tool_nav start --> 514 515 516 517 518 519 520<nav class="tool-nav qk-pos--rel qk-float--r qk-display--flex"> 521 <ul class="link_shelf_top qk-display--flex qk-flex--row qk-justify--end qk-align--center qk-pos--abs qk-r--0"> 522 523 524 <!-- member --> 525 526 <li class="customer_account qk-pos--rel qk-pd--05"> 527 <div class="dropdown qk-pos--static"> 528 <div class="qk-cursor--pointer" data-toggle="dropdown"> 529 <div data-icon-type="custom_icon_type_account"></div> 530 <span class="text"></span> 531 </div> 532 <div class="member qk-dropdown_menu dropdown-menu qk-pos--abs qk-r--0 qk-bd--default qk-bd--product_border qk-bg--theme_bg" role="menu"> 533 <ul id="customer-logined-menu" style="display: none"> 534 <li> 535 <div class="qk-fs--body qk-text--heading"> 536 <p class="customer-name qk-whitespace-break-spaces"></p> 537 <p>æ¨å¥½ï¼</p> 538 </div> 539 </li> 540 </ul> 541 <ul id="customer-not-login-menu"> 542 <li class="button qk-text--center"> 543 <a href="/account/login" class="btn-login qk-btn qk-btn--lg qk-btn--primary qk-w--100">æå¡ç»å ¥</a> 544 </li> 545 <li class="button qk-text--center"> 546 <a href="/account/signup" class="btn-orders qk-btn qk-btn--lg qk-btn--secondary qk-w--100 qk-bg--transparent">è¨»åæ°æå¡</a> 547 </li> 548 </ul> 549 <span class="menu-bd qk-bd_t--default qk-bd--product_border"></span> 550 <ul class="member-menu qk-bd_t--default qk-bd--product_border"> 551 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 552 <a href="/account/index" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">æç帳æ¶</a> 553 </li> 554 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 555 <a href="/account/orders" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">è¨å®æ¥è©¢</a> 556 </li> 557 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 558 <a href="/account/coupons" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">å°å±¬åªæ å¸</a> 559 </li> 560 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 561 <a href="/account/tracking_items" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">æ¶èæ¸ å®</a> 562 </li> 563 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg customer-logout-li" style="display: none"> 564 <a href="/account/logout" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">æå¡ç»åº</a> 565 </li> 566 </ul> 567 </div> 568 </div> 569 </li> 570 571 <!-- for money symbol --> 572 <div id="money-symbol" data-money-symbol="NT${{amount_no_decimals}}" hidden></div> 573 <!-- cart --> 574 575 <li class="cart qk-pos--rel qk-pd--05"> 576 <!--é»è ¦ççè³¼ç©è»é¸å®--> 577 <div class="dropdown qk-pos--static"> 578 <div data-toggle="dropdown" class="shopcart qk-cursor--pointer" > 579 <div data-icon-type="custom_icon_type_cart"></div>
580 <span class="global-cart-count qk-circle qk-circle--sm qk-bg--accent qk-text--white qk-vert--mid qk-pos--abs qk-bd" style="display: none;">0</span> 581 <span class="global-cart-loading"></span> 582 </div> 583 <div class="qk-dropdown_menu dropdown-menu qk-pos--abs qk-r--0 qk-bd--default qk-bd--product_border qk-bg--theme_bg" role="menu"> 584 <div class="cart_list global-cart-item-list custom-scrollbar qk-of_x--hidden qk-of_y--scroll qk-of_y--overlay qk-display--flex qk-flex--column qk-justify--between three_to_four_scale"></div> 585 <p class="cart_empty qk-fs--body qk-text--heading qk-text--center">ç®åçè³¼ç©è»æ¯ç©ºçï¼</p> 586 <ul> 587 <li class="button qk-text--center"> 588 <a class="btn-checkout qk-btn qk-btn--lg qk-btn--primary qk-w--100" href="/cart" style="display: none">ç«å³è³¼è²·</a> 589 <a class="btn-tracking qk-btn qk-btn--lg qk-btn--secondary qk-w--100 qk-bg--transparent" href="/account/tracking_items">å徿¶èæ¸ å®</a> 590 </li> 591 </ul> 592 </div> 593 </div> 594 </li> 595 596 <!-- search --> 597 598 <li class="search qk-pos--rel qk-pd--05" id="search-icon"> 599 <div class="dropdown qk-pos--static"> 600 <div class="qk-cursor--pointer" data-toggle="dropdown"> 601 <div data-icon-type="custom_icon_type_search"></div> 602 </div> 603 <div class="qk-dropdown_menu dropdown-menu qk-pos--abs qk-r--0 qk-bd--default qk-bd--product_border qk-bg--theme_bg" role="menu"> 604 <div class="search-area qk-display--flex qk-flex--row qk-justify--start qk-align--center qk-vert--mid"> 605 <form action="/search" class="form-inline qk-search_form qk-display--flex qk-justfify--between qk-align--center qk-flex--1"> 606 <input class="search-input form-control qk-inputbox qk-inputbox--lg qk-flex--1 qk-w--100 qk-bg--transparent qk-text--heading" type="search" placeholder="æå°" aria-label="Search" name="q" value="" /> 607 <button class="search-btn qk-btn qk-btn--lg qk-btn--primary qk-pd--0" type="submit">æå°</button> 608 </form> 609 </div> 610 </div> 611 </div> 612 </li> 613 614 <!-- express delivery --> 615 616 </ul> 617</nav> 618 619<!-- cyb_snippet tool_nav end --> 620 621 <!-- tool-nav end --> 622 </div> 623 </div> 624 </div> 625 626 <div class="header_nav qk-bg--nav_menu_bg"> 627 <div class="qk-pd_x--15"> 628 <div class="qk-pos--relative center"> 629 <!-- main-nav start --> 630 <nav class="main_nav qk-display--init"></nav> 631 <!-- main-nav end --> 632 </div> 633 </div> 634 </div> 635 636 </div> 637 638 <div class="qk-hidden--pc "> 639 <!-- mobile-nav start --> 640 <nav class="mobile-nav qk-bg--nav_logo_bg"> 641 <ul class="qk-display--flex qk-flex--row qk-justify--between qk-align--center qk-pd_x--05 qk-pd_y--0"> 642 <!-- menu --> 643 644 <li class="sidebar-menu-icon drawer-toggle qk-text--center qk-pd_x--05 qk-pd_y--0 qk-display--flex qk-align--center"> 645 <div data-icon-type="custom_icon_type_menu"></div> 646 </li> 647 648 <!-- logo --> 649 650 <li class="logo qk-pos--abs qk-center--x qk-pd_y--0"> 651 652 <a href="/" class="qk-display--il_flex qk-align--center qk-h--100 qk-hidden--phone"> 653 <img 654 src="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b" 655 height="25" 656 width="auto" 657 alt="" 658 > 659 </a> 660 661 662 <a href="/" class="qk-display--il_flex qk-align--center qk-h--100 qk-hidden--tablet"> 663 <img 664 src="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b" 665 height="25" 666 width="auto" 667 alt="" 668 > 669 </a> 670 671 </li> 672 673 674 <!-- search --> 675 676 <li class="search qk-text--center qk-pd_x--05 qk-pd_y--0 qk-display--flex qk-align--center qk-mg_l--auto"> 677 <div class="dropdown qk-pos--static qk-text--center"> 678 <div class="qk-cursor--pointer" data-toggle="dropdown"> 679 <div data-icon-type="custom_icon_type_search"></div> 680 </div> 681 <div 682 class="qk-dropdown_menu dropdown-menu qk-w--100vw qk-bg--theme_bg qk-bd--default qk-bd--product_border qk-mg--0" 683 role="menu" 684 > 685 <div class="search-area qk-display--flex qk-flex--row qk-justify--start qk-align--center qk-sp_bt--5 qk-w--100"> 686 <form action="/search" class="form-inline qk-display--flex qk-justfify--center qk-flex--1"> 687 <div class="form-inline qk-search_form qk-display--flex qk-justfify--center qk-align--center qk-flex--1"> 688 <input 689 class="form-control qk-flex--1 qk-inputbox qk-inputbox--lg qk-bg--trans
689parent qk-text--heading" 690 type="search" 691 placeholder="æå°" 692 aria-label="Search" 693 name="q" 694 value="" 695 > 696 <button class="search-btn qk-btn qk-btn--lg qk-btn--primary qk-pd--0" type="submit"> 697 æå° 698 </button> 699 </div> 700 </form> 701 </div> 702 </div> 703 </div> 704 </li> 705 706 <!-- express delivery --> 707 708 709 </ul> 710 </nav> 711 <!-- mobile-nav end --> 712 </div> 713 714 </header> 715 716 <!-- Sidebar --> 717 <nav class="drawer-nav drawer-nav_width qk-bg--nav_menu_bg " role="navigation"> 718 <div class="drawer-menu"> 719 <!-- cyb_snippet side_menu start --> 720 721 722<ul id="index_sidebar_shelf_top" class="sidebar qk-pd_b--1"> 723 724 <li class="logo qk-pos--rel qk-bg--nav_logo_bg qk-pd_x--1 qk-pd_y--05"> 725 <a href="/" class="qk-pd--0"> 726 <img src="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b" height="32" width="auto" alt="logo"> 727 </a> 728 <button class="drawer-toggle qk-pos--abs qk-bg--transparent qk-pd--0"></button> 729 </li> 730 731 732 733 734 735 <!-- cyb_snippet components/side_menu/menu start --> 736 737 <li class="category_title qk-fs--breadcrumb qk-bd--nav_menu_text qk-text--nav_menu_text qk-bd_b--default qk-fw--500">主é¸å®</li> 738 739 740 741 742 743 <li class="qk-pos--rel qk-pd--0"> 744 745 <a class="qk-fw--bold qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/">é¦é </a> 746 747 </li> 748 749 750 751 752 753 <!-- cyb_snippet components/side_menu/collection_all start --> 754 755 756 757 758 <li class="qk-pos--rel qk-pd--0"> 759 <button class="collection_all bt-toggle qk-display--il_bk qk-w--100 qk-text--left qk-bg--nav_menu_bg qk-bd--none qk-pos--rel qk-fw--bold" data-toggle="collapse" data-target=".collapse_collection_all_index_sidebar_2" aria-expanded=" true "> 760 <a href="/collections/all" class="collection_all_link qk-display--il_bk qk-text--left qk-fs--body qk-fw--bold qk-bg--nav_menu_bg qk-text--nav_menu_text"> 761 ååå表 762 </a> 763 </button> 764 <ul id="index_sidebar_collection_all_shelf_second_2" class="collapse_collection_all_index_sidebar_2 collapse shelf_second qk-pd--0 show "> 765 766 767 768 <li class="qk-pos--rel qk-pd--0"> 769 <button class="collection_all qk-fw--500 bt-toggle qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg " data-toggle="collapse" data-target=".collapse_collection_all_index_sidebar_2_1" aria-expanded=" true "> 770 <a href="/collections/frontpage" class="qk-fw--500 collection_all_link qk-display--il_bk qk-text--left qk-fs--body qk-text--nav_menu_text"> 771 é¦é åå 772 </a> 773 </button> 774 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_1 collapse shelf_third qk-pd--0 show "> 775 776 </ul> 777 </li> 778 779 780 781 <li class="qk-pos--rel qk-pd--0"> 782 <button class="collection_all qk-fw--500 bt-toggle qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg " data-toggle="collapse" data-target=".collapse_collection_all_index_sidebar_2_2" aria-expanded=" true "> 783 <a href="/collections/food" class="qk-fw--500 collection_all_link qk-display--il_bk qk-text--left qk-fs--body qk-text--nav_menu_text"> 784 æçé£å ç³»å 785 </a> 786 </button> 787 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_2 collapse shelf_third qk-pd--0 show "> 788 789 <li class="qk-pos--rel qk-pd--0"> 790 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/vinegar">夿³éé ææ©æé (400ml)</a> 791 </li> 792 793 <li class="qk-pos--rel qk-pd--0"> 794 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/nainai">ææ©æé2å ¥æè¢çµ</a> 795 </li> 796 797 <li class="qk-pos--rel qk-pd--0"> 798 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/rice">椪ãç±³é¦</a> 799 </li> 800 801 <li class="qk-pos--rel qk-pd--0"> 802 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/pokan">ç¢å°ç´éï½éç®æ¤ªæ</a> 803 </li> 804 805 </ul> 806 </li> 807 808 809 810 <li class="qk-pos--rel qk-pd--0"> 811 <button class="collection_all qk-fw--500 bt-toggle qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg " data-toggle="collapse" data-target=".collapse_collection_all_index_sidebar_2_3" aria-expanded=" true "> 812 <a href="/collections/æå¥½å éçµ" class="qk-fw--500 collection_all_link qk-display--il_bk qk-text--left qk-fs--body qk-text--nav_menu_text"> 813 æå¥½å éçµ 814 </a> 815 </button> 816 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_3 collapse shelf_third q
816k-pd--0 show "> 817 818 <li class="qk-pos--rel qk-pd--0"> 819 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/package">ãåé¥éå®çµãææ©æ¸ æ½å大ç¾å¥½å®¶åºçµ</a> 820 </li> 821 822 <li class="qk-pos--rel qk-pd--0"> 823 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/refill">ãå¤è²¨å°åãææ©æ¸ æ½å大大ç¶(1000ml)</a> 824 </li> 825 826 <li class="qk-pos--rel qk-pd--0"> 827 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/firstpackage">ãæ°æé¦é¸ãææ©æ¸ æ½åé«é©çµ</a> 828 </li> 829 830 <li class="qk-pos--rel qk-pd--0"> 831 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/c1314">ãæå¾æ¶èãææ©æ¸ æ½åå代å è£</a> 832 </li> 833 834 <li class="qk-pos--rel qk-pd--0"> 835 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/nainai">ææ©æé2å ¥æè¢çµ</a> 836 </li> 837 838 </ul> 839 </li> 840 841 842 843 <li class="qk-pos--rel qk-pd--0"> 844 <button class="collection_all qk-fw--500 bt-toggle qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg " data-toggle="collapse" data-target=".collapse_collection_all_index_sidebar_2_4" aria-expanded=" true "> 845 <a href="/collections/cleanlife" class="qk-fw--500 collection_all_link qk-display--il_bk qk-text--left qk-fs--body qk-text--nav_menu_text"> 846 ææ·¨æ¥å¸¸çµ 847 </a> 848 </button> 849 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_4 collapse shelf_third qk-pd--0 show "> 850 851 <li class="qk-pos--rel qk-pd--0"> 852 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/wenszu">ãéé10çµãæå¶¼ã馿°æ¸ æ½ç³»å</a> 853 </li> 854 855 <li class="qk-pos--rel qk-pd--0"> 856 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/newpack">ãæ°åä¸å¸ãææ·¨å± å®¶çµå</a> 857 </li> 858 859 <li class="qk-pos--rel qk-pd--0"> 860 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/c1314">ãæå¾æ¶èãææ©æ¸ æ½åå代å è£</a> 861 </li> 862 863 <li class="qk-pos--rel qk-pd--0"> 864 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/mmnn">ãéé100ç¶ãå¿æåéãææ©æ¸ æ½å</a> 865 </li> 866 867 <li class="qk-pos--rel qk-pd--0"> 868 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/cleanmuse">ææ©æ¸ æ½å (500ml)- 泡泡ç¶</a> 869 </li> 870 871 <li class="qk-pos--rel qk-pd--0"> 872 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/cleansoap">ææ©æ¸ æ½å (500ml)-å´å´ç¶</a> 873 </li> 874 875 <li class="qk-pos--rel qk-pd--0"> 876 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/recycle1000">ææ©æ¸ æ½å(1000ml)- 大大ç¶</a> 877 </li> 878 879 </ul> 880 </li> 881 882 883 884 <li class="qk-pos--rel qk-pd--0"> 885 <button class="collection_all qk-fw--500 bt-toggle qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg " data-toggle="collapse" data-target=".collapse_collection_all_index_sidebar_2_5" aria-expanded=" true "> 886 <a href="/collections/æçé£å çµ" class="qk-fw--500 collection_all_link qk-display--il_bk qk-text--left qk-fs--body qk-text--nav_menu_text"> 887 æçé£å çµ 888 </a> 889 </button> 890 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_5 collapse shelf_third q
890k-pd--0 show "> 891 892 <li class="qk-pos--rel qk-pd--0"> 893 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/gummy">ãæééå®ã椪ãæè»ç³</a> 894 </li> 895 896 </ul> 897 </li> 898 899 900 901 <li class="qk-pos--rel qk-pd--0"> 902 <button class="collection_all qk-fw--500 bt-toggle qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg " data-toggle="collapse" data-target=".collapse_collection_all_index_sidebar_2_6" aria-expanded=" true "> 903 <a href="/collections/2026年椪æé è³¼" class="qk-fw--500 collection_all_link qk-display--il_bk qk-text--left qk-fs--body qk-text--nav_menu_text"> 904 2026年椪æé è³¼ 905 </a> 906 </button> 907 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_6 collapse shelf_third qk-pd--0 show "> 908 909 <li class="qk-pos--rel qk-pd--0"> 910 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-text--nav_menu_text qk-bg--nav_menu_bg qk-fs--body" href="/products/pokan">ç¢å°ç´éï½éç®æ¤ªæ</a> 911 </li> 912 913 </ul> 914 </li> 915 916 </ul> 917 </li> 918 919 920<!-- cyb_snippet components/side_menu/collection_all end --> 921 922 923 924 925 926 <li class="qk-pos--rel qk-pd--0"> 927 928 <a class="qk-fw--bold qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/blogs/news">ææ°åæ </a> 929 930 </li> 931 932 933 934 935 936 <li class="qk-pos--rel qk-pd--0"> 937 938 <a class="qk-fw--bold qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/pages/about-us">éæ¼æå</a> 939 940 </li> 941 942 943 944 945 946 <li class="qk-pos--rel qk-pd--0"> 947 948 <a class="qk-fw--bold qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/pages/常è¦qa">常è¦Q&A</a> 949 950 </li> 951 952 953 954 955 956 <li class="qk-pos--rel qk-pd--0"> 957 958 <a class="qk-fw--bold qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/blogs">é¨è½æ ¼ç¸½è¦½</a> 959 960 </li> 961 962 963
964<script> 965 $('button a').on('click', function(e) {e.stopPropagation()}); 966</script>
966 967 968<!-- cyb_snippet components/side_menu/menu end --> 969 970 971 972 973 <li class="category_account-title qk-bd--nav_menu_text qk-fs--breadcrumb qk-text--nav_menu_text qk-bd_y--default qk-fw--500">帳æ¶</li> 974 <li class="qk-pos--rel qk-pd--0"> 975 <div class="customer-logined-menu qk-display--il_bk qk-w--100 qk-text--left" style="display: none"> 976 <a href="/account/index" class="qk-text--nav_menu_text qk-fw--bold qk-fs--body">æç帳æ¶</a> 977 </div> 978 </li> 979 <li class="qk-pos--rel qk-pd--0"> 980 <div class="customer-logined-menu qk-display--il_bk qk-w--100 qk-text--left" style="display: none"> 981 <a href="/account/orders" class="qk-text--nav_menu_text qk-fw--bold qk-fs--body">è¨å®æ¥è©¢</a> 982 </div> 983 </li> 984 <li class="qk-pos--rel qk-pd--0"> 985 <div class="customer-logined-menu qk-display--il_bk qk-w--100 qk-text--left" style="display: none"> 986 <a href="/account/logout" class="qk-text--nav_menu_text qk-fw--bold qk-fs--body">æå¡ç»åº</a> 987 </div> 988 </li> 989 <li class="qk-pos--rel qk-pd--0"> 990 <a href="/account/login"> 991 <div class="customer-not-login-menu qk-bd--nav_menu_text qk-bg--nav_menu_text customer-not-login-menu_login qk-display--il_flex qk-justify--center qk-align--center qk-w--100 qk-text--center "> 992 <span class="qk-text--nav_menu_bg qk-fw--500 qk-fs--body"> 993 æå¡ç»å ¥ 994 </span> 995 </div> 996 </a> 997 </li> 998 <li class="qk-pos--rel qk-pd--0"> 999 <a href="/account/signup"> 1000 <div class="customer-not-login-menu qk-bd--nav_menu_text customer-not-login-menu_signup qk-display--il_flex qk-justify--center qk-align--center qk-w--100 qk-text--center qk-bd--nav_menu_text qk-bd--default"> 1001 <span class="qk-text--nav_menu_text qk-fs--body qk-fw--500"> 1002 è¨»åæ°æå¡ 1003 </span> 1004 </div> 1005 </a> 1006 </li> 1007 1008 1009 1010 1011 1012</ul> 1013 1014<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/sidebar-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 1015
1016<script> 1017 $(document).ready(function(){ 1018 // å´éé¸å® 1019 if ($('.drawer').length){ 1020 $('.drawer').drawer(); 1021 $('.bt-toggle').click(function(){ 1022 setTimeout(function(){ 1023 $('.drawer')[0].iScroll.refresh() 1024 },500) 1025 }) 1026 } 1027 }); 1028</script>
1028 1029 1030 1031<!-- cyb_snippet side_menu end --> 1032 1033 </div> 1034 </nav> 1035 <!-- Bottombar --> 1036 1037 <div 1038 id="mobile-bottom-bar" 1039 class="qk-display--flex qk-justify--around qk-bg--nav_logo_bg qk-w--100vw qk-pos--fixed qk-b--0 qk-hidden--pc" 1040 > 1041 <!-- home --> 1042 <div class="qk-display--flex qk-justify--center qk-align--center qk-text--center qk-pd_x--05 qk-pd_y--0 qk-flex--1"> 1043 <a id="home-nav-icon" href="/"> 1044 <div data-icon-type="custom_icon_type_home"></div> 1045 </a> 1046 </div> 1047 <!-- tracking items --> 1048 <div class="qk-display--flex qk-justify--center qk-align--center qk-text--center qk-pd_x--05 qk-pd_y--0 qk-flex--1"> 1049 <a href="/account/tracking_items"> 1050 <div data-icon-type="custom_icon_type_tracking_items" c></div> 1051 </a> 1052 </div> 1053 <!-- cart --> 1054 1055 <div class="qk-display--flex qk-justify--center qk-align--center qk-text--center qk-pd_x--05 qk-pd_y--0 qk-flex--1"> 1056 <a 1057 href="/cart" 1058 class="qk-display--il_flex qk-flex--row qk-justify--center qk-align--center qk-vert--mid qk-pos--rel" 1059 > 1060 <div data-icon-type="custom_icon_type_cart"></div> 1061 <span 1062 class="number global-cart-count qk-circle qk-circle--sm qk-bg--accent qk-text--white qk-text--center qk-vert--mid qk-pos--abs" 1063 style="display: none;" 1064 >0</span 1065 > 1066 </a> 1067 </div> 1068 1069 <!-- member --> 1070 1071 <div class="qk-display--flex qk-justify--center qk-align--center qk-text--center qk-pd_x--05 qk-pd_y--0 qk-flex--1"> 1072 <a id="customer-phone-nav-icon" href="/account/login"> 1073 <div data-icon-type="custom_icon_type_account"></div> 1074 </a> 1075 </div> 1076 1077 </div> 1078 1079 1080 </span> 1081 1082<div id="index-popular-tags"></div> 1083 1084<style id="timer_color"> 1085 :root { 1086 1087 --timer_text: #ffffff; 1088 1089 1090 1091 --timer_bg: #000000; 1092 1093 } 1094</style> 1095
1096<script> 1097 window.language = {"account_name":"æ¶å","add_cart_error_try_again":"å å ¥è³¼ç©è»æèª¤ï¼è«éæ°å試","add_to_cart":"å å ¥è³¼ç©è»","addcart_rate_limit_desc":"ç§å¾å¯åè©¦ä¸æ¬¡ï¼å»ºè°æ¨åç卿¤é é¢ã","address1":"詳細é貨å°åï¼è·¯/å··/å¼/æ¨","all_filters":"ææç¯©é¸æ¢ä»¶","apply_fail":"ç³è«å¤±æ","apply_return":"é貨ç³è«","apply_return_success":"æ¨çé貨ç³è«å·²æç«","apply_success":"ç³è«æå","arrive_soon":"å³å°å°è²¨","articles_total":"å ± {{ totalArticleCounts }} ç¯æç« ","bank_account":"éè¡å¸³è","bank_branch_name":"åè¡å稱","bonus_redemption":"ç´ å©æè³¼","cancel":"åæ¶","cart_price_total":"çµå¸³éé¡ç´","check_order":"è¨å®æ¥è©¢","choose_branch_bank":"è«é¸æåè¡","choose_return_reason":"è«é¸æé貨åå ","city":"åå¸","common_price":"å®å¹: ","comply_group_number":"符å {{comply_group_number}} çµåªæ ï¼","confirm":"確èª","confirm_return":"ç³è«é貨","confirm_submit":"éåº","congratulations_for_verify_mobile_success":"æåï¼æ¨å·²æåé©èæ¨çææ©ï¼","contact_form":"è¯çµ¡æå","continue_reading":"ç¹¼çºé±è®","country_placeholder":"è«é¸æåå®¶","coupon_free_shipping":"å é叿æµ","coupon_items":"åªæ 叿æ£é ç®","date_error":"æ¥æé¯èª¤","default_sort":"é è¨æåº","deliver_error":"å¯éååé¯èª¤","discount_detail":"ææ£æç´°","email":"é»åéµä»¶","email_placeholder":"è«è¼¸å ¥æ¨çé»åéµä»¶ï¼ä¾ï¼[email protected]","enter_account_name":"è«è¼¸å ¥æ¶å","enter_bank_account":"è«è¼¸å ¥éè¡å¸³è","enter_return_reason":"è«å¡«å¯«é貨åå ...","error_message":"é©èç°¡è¨ç¼çé¯èª¤ï¼è«ç¨å¾å試ã","fail_operation":"æä½å¤±æ!","filter_button":"篩é¸","filter_no_result":"徿±æï¼ç¡åå符åç¯©é¸æ¢ä»¶","free":"å è²»","gift_price":"å è³¼å¹","gift_purchase":"滿é¡/ä»¶è´","go_check_email":"è«è³ä¿¡ç®±æ¶åä¿¡ä»¶","group_percent_discount":"çµåå §ååæ{{discount}}æ","has_stock":"å°æåº«å ","include_discount_and_shipping_fee":"å«åªæ ææ£èéè²»","invalid_email":"é䏿¯ææçé»åéµä»¶","invalid_name":"å§åçºå¿ å¡«","invalid_phone_number":"è¯çµ¡é»è©±çºå¿ å¡«","invalid_question_content":"åé¡å §å®¹çºå¿ å¡«","keep_shopping":"ç¹¼çºè³¼ç©","keyin_address1":"è«å¡«å¯«è©³ç´°é貨å°åï¼è·¯/å··/å¼/æ¨","keyin_city":"è«è¼¸å ¥åå¸","keyin_zip":"è«è¼¸å ¥éµéåè","less_then_one":"æ¸éä¸å¾å°æ¼1","line_item_quantity":"æ¸éï¼{{ lineItemQuantity }}","literal_points":"é»","login_btn":"æå¡ç»å ¥","mail_send_fail":"ä¿¡ä»¶å¯é失æ","message_confirmation_token_error":"ç°¡è¨é©è碼æèª¤","messenger_error_please_try_again":"ç°¡è¨å¯éç¼çé¯èª¤ï¼è«ç¨å¾å試ã","mobile_number_error":"ææ©è碼æèª¤","name":"å§å","name_placeholder":"è«è¼¸å ¥æ¨çå§å","new_password_is_sent":"å·²éåºæ°å¯ç¢¼","new_product_defect":"æ°åççµ","nn_collection_save_more_money_title":"å¯äº«ï¼è²· {{quantity}} ä»¶ {{price}} å åªæ ","no_stock":"庫åä¸è¶³","notification_enabled":"å·²ç»è¨è£è²¨éç¥","notify_me_when_stock_arrives":"å·²å®å®ï¼è²¨å°éç¥æ","onsale":"ç¹å¹","order_date":"è¨è³¼æ¥æ","order_number":"è¨å®ç·¨è","order_retrun_confirm":"æ¨ç¢ºèªè¦ç³è«é貨?","ori_price":"åå¹","others":"å ¶ä»","over_cart_limit":"æ¸éè¶ é購買ä¸é","over_product_quantity":"æ¸éè¶ é庫å","over_stock_count":"åå庫åå©é¤ {{ count }} ä»¶","over_stock_quantity":"è¶ éåº«åæ¸é","phone_number":"è¯çµ¡é»è©±","phone_number_placeholder":"è«è¼¸å ¥è¯çµ¡é»è©±","piece":"{{quantity}} ä»¶","please_choose_bank":"è«é¸æéè¡","please_choose_product":"è«é¸æå忬¾å¼","please_choose_variant":"è«é¸æå忬¾å¼","please_enter_number":"è«è¼¸å ¥æ¸å","please_reselect":"è«éæ°è¼¸å ¥ç¯©é¸","please_send_and_confirm_verify_code":"è«å ç¼é並確èªç°¡è¨é©è碼","pre_order":"é è³¼åå","price_asc":"广 ¼ç±ä½å°é«","price_desc":"广 ¼ç±é«å°ä½","price_filter":"广 ¼","price_includes_tax":"(å §å«æ¶è²»ç¨ ï¼{{ tax }})","product_content_defect":"ååå §å®¹ä¸å ¨","product_defect":"ååæç¼ºé·","product_limit_buy":"æ¤ååéè³¼ {{ count }} ä»¶","product_rate_limit_btn":"éæ°é²å ¥ååé ","product_rate_limit_desc":"ç§å¾å¯éæ°é²å ¥ååé ï¼å»ºè°æ¨åç卿¤é é¢ã","product_rate_limit_title":"ç®åæ¶è³¼äººæ½®ç¾å¤ï¼è«èå¿çå","product_rate_limit_warn":"è¥é¢éæ¤é é¢ï¼å¯è½æå»¶é·çå¾ æéã","product_sold":"å·²é·å®ï¼{{ productSold }}","products_total":"å ± {{ totalProductCounts }} ä»¶åå","quantity":"æ¸éï¼","quantity_over_product_stock":"æ¸éè¶ éåå庫å","question_content":"åé¡å
1097
§å®¹","question_content_placeholder":"è«è¼¸å
¥åé¡å
§å®¹","question_submit_fail":"ç¼çåé¡ï¼è«ç¨å¾å試","question_submit_success":"åé¡å·²æåéåºï¼æåå°ç¡å¿«èæ¨è¯ç¹«","question_type":"åé¡é¡å","reached_favorable":"å·²éåªæ ","recent_days_sold_desc":"æ¬é±ç±è³£","reenter_password_still_error":"éè¤è¼¸å
¥å¯ç¢¼æèª¤","refund":"鿬¾éé¡","refund_account":"鿬¾å¸³æ¶","refund_info":"鿬¾è³è¨","refund_invoice_check":"æ¬äººåæç¼ç¥¨ä½å»¢æãçæ¥äººé·è²¨éåé²è²¨éåºè²¨ææè®èæå®ãå°å
¨æ¬ç±{{ envoiceCompanyName }}èçï¼ä»¥å©å é鿬¾ä½æ¥ã妿é貨/æè®ï¼å°ç´æ¥éç«æè®å®ä¸å³è³è²¡æ¿é¨é»åç¼ç¥¨æ´åæåå¹³å°åèã","resend_verify_code":"éç¼é©è碼","reset_all_filters":"æ¸
餿æç¯©é¸","reset_filter_button":"æ¸
é¤ç¯©é¸","return":"è¿å","return_address":"é貨å°å","return_email_notification":"é貨ç³è«ä¿¡å·²å¯è³æ¨çä¿¡ç®±","return_info":"é貨è³è¨","return_instruction":"é貨說æ","return_msg_Australia":"1. 妿¶å°ååå¾ï¼ç¼ç¾æççµæç ´æï¼éè¦ç³è«æè²¨æé款ï¼è«ç¡éè³ãæç帳æ¶ãï¼é»æãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®ä¸ï¼é»æãç³è«é貨ãã\u003cbr\u003e 2. æ¶å°é貨ç³è«å¾ï¼æåæè¯ç¹«æ¨ï¼ä¸¦ååé貨æµç¨ãå¦ææ¨æä»»ä½é貨åé¡ï¼æ¨å¯ä»¥å¨ãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®æç´°ï¼çä¸åçç´éã è«ä¸è¦èªè¡é貨ã\u003cbr\u003e 3. éæè²¨æï¼è«ä¿æåå
è£å®æ´ï¼å
æ¬è³¼è²·çååãé
ä»¶ãè´åçï¼ã\u003cbr\u003e 4. 符åéè²¨è³æ ¼å¾ï¼ååºæåä¾ç
§æ¨ç仿¬¾æ¹å¼é款ã\u003cbr\u003e 5. 詳細çé貨è¦å®èæµç¨èªªæï¼è«å鱿¬åºçé貨æ¿çã\u003cbr\u003e","return_msg_Japan":"1. 妿¶å°ååå¾ï¼ç¼ç¾æççµæç ´æï¼éè¦ç³è«æè²¨æé款ï¼è«ç¡éè³ãæç帳æ¶ãï¼é»æãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®ä¸ï¼é»æãç³è«é貨ãã\u003cbr\u003e 2. æ¶å°é貨ç³è«å¾ï¼æåæè¯ç¹«æ¨ï¼ä¸¦ååé貨æµç¨ãå¦ææ¨æä»»ä½é貨åé¡ï¼æ¨å¯ä»¥å¨ãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®æç´°ï¼çä¸åçç´éã è«ä¸è¦èªè¡é貨ã\u003cbr\u003e 3. éæè²¨æï¼è«ä¿æåå
è£å®æ´ï¼å
æ¬è³¼è²·çååãé
ä»¶ãè´åçï¼ã\u003cbr\u003e 4. 符åéè²¨è³æ ¼å¾ï¼ååºæåä¾ç
§æ¨ç仿¬¾æ¹å¼é款ã\u003cbr\u003e 5. 詳細çé貨è¦å®èæµç¨èªªæï¼è«å鱿¬åºçé貨æ¿çã\u003cbr\u003e","return_msg_Japan_to_Taiwan":"1. 妿¶å°ååå¾ï¼ç¼ç¾æççµæç ´æï¼éè¦ç³è«æè²¨æé款ï¼è«ç¡éè³ãæç帳æ¶ãï¼é»æãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®ä¸ï¼é»æãç³è«é貨ãã\u003cbr\u003e 2. æ¶å°é貨ç³è«å¾ï¼æåæè¯ç¹«æ¨ï¼ä¸¦ååé貨æµç¨ãå¦ææ¨æä»»ä½é貨åé¡ï¼æ¨å¯ä»¥å¨ãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®æç´°ï¼çä¸åçç´éã è«ä¸è¦èªè¡é貨ã\u003cbr\u003e 3. éæè²¨æï¼è«ä¿æåå
è£å®æ´ï¼å
æ¬è³¼è²·çååãé
ä»¶ãè´åçï¼ã\u003cbr\u003e 4. 符åéè²¨è³æ ¼å¾ï¼ååºæåä¾ç
§æ¨ç仿¬¾æ¹å¼é款ã\u003cbr\u003e 5. 詳細çé貨è¦å®èæµç¨èªªæï¼è«å鱿¬åºçé貨æ¿çã\u003cbr\u003e","return_msg_SEA":"1. 妿¶å°ååå¾ï¼ç¼ç¾æççµæç ´æï¼éè¦ç³è«æè²¨æé款ï¼è«ç¡éè³ãæç帳æ¶ãï¼é»æãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®ä¸ï¼é»æãç³è«é貨ãã\u003cbr\u003e 2. æ¶å°é貨ç³è«å¾ï¼æåæè¯ç¹«æ¨ï¼ä¸¦ååé貨æµç¨ãå¦ææ¨æä»»ä½é貨åé¡ï¼æ¨å¯ä»¥å¨ãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®æç´°ï¼çä¸åçç´éã è«ä¸è¦èªè¡é貨ã\u003cbr\u003e 3. éæè²¨æï¼è«ä¿æåå
è£å®æ´ï¼å
æ¬è³¼è²·çååãé
ä»¶ãè´åçï¼ã\u003cbr\u003e 4. 符åéè²¨è³æ ¼å¾ï¼ååºæåä¾ç
§æ¨ç仿¬¾æ¹å¼é款ã\u003cbr\u003e 5. 詳細çé貨è¦å®èæµç¨èªªæï¼è«å鱿¬åºçé貨æ¿çã\u003cbr\u003e","return_msg_Taiwan":"1. æ¶å°ååå¾å¦æç¼ç¾ççµæç ´æçæ³ï¼éè¦è¾¦çææè²¨ï¼è«æ¼æ¶å°è²¨å¾7天å
§ç»å
¥ãæç帳æ¶ãé é¢é»é¸ãç³è«é貨ãã\u003cbr\u003e 2. æ¶å°ååå¾å¯äº«æ7天å
è²»éè³
1097æï¼å«ä¾åæ¥ï¼ãéæè²¨æè«ä¿æåå
è£ååç宿´ï¼å
å«è³¼è²·ååï¼éä»¶ï¼è´åçï¼ã\u003cbr\u003e 3. æ¶å°ç³è«å¾ï¼æåå°èæ¨è¯ç¹«ååååãè¥æä»»ä½é貨åé¡ï¼æ¨å¯ä»¥å¨ãè¨å®æç´°ãä¸ï¼é»é¸ãæè¦è©¢åãï¼è«å¿èªè¡å¯åååã\u003cbr\u003e 4. ç¶ä½ ç³è«é貨å¾ï¼è«åå°æ¬ç³è«å®é¨ååä¸èµ·å¯åã\u003cbr\u003e 5. æ¶å°æ¨çé貨åå並審æ¥ééå¾ï¼å°æ¼7åå·¥ä½å¤©å
§é款è³ä½ ç鿬¾å¸³æ¶ã\u003cbr\u003e","return_msg_USA":"1. 妿¶å°ååå¾ï¼ç¼ç¾æççµæç ´æï¼éè¦ç³è«æè²¨æé款ï¼è«ç¡éè³ãæç帳æ¶ãï¼é»æãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®ä¸ï¼é»æãç³è«é貨ãã\u003cbr\u003e 2. æ¶å°é貨ç³è«å¾ï¼æåæè¯ç¹«æ¨ï¼ä¸¦ååé貨æµç¨ãå¦ææ¨æä»»ä½é貨åé¡ï¼æ¨å¯ä»¥å¨ãè¨å®æ¥è©¢ãï¼å¨é¸ææ¬²ç³è«é貨çè¨å®æç´°ï¼çä¸åçç´éã è«ä¸è¦èªè¡é貨ã\u003cbr\u003e 3. éæè²¨æï¼è«ä¿æåå
è£å®æ´ï¼å
æ¬è³¼è²·çååãé
ä»¶ãè´åçï¼ã\u003cbr\u003e 4. 符åéè²¨è³æ ¼å¾ï¼ååºæåä¾ç
§æ¨ç仿¬¾æ¹å¼é款ã\u003cbr\u003e 5. 詳細çé貨è¦å®èæµç¨èªªæï¼è«å鱿¬åºçé貨æ¿çã\u003cbr\u003e","return_product":"é貨åå","return_reason":"é貨åå ","save_more_money_discount":"å¯äº« {{discount}} æåªæ ","save_more_money_dollar":"å¯ç {{dollar}}","search_article_label":"æç« æå°çµæ ({{ totalArticleCounts }})","search_no_result":"徿±æï¼æ¾ä¸å° {{ queryString }} è«éæ°è¼¸å
¥æå°ã","search_product_label":"ååæå°çµæ ({{ totalProductCounts }})","search_total":"æå° {{ queryString }} çµæå
± {{ totalSearchCount }} ç","select_sort_by":"鏿æåºæ¹å¼","sell_from_asc":"ä¸å¸æ¥æèå°æ°","sell_from_desc":"ä¸å¸æ¥ææ°å°è","send_too_many_times_try_again_later":"ç¼é次æ¸éå¤ï¼è«ç¨å¾å試","sending_msg_few_minutes_get":"ç°¡è¨ç¼éä¸ï¼å¹¾åé徿¨å°æ¶å°é©è碼","shipping_fee":"éè²»","sold_out":"å·²å®å®","state_placeholder":"è«é¸æå·/ç","submit":"éåº","subtotal":"å°è¨","success_operation":"æä½æå!","successfully_copy_tracking_number":"å·²æåè¤è£½ä½ çç©æµå®è","system_busy_try_again":"系統å¿ç¢ï¼è«ç¨å¾å試","tax":"ç¨
é¡","thanks_for_advise":"è¬è¬æ¨çå¯
1097¶è²´æè¦","thanks_you_have_signed_up":"è¬è¬æ¨å·²è¨»å","total_bonus_redemption":"ç¸½ç´ å©æè³¼é»æ¸","tw_city_placeholder":"è«é¸æç¸£å¸","tw_district_placeholder":"è«é¸æéé®å¸å","unreach_favorable":"æªéåªæ ","verification_error_please_correct":"é©èæèª¤è«ä¿®æ£","verify_success":"é©èç¢¼ç¢ºèªæå","view_product":"æ¥çåå","vip_shipping_free":"VIPå éè²»","zip":"éµéåè"} 1098 $(document).ready(function(){ 1099 if(window.location.pathname != '' && window.location.pathname != '/' ){ 1100 document.getElementById('index-popular-tags').style.display = 'none' 1101 } 1102 // åæ¸è¨æ 1103 1104 1105 function adjustContentTop() { 1106 1107 const isNavbarTransparent = false; 1108 let headerHeight = $("#header").outerHeight(); 1109 if (isNavbarTransparent && $('#template').width() >= 992) { 1110 headerHeight -= $('.computer_nav').height(); 1111 } 1112 const floatFilterHeight = $('#float-filter').innerHeight() || 0; 1113 $("body").css({ 1114 "padding-top": (headerHeight - floatFilterHeight) + "px", 1115 }); 1116 } 1117 1118 window.adjustContentTop = adjustContentTop; 1119 1120 // navbarè¨å®éæ 1121 1122 1123 // Call it first once DOM is ready to prevent CLS 1124 adjustContentTop(); 1125 1126 // å»¶é²åå§åï¼çå¾ app banner åå§å宿 1127 $(window).on("resize", adjustContentTop); 1128 1129 // ä½¿ç¨ setTimeout ç¢ºä¿ banner çæ å·²ç¶ç¢ºå® 1130 $(window).on("load", function() { 1131 setTimeout(function() { 1132 adjustContentTop(); 1133 }, 200); // 給 banner è¶³å¤ æéåå§å 1134 }); 1135 1136 $('img.header_banner').on('load', adjustContentTop); 1137 1138 window.renderNavbarSection('.main_nav', { 1139 navbarCollections: [{"title":"é¦é åå","url":"/collections/frontpage","products":[]},{"title":"æçé£å ç³»å","url":"/collections/food","products":[{"title":"夿³éé ææ©æé (400ml)","url":"/products/vinegar"},{"title":"ææ©æé2å ¥æè¢çµ","url":"/products/nainai"},{"title":"椪ãç±³é¦","url":"/products/rice"},{"title":"ç¢å°ç´éï½éç®æ¤ªæ","url":"/products/pokan"}]},{"title":"æå¥½å éçµ","url":"/collections/æå¥½å éçµ","products":[{"title":"ãåé¥éå®çµãææ©æ¸ æ½å大ç¾å¥½å®¶åºçµ","url":"/products/package"},{"title":"ãå¤è²¨å°åãææ©æ¸ æ½å大大ç¶(1000ml)","url":"/products/refill"},{"title":"ãæ°æé¦é¸ãææ©æ¸ æ½åé«é©çµ","url":"/products/firstpackage"},{"title":"ãæå¾æ¶èãææ©æ¸ æ½åå代å è£","url":"/products/c1314"},{"title":"ææ©æé2å ¥æè¢çµ","url":"/products/nainai"}]},{"title":"ææ·¨æ¥å¸¸çµ","url":"/collections/cleanlife","products":[{"title":"ãéé10çµãæå¶¼ã馿°æ¸ æ½ç³»å","url":"/products/wenszu"},{"title":"ãæ°åä¸å¸ãææ·¨å± å®¶çµå","url":"/products/newpack"},{"title":"ãæå¾æ¶èãææ©æ¸ æ½åå代å è£","url":"/products/c1314"},{"title":"ãéé100ç¶ãå¿æåéãææ©æ¸ æ½å","url":"/products/mmnn"},{"title":"ææ©æ¸ æ½å (500ml)- 泡泡ç¶","url":"/products/cleanmuse"},{"title":"ææ©æ¸ æ½å (500ml)-å´å´ç¶","url":"/products/cleansoap"},{"title":"ææ©æ¸ æ½å(1000ml)- 大大ç¶","url":"/products/recycle1000"}]},{"title":"æçé£å çµ","url":"/collections/æçé£å çµ","products":[{"title":"ãæééå®ã椪ãæè»ç³","url":"/products/gummy"}]},{"title":"2026年椪æé è³¼","url":"/collections/2026年椪æé è³¼","products":[{"title":"ç¢å°ç´éï½éç®æ¤ªæ","url":"/products/pokan"}]}], 1140 navbarItems: [{"id":1973923,"title":"é¦é ","url":"/","item_type":"frontpage","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1973924,"title":"ååå表","url":"/collections/all","item_type":"collections_all","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1973925,"title":"ææ°åæ ","url":"/blogs/news","item_type":"http","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1973926,"title":"éæ¼æå","url":"/pages/about-us","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":2029087,"title":"常è¦Q\u0026A","url":"/pages/常è¦qa","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1973928,"title":"é¨è½æ ¼ç¸½è¦½","url":"/blogs","item_type":"http","subtitle":null,"icon_image_url":null,"menuItems":null}], 1141 settings: { 1142 menuDisplayStyle: "two_dimension_menu", 1143 pcLogoImgUrl: "//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b", 1144 mobileLogoImgUrl: "//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc1NjIxNDA2X-aenOWckkxPR08ucG5nLnBuZyJdXQ.png?sha=ea9d616a1920651b", 1145 navbarDisplayStyle: "displayDefault", 1146 } 1147 } 1148 ); 1149 1150 1151 // for link menu 1152 const linkMenuElement = document.querySelector('.link-nav'); 1153 const data = [] 1154 data.forEach((item) => { 1155 const wrapper = document.createElement('a'); 1156 const link = document.createElement('ul'); 1157 1158 wrapper.href = item.url; 1159 link.textContent = item.title; 1160 link.classList.add('link-item'); 1161 1162 wrapper.appendChild(link); 1163 linkMenuElement.appendChild(wrapper); 1164 }); 1165 1166 // for safe-area space on iOS devices 1167 const userAgent = navigator.userAgent; 1168 const isIOS = /iPad|iPhone|iPod/.test(userAgent) && !window.MSStream; 1169 const isLiff = /Line\/[\d.]+/i.test(userAgent); 1170 const $mobileBottomBar = $('#mobile-bottom-bar'); 1171 1172 if ($mobileBottomBar.length && isIOS && isLiff) { 1173 $mobileBottomBar.addClass('is-ios-liff'); 1174 } 1175 }); 1176 document.addEventListener('DOMContentLoaded', function() { 1177 window.getCartAmount = function() { 1178 return parseInt($('.global-cart-count').html()); 1179 }; 1180 }); 1181</script>
1181 1182
1183<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/navbar-3a2e378145f8a165.js' type='text/javascript'></script>
vendor: 1 bytes, line 1183
1183
1184<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/currencies-3a2e378145f8a165.js' type='text/javascript'></script>
1184 1185<!-- cyb_snippet i18n_modal start --> 1186 1187 1188<!-- cyb_snippet i18n_modal end --> 1189<!-- cyb_snippet _load_fonts start -->
1190<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/load_fonts-3a2e378145f8a165.js' type='text/javascript'></script>
vendor: 1 bytes, line 1190
1190
1191<script> 1192 document.addEventListener('DOMContentLoaded', function() { 1193 window.loadFontSetting("{'ja':{'value':'Noto Sans JP'},'zh-TW':{'value':'Noto Sans TC'},'en':{'value':'Noto Sans TC'},'zh-CN':{'value':'Noto Sans TC'}}") 1194 }) 1195</script>
1195 1196 1197<!-- cyb_snippet _load_fonts end --> 1198<!-- cyb_snippet _custom_icon start -->
1199<script src='//cdn-general.cybassets.com/frontend/shop/navIcon-3a2e378145f8a165.js' type='text/javascript'></script>
1199 1200
1201<script> 1202 (function() { 1203 const iconUrlMap = new Map([ 1204 ['custom_icon_type_home', null], 1205 ['custom_icon_type_tracking_items', null], 1206 ['custom_icon_type_account', null], 1207 ['custom_icon_type_cart', null], 1208 ['custom_icon_type_search', null], 1209 ['custom_icon_type_menu', null] 1210 ]); 1211 const elements = document.querySelectorAll('[data-icon-type]'); 1212 elements.forEach((element, index) => { 1213 const iconAttributes = element.getAttribute('data-icon-type'); 1214 1215 const uniqueId = `icon_${iconAttributes}_${index}_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`; 1216 element.id = uniqueId; 1217 window.renderNavCustomIcon(`#${uniqueId}`, { 1218 navIconStyle: "icon_type_default", 1219 customIconUrl: iconUrlMap.get(iconAttributes) || '', 1220 iconAttributes: iconAttributes, 1221 currentTemplate: "index", 1222 }); 1223 }); 1224 })(); 1225</script>
1225 1226 1227<!-- cyb_snippet _custom_icon end --> 1228 1229 1230 1231 1232 1233
1233<script src='//cdn-general.cybassets.com/frontend/shop/announcementBar-3a2e378145f8a165.js' type='text/javascript'></script>
1233 1234 1235 1236 1237 1238 1239
1239<script> 1240 $(document).ready(function() { 1241 window.renderAnnouncementBar('#announcement-bar', { 1242 sectionId: "announcement_bar", 1243 isIndex: true, 1244 }); 1245 }); 1246 </script>
1246 1247 1248 1249 1250 1251 1252 1253 <!-- template --> 1254 <div id="template" style="flex:1 0 auto; background-color: var(--theme_bg);"> 1255 <div class="index"> 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_main_slider_custom-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 1267 1268<style> 1269 [id="_main_slider_custom"] { 1270 margin: 0 0px 48px !important; 1271 } 1272 @media (max-width: 576px) { 1273 .main-slider-placeholder { 1274 display: none !important; 1275 } 1276 .swiper-container { 1277 visibility: visible !important; 1278 } 1279 } 1280 @media (max-width: 991px) { 1281 [id="_main_slider_custom"] { 1282 margin: 0 0px 24px !important; 1283 } 1284 } 1285</style> 1286 1287<section id="_main_slider_custom" class="main-slider qk-pos--rel"> 1288 1289 1290 1291 <div 1292 class="swiper swiper-container" 1293 1294 > 1295 <div class="swiper-wrapper qk-align--center"> 1296 1297 1298 1299 <div class="swiper-slide"> 1300 1301 1302 <a 1303 href="/pages/about-us" 1304 class="img-flex qk-align--stretch qk-display--contents" 1305 target="_blank" 1306 rel="noopener noreferrer" 1307 > 1308 1309 1310 1311 1312 1313 1314 <picture> 1315 1316 <source 1317 media="(max-width: 576px)" 1318 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg3NTM5Mjc1X1BD5a6Y57ayQmFubmVyIDE5MjB4IDEwODAucG5nLnBuZyJdXQ.png?sha=6e250759509c3a69" 1319 alt="" 1320 > 1321 1322 1323 <source 1324 media="(max-width: 992px)" 1325 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg3NTM5Mjc1X1BD5a6Y57ayQmFubmVyIDE5MjB4IDEwODAucG5nLnBuZyJdXQ.png?sha=6e250759509c3a69" 1326 alt="" 1327 > 1328 1329 <img 1330 id="slider-image" 1331 data-src="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg3NTM5Mjc1X1BD5a6Y57ayQmFubmVyIDE5MjB4IDEwODAucG5nLnBuZyJdXQ.png?sha=6e250759509c3a69" 1332 height="auto" 1333 alt="" 1334 class="swiper-lazy" 1335 > 1336 </picture> 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 </a> 1351 1352 1353 <div class="swiper-lazy-preloader"></div> 1354 1355 </div> 1356 1357 <div class="swiper-slide"> 1358 1359 <span class="img-flex qk-align--stretch qk-display--contents"> 1360 1361 1362 1363 1364 1365 1366 <picture> 1367 1368 <source 1369 media="(max-width: 576px)" 1370 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc3NTc1Mzk5XzIwMDB4ICgxKS53ZWJwLndlYnAiXV0.webp?sha=fee9ab6d04f0c0d9" 1371 alt="" 1372 > 1373 1374 1375 <source 1376 media="(max-width: 992px)" 1377 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc3NTc1Mzk5XzIwMDB4ICgxKS53ZWJwLndlYnAiXV0.webp?sha=fee9ab6d04f0c0d9" 1378 alt="" 1379 > 1380 1381 <img 1382 id="slider-image" 1383 data-src="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc3NTc1Mzk5XzIwMDB4ICgxKS53ZWJwLndlYnAiXV0.webp?sha=fee9ab6d04f0c0d9" 1384 height="auto" 1385 alt="" 1386 class="swiper-lazy" 1387 > 1388 </picture> 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 </span> 1403 1404 1405 <div class="swiper-lazy-preloader"></div> 1406 1407 </div> 1408 1409 <div class="swiper-slide"> 1410 1411 <span class="img-flex qk-align--stretch qk-display--contents"> 1412 1413 1414 1415 1416 1417 1418 <picture> 1419 1420 <source 1421 media="(max-width: 576px)" 1422 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg4MjQ3ODIzX0NZ5qmr5bmF5buj5ZGKICgxOTIwIHggMTA4MCDlg4_ntKApLnBuZy5wbmciXV0.png?sha=fc0a15688bff193b" 1423 alt="" 1424 > 1425 1426 1427 <source 1428 media="(max-width: 992px)" 1429 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg4MjQ3ODIzX0NZ5qmr5bmF5buj5ZGKICgxOTIwIHggMTA4MCDlg4_ntKApLnBuZy5wbmciXV0.png?sha=fc0a15688bff193b" 1430 alt="" 1431 > 1432 1433 <img 1434 id="slider-image" 1435 data-src="//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzg4MjQ3ODIzX0NZ5qmr5bmF5buj5ZGKICgxOTIwIHggMTA4MCDlg4_ntKApLnBuZy5wbmciXV0.png?sha=fc0a15688bff193b" 1436 height="auto" 1437 alt="" 1438 class="swiper-lazy" 1439 > 1440 </picture> 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 </span> 1455 1456 1457 <div class="swiper-lazy-preloader"></div> 1458 1459 </div> 1460 1461 </div> 1462 1463 <div 1464 class="qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v2 qk-swiper_btn--prev main_slider_custom_prev qk-hidden--mobile" 1465 ></div> 1466 <div 1467 class="qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v2 qk-swiper_btn--next main_slider_custom_next qk-hidden--mobile" 1468 ></div> 1469 1470 </div> 1471
1472 <div class="qk-swiper_pg qk-w--100 qk-mg_t--1 qk-text--center main_slider_pagination"></div> 1473 1474</section> 1475
1476<script> 1477 $(document).ready(function(){ 1478 let isDynamicLoading = false; 1479 let settingObj = { 1480 id: '_main_slider_custom', 1481 mobile_img_number: Number('1'), 1482 mobile_img_space: Number('8'), 1483 img_number: Number('1'), 1484 img_space: Number('12'), 1485 swiper_delay: '3', 1486 } 1487 window.mainSlider = function(obj){ 1488 var id = themeHelper.escapeId(obj.id); 1489 var slideCount = $(`#${obj.id} .swiper-slide`).length 1490 var autoLoop = true 1491 if (slideCount <= 1){ 1492 autoLoop = false 1493 } 1494 var mainSlider = new Swiper('#' + id + ' .swiper-container', { 1495 preloadImages: false, 1496 slidesPerView: Number(obj.mobile_img_number), 1497 spaceBetween: Number(obj.mobile_img_space), 1498 breakpoints: { 1499 0:{ 1500 slidesPerView: Number(obj.mobile_img_number), 1501 spaceBetween: Number(obj.mobile_img_space), 1502 }, 1503 991: { 1504 slidesPerView: Number(obj.img_number), 1505 spaceBetween: Number(obj.img_space), 1506 } 1507 }, 1508 // Enable lazy loading 1509 observer: true, 1510 observeParents: true, 1511 autoheight: true, 1512 lazy: { 1513 loadPrevNext: true, 1514 }, 1515 freeMode: { 1516 enabled: true, 1517 sticky: true, 1518 momentum: true, 1519 momentumRatio: 0.4, 1520 momentumVelocityRatio: 0.1, 1521 }, 1522 loop: autoLoop, 1523 autoplay: { delay: obj.swiper_delay * 1000 }, 1524 speed: Number('300.0'), 1525 pagination: { 1526 el: '#' + id + ' .main_slider_pagination', 1527 clickable: true, 1528 }, 1529 navigation: { 1530 nextEl: '#' + id + ' .main_slider_custom_next', 1531 prevEl: '#' + id + ' .main_slider_custom_prev', 1532 }, 1533 on: { 1534 init: function () { 1535 if (isDynamicLoading && !window.matchMedia("(max-width: 576px)").matches) { 1536 document.querySelector('#' + id + ' .main-slider-placeholder').style.display = 'none'; 1537 document.querySelector('#' + id + ' .swiper-container').style.visibility = 'visible'; 1538 } 1539 }, 1540 } 1541 }); 1542 } 1543 if (isDynamicLoading) { 1544 window.DynamicLoading.setupComponent({ 1545 sectionId: "_main_slider_custom", 1546 sectionSettingData: settingObj, 1547 entryName:'mainSlider', 1548 source:'https://cdnjs.cloudflare.com/ajax/libs/Swiper/5.4.5/js/swiper.js', 1549 componentType:'js', 1550 hiddenDom: true 1551 }); 1552 }else{ 1553 mainSlider(settingObj); 1554 } 1555 }) 1556</script>
1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567
1568<script src='//cdn-general.cybassets.com/frontend/shop/productBanner-3a2e378145f8a165.js' type='text/javascript'></script>
1568 1569 1570 1571<style> 1572 [id="_index_product_banner"] { 1573 margin: 0 80px 48px !important; 1574 } 1575 @media (max-width: 991px) { 1576 [id="_index_product_banner"] { 1577 margin: 0 0px 24px !important; 1578 } 1579 } 1580</style> 1581 1582<section id="_index_product_banner" class="index-product-banner qk-display--bk qk-pos--rel"> 1583 <div id="index_product_banner-_index_product_banner"></div> 1584</section> 1585
1586<script> 1587 $(document).ready(function() { 1588 let isDynamicLoading = false; 1589 if (isDynamicLoading) { 1590 window.DynamicLoading.setupComponent({ 1591 sectionId:'#index_product_banner-_index_product_banner', 1592 callbackData:{ 1593 sectionId: "_index_product_banner", 1594 section: {"type":"_index_product_banner","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f","dict_link":"","display_cta_btn":true,"cta_btn_display_style":"midPosition","cta_btn_text":"Read More","cta_btn_bg_color":"#f07d4a","cta_btn_text_color":"#ffffff","margin_x":"80","margin_bottom":"48","mobile_margin_x":"0","mobile_margin_bottom":"24"},"blocks":{},"block_order":[],"custom_name":"æ©«å¹ å»£å","schedule":{"enabled_default":true,"schedule_lists":[]}}, 1595 dictMobileImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f", 1596 dictTabletImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f", 1597 dictImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f", 1598 }, 1599 entryName:'renderProductBanner', 1600 source:'//cdn-general.cybassets.com/frontend/shop/productBanner-3a2e378145f8a165.js', 1601 }); 1602 }else{ 1603 window.renderProductBanner('#index_product_banner-_index_product_banner', 1604 { 1605 sectionId: "_index_product_banner", 1606 section: {"type":"_index_product_banner","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f","dict_link":"","display_cta_btn":true,"cta_btn_display_style":"midPosition","cta_btn_text":"Read More","cta_btn_bg_color":"#f07d4a","cta_btn_text_color":"#ffffff","margin_x":"80","margin_bottom":"48","mobile_margin_x":"0","mobile_margin_bottom":"24"},"blocks":{},"block_order":[],"custom_name":"æ©«å¹ å»£å","schedule":{"enabled_default":true,"schedule_lists":[]}}, 1607 dictMobileImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f", 1608 dictTabletImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f", 1609 dictImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4NjQ1MzgwX-WPluiHquWkp-WcsOeahOe0lOeyue-8jCDpgoTljp_nlJ_mtLvmnIDljp_mnKznmoTjgI7mn5Hmt6jml6XluLjjgI8ucG5nLnBuZyJdXQ.png?sha=9cc559384cee5c5f", 1610 }); 1611 } 1612 }); 1613</script>
1613 1614 1615 1616<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_index_8_blocks-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' />
1616<script src='//cdn-general.cybassets.com/frontend/shop/productCollection-3a2e378145f8a165.js' type='text/javascript'></script>
1616<!-- cyb_snippet _combo_product_related_items_modal start --><!-- cyb_snippet _combo_product_related_items_modal end --> 1617 1618 1619
1620<script> 1621 $(document).ready(function() { 1622 let isDynamicLoading = false; 1623 1624 function sendProductImpressions(products, collectionTitle) { 1625 if (products && products.length > 0) { 1626 var gtm_product = [] 1627 1628 $.each(products, function(index, product) { 1629 productInfo = { 1630 'brand': product.vendor, 1631 'category': product.product_type, 1632 'id': product.id, 1633 'list': 'Index: ' + collectionTitle, 1634 'name': product.title, 1635 'position': index + 1, 1636 'price': product.price, 1637 'variant': '' 1638 } 1639 1640 if (typeof google_tag_manager_id != 'undefined' || typeof cyb != 'undefined') { 1641 gtm_product.push(productInfo) 1642 } 1643 }) 1644 1645 if (typeof google_tag_manager_id != 'undefined' && gtm_product.length > 0) { 1646 dataLayer.push({ 1647 'event': 'productImpressions', 1648 'ecommerce': { 1649 'impressions': gtm_product 1650 } 1651 }); 1652 } 1653 1654 if (typeof cyb != "undefined" && gtm_product.length > 0) { 1655 cyb.push({ 1656 'event': 'productImpressions', 1657 'impressions': gtm_product 1658 }); 1659 } 1660 } 1661 } 1662 1663 const props = { 1664 sectionId: "1783495357112_2", 1665 collection: { 1666 id: 478478, 1667 title: "æå¥½å éçµ", 1668 }, 1669 allProductCount: 5, 1670 cartEnabled: true, 1671 discountPriceSloganUrl: "", 1672 showMultipleLabels: false, 1673 collectionHandleUrl: "/collections/æå¥½å éçµ", 1674 blockProducts: 1675{"products":[{"id":67399409,"title":"ãåé¥éå®çµãææ©æ¸ æ½å大ç¾å¥½å®¶åºçµ","handle":"package","price":2099.0,"vendor":null,"slogan":"","sell_from":"2026-04-08 12:00:00","url":"/products/package","product_type":null,"total_sold":15,"sold_out":false,"price_range":{"min":{"id":81947322,"price":2099.0,"compare_at_price":2999.0},"max":{"id":81947322,"price":2099.0,"compare_at_price":2999.0}},"show_slogan":true,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NDA5LzE3Nzc5NjEwNTlfNmQ1NzJkYzIxMmM0Y2M1OTE2NDUuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=934e3063b8b3a785","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NDA5LzE3Nzc5NjEwNTlfNmQ1NzJkYzIxMmM0Y2M1OTE2NDUuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=934e3063b8b3a785","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NDA5LzE3Nzc5NjEwNTlfOGFhYTVjY2JjMTk3OTMxODFkODMud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=5d42801a28d7eb11"]},{"id":67399523,"title":"ãå¤è²¨å°åãææ©æ¸ æ½å大大ç¶(1000ml)","handle":"refill","price":1299.0,"vendor":null,"slogan":"","sell_from":"2026-04-08 12:00:00","url":"/products/refill","product_type":null,"total_sold":45,"sold_out":false,"price_range":{"min":{"id":81947470,"price":1299.0,"compare_at_price":1699.0},"max":{"id":81947470,"price":1299.0,"compare_at_price":1699.0}},"show_slogan":true,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NTIzLzE3Nzc5NjEyNjVfNmMzMWE1OWRmOWIwYjdkM2Y3ZWQuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=2b4c56942c769cb0","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NTIzLzE3Nzc5NjEyNjVfNmMzMWE1OWRmOWIwYjdkM2Y3ZWQuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=2b4c56942c769cb0"]},{"id":67864533,"title":"ãæ°æé¦é¸ãææ©æ¸ æ½åé«é©çµ","handle":"firstpackage","price":1199.0,"vendor":null,"slogan":"","sell_from":"2026-04-08 12:00:00","url":"/products/firstpackage","product_type":null,"total_sold":13,"sold_out":false,"price_range":{"min":{"id":82564863,"price":1199.0,"compare_at_price":1299.0},"max":{"id":82564863,"price":1199.0,"compare_at_price":1299.0}},"show_slogan":true,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NDA5LzE3Nzc5NjEwNTlfNmQ1NzJkYzIxMmM0Y2M1OTE2NDUuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=934e3063b8b3a785","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NDA5LzE3Nzc5NjEwNTlfNmQ1NzJkYzIxMmM0Y2M1OTE2NDUuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=934e3063b8b3a785"]},{"id":69376925,"title":"ãæå¾æ¶èãææ©æ¸ æ½åå代å è£","handle":"c1314","price":15.0,"vendor":null,"slogan":"ä¸é±å®å® 5,000 ç¶çå¥è¹","sell_from":null,"url":"/products/c1314","product_type":null,"total_sold":69,"sold_out":false,"price_range":{"min":{"id":84547931,"price":15.0,"compare_at_price":25.0},"max":{"id":84547829,"price":4999.0,"compare_at_price":5988.0}},"show_slogan":true,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjVfMThjM2ZmYTBkMDRkMWE5NDYwZWYucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=a203d2342c70326a","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjVfMThjM2ZmYTBkMDRkMWE5NDYwZWYucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=a203d2342c70326a","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjVfYzBlNWE2MjhhNGNmZjI3Zjc0ZDYucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=2595c7117a118a0d","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjZfMDUxODA3YjZlYTQ2YTVkNDVmMWUucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=b6ede0a3a11f4edc","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjZfY2NkZDcyZWJiNGFhZTllMzVjOTgucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=7a8a30d740ad7153","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjZfNTIyZDhiMzY3NjgwMzQwMTA0ZDUucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=bde6fa0255ff6647","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjdfOTVjMGNhNGM4Njg4MDE2MjMwODkucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=686690858cc89233"]}]} 1676, 1677 sessionTitle: null, 1678 section: {"type":"_index_8_blocks","custom_name":"åååé¡","visible":true,"settings":{"dict_title":"æå¥½å éç³»å","collection_handle":"æå¥½å éçµ","limit":"4","product_arrangement":"2","product_column_for_pc":"4","product_column_for_mobile":"3","product_alignment":"leftPosition","product_text_align":"center","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"24","product_display":"displayDefault","product_card_hover_effect":"button","product_image_border_radius":"15"},"blocks":{},"block_order":[],"schedule":{"enabled_default":true,"schedule_lists":[]}}, 1679 productURLSearch: "", 1680 hasIntegratedProductLabelsPlugin: true, 1681 isDisplayPriceRange: null || false, 1682 pageType: "index", 1683 } 1684 if (isDynamicLoading) { 1685 window.DynamicLoading.setupComponent({ 1686 sectionId: '#index_8_blocks-1783495357112_2', 1687 callbackData: props, 1688 entryName: 'renderProductCollection', 1689 source: '//cdn-general.cybassets.com/frontend/shop/productCollection-3a2e378145f8a165.js', 1690 }); 1691 } else { 1692 renderProductCollection('#index_8_blocks-1783495357112_2', props); 1693 } 1694 var products = props.blockProducts && props.blockProducts.products; 1695 if (products) { 1696 sendProductImpressions(products, props.collection.title); 1697 } 1698 }); 1699</script>
1699 1700 1701<style> 1702 [id="1783495357112_2"] { 1703 margin: 0 0px 50px !important; 1704 } 1705 @media (max-width: 991px) { 1706 [id="1783495357112_2"] { 1707 margin: 0 0px 24px !important; 1708 } 1709 } 1710</style> 1711 1712<section id="1783495357112_2" class="index_8_blocks qk-text--center"> 1713 <div id="index_8_blocks-1783495357112_2"></div> 1714</section> 1715 1716 1717 1718<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_index_8_blocks-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' />
1718<script src='//cdn-general.cybassets.com/frontend/shop/productCollection-3a2e378145f8a165.js' type='text/javascript'></script>
1718<!-- cyb_snippet _combo_product_related_items_modal start --><!-- cyb_snippet _combo_product_related_items_modal end --> 1719 1720 1721
1722<script> 1723 $(document).ready(function() { 1724 let isDynamicLoading = false; 1725 1726 function sendProductImpressions(products, collectionTitle) { 1727 if (products && products.length > 0) { 1728 var gtm_product = [] 1729 1730 $.each(products, function(index, product) { 1731 productInfo = { 1732 'brand': product.vendor, 1733 'category': product.product_type, 1734 'id': product.id, 1735 'list': 'Index: ' + collectionTitle, 1736 'name': product.title, 1737 'position': index + 1, 1738 'price': product.price, 1739 'variant': '' 1740 } 1741 1742 if (typeof google_tag_manager_id != 'undefined' || typeof cyb != 'undefined') { 1743 gtm_product.push(productInfo) 1744 } 1745 }) 1746 1747 if (typeof google_tag_manager_id != 'undefined' && gtm_product.length > 0) { 1748 dataLayer.push({ 1749 'event': 'productImpressions', 1750 'ecommerce': { 1751 'impressions': gtm_product 1752 } 1753 }); 1754 } 1755 1756 if (typeof cyb != "undefined" && gtm_product.length > 0) { 1757 cyb.push({ 1758 'event': 'productImpressions', 1759 'impressions': gtm_product 1760 }); 1761 } 1762 } 1763 } 1764 1765 const props = { 1766 sectionId: "_index_8_blocks", 1767 collection: { 1768 id: 487711, 1769 title: "ææ·¨æ¥å¸¸çµ", 1770 }, 1771 allProductCount: 7, 1772 cartEnabled: true, 1773 discountPriceSloganUrl: "", 1774 showMultipleLabels: false, 1775 collectionHandleUrl: "/collections/cleanlife", 1776 blockProducts: 1777{"products":[{"id":71236254,"title":"ãéé10çµãæå¶¼ã馿°æ¸ æ½ç³»å","handle":"wenszu","price":530.0,"vendor":null,"slogan":"","sell_from":null,"url":"/products/wenszu","product_type":null,"total_sold":6,"sold_out":false,"price_range":{"min":{"id":87087348,"price":530.0,"compare_at_price":599.0},"max":{"id":87087350,"price":2699.0,"compare_at_price":2899.0}},"show_slogan":true,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxMjM2MjU0LzE3ODY3ODA2NDhfNzA0ZTg5YmJiOWVlODQ2N2UyYzgucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=8ef5610f889f8652","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxMjM2MjU0LzE3ODY3ODA2NDhfNzA0ZTg5YmJiOWVlODQ2N2UyYzgucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=8ef5610f889f8652","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxMjM2MjU0LzE3ODY3ODE5ODRfYmI2NTQ5MjRlM2NjZTdhOGNkMzYucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=d7a304b656ee94c7","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxMjM2MjU0LzE3ODY3ODE5ODRfNmMzMWVlMjM4OGVhZDE3Mjk2MzkucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=d2390e99f52ac5fb","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxMjM2MjU0LzE3ODY3ODE5ODRfNDUwOTMzMDFkOTU1Mzc0MjEyYTMucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=9986695548068559"]},{"id":69212295,"title":"ãæ°åä¸å¸ãææ·¨å± å®¶çµå","handle":"newpack","price":999.0,"vendor":null,"slogan":"","sell_from":null,"url":"/products/newpack","product_type":null,"total_sold":6,"sold_out":false,"price_range":{"min":{"id":84309526,"price":999.0,"compare_at_price":1150.0},"max":{"id":84309528,"price":2999.0,"compare_at_price":3299.0}},"show_slogan":true,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5MjEyMjk1LzE3ODg0Mjk0MzhfZDg5N2ZjMjc0MDQwYjJiMTM0MTYucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=4e6794e65391a130","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5MjEyMjk1LzE3ODg0Mjk0MzhfZDg5N2ZjMjc0MDQwYjJiMTM0MTYucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=4e6794e65391a130","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5MjEyMjk1LzE3ODg0MzA1ODhfNDBmY2UyZjJjM2NmYjNmNTBmY2IucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=94c4385f3aafe2c0","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5MjEyMjk1LzE3ODg0MzQwOTRfYTUzYTEyZjE0MGY0NDIyNGYyMWIucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=d22ccf7a2644e12c","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5MjEyMjk1LzE3ODg0MzQwOTRfZDQ4NjFmOGE5YWYwYzNhYTUxY2YucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=234bbe2a49f06bb8"]},{"id":69376925,"title":"ãæå¾æ¶èãææ©æ¸ æ½åå代å è£","handle":"c1314","price":15.0,"vendor":null,"slogan":"ä¸é±å®å® 5,000 ç¶çå¥è¹","sell_from":null,"url":"/products/c1314","product_type":null,"total_sold":69,"sold_out":false,"price_range":{"min":{"id":84547931,"price":15.0,"compare_at_price":25.0},"max":{"id":84547829,"price":4999.0,"compare_at_price":5988.0}},"show_slogan":true,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjVfMThjM2ZmYTBkMDRkMWE5NDYwZWYucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=a203d2342c70326a","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjVfMThjM2ZmYTBkMDRkMWE5NDYwZWYucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=a203d2342c70326a","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjVfYzBlNWE2MjhhNGNmZjI3Zjc0ZDYucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=2595c7117a118a0d","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjZfMDUxODA3YjZlYTQ2YTVkNDVmMWUucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=b6ede0a3a11f4edc","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjZfY2NkZDcyZWJiNGFhZTllMzVjOTgucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=7a8a30d740ad7153","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjZfNTIyZDhiMzY3NjgwMzQwMTA0ZDUucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=bde6fa0255ff6647","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY5Mzc2OTI1LzE3ODM0OTM1MjdfOTVjMGNhNGM4Njg4MDE2MjMwODkucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=686690858cc89233"]},{"id":71721342,"title":"ãéé100ç¶ãå¿æåéãææ©æ¸ æ½å","handle":"mmnn","price":299.0,"vendor":null,"slogan":"æé«åé¥299å è³¼ç©é","sell_from":"2026-04-08 12:00:00","url":"/products/mmnn","product_type":null,"total_sold":4,"sold_out":false,"price_range":{"min":{"id":87870316,"price":299.0,"compare_at_price":459.0},"max":{"id":89181220,"price":699.0,"compare_at_price":999.0}},"show_slogan":true,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxNzIxMzQyLzE3ODg1MDg2NjlfNTg2MTAwMjk2NTQxZGVhZjg5NmEucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=dd793101a772ac7c","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxNzIxMzQyLzE3ODg1MDg2NjlfNTg2MTAwMjk2NTQxZGVhZjg5NmEucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=dd793101a772ac7c","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxNzIxMzQyLzE3OTAwNDM2MjBfNzM5YWMxZjYxNTQ2MzBlZjYwM2EucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=5ea5bfaf19cc86a2","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxNzIxMzQyLzE3OTAwNDM2MjBfYjE0NjY5OGQ4NTRkYmMzNzRlZTMucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=3ca983d0c2262e79","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzcxNzIxMzQyLzE3OTAwNDgzMDlfNmViYTI1NzhmNjc3NmUwMjZkMWEucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=65631623e7ee0d56"]}]} 1778, 1779 sessionTitle: null, 1780 section: {"type":"_index_8_blocks","visible":true,"settings":{"dict_title":"ææ·¨æ¥å¸¸ç³»å","collection_handle":"cleanlife","limit":"4","margin_x":"0","margin_bottom":"48","mobile_margin_x":"","mobile_margin_bottom":"24","product_display":"displayPartial","product_arrangement":"2","product_column_for_pc":"4","product_column_for_mobile":"3","product_alignment":"leftPosition","product_text_align":"center","product_card_hover_effect":"button","product_image_border_radius":"15"},"custom_name":"åååé¡","schedule":{"enabled_default":true,"schedule_lists":[]}}, 1781 productURLSearch: "", 1782 hasIntegratedProductLabelsPlugin: true, 1783 isDisplayPriceRange: null || false, 1784 pageType: "index", 1785 } 1786 if (isDynamicLoading) { 1787 window.DynamicLoading.setupComponent({ 1788 sectionId: '#index_8_blocks-_index_8_blocks', 1789 callbackData: props, 1790 entryName: 'renderProductCollection', 1791 source: '//cdn-general.cybassets.com/frontend/shop/productCollection-3a2e378145f8a165.js', 1792 }); 1793 } else { 1794 renderProductCollection('#index_8_blocks-_index_8_blocks', props); 1795 } 1796 var products = props.blockProducts && props.blockProducts.products; 1797 if (products) { 1798 sendProductImpressions(products, props.collection.title); 1799 } 1800 }); 1801</script>
1801 1802 1803<style> 1804 [id="_index_8_blocks"] { 1805 margin: 0 0px 48px !important; 1806 } 1807 @media (max-width: 991px) { 1808 [id="_index_8_blocks"] { 1809 margin: 0 0px 24px !important; 1810 } 1811 } 1812</style> 1813 1814<section id="_index_8_blocks" class="index_8_blocks qk-text--center"> 1815 <div id="index_8_blocks-_index_8_blocks"></div> 1816</section> 1817 1818 1819 1820<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_index_8_blocks-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' />
1820<script src='//cdn-general.cybassets.com/frontend/shop/productCollection-3a2e378145f8a165.js' type='text/javascript'></script>
1820<!-- cyb_snippet _combo_product_related_items_modal start --><!-- cyb_snippet _combo_product_related_items_modal end --> 1821 1822 1823
1824<script> 1825 $(document).ready(function() { 1826 let isDynamicLoading = false; 1827 1828 function sendProductImpressions(products, collectionTitle) { 1829 if (products && products.length > 0) { 1830 var gtm_product = [] 1831 1832 $.each(products, function(index, product) { 1833 productInfo = { 1834 'brand': product.vendor, 1835 'category': product.product_type, 1836 'id': product.id, 1837 'list': 'Index: ' + collectionTitle, 1838 'name': product.title, 1839 'position': index + 1, 1840 'price': product.price, 1841 'variant': '' 1842 } 1843 1844 if (typeof google_tag_manager_id != 'undefined' || typeof cyb != 'undefined') { 1845 gtm_product.push(productInfo) 1846 } 1847 }) 1848 1849 if (typeof google_tag_manager_id != 'undefined' && gtm_product.length > 0) { 1850 dataLayer.push({ 1851 'event': 'productImpressions', 1852 'ecommerce': { 1853 'impressions': gtm_product 1854 } 1855 }); 1856 } 1857 1858 if (typeof cyb != "undefined" && gtm_product.length > 0) { 1859 cyb.push({ 1860 'event': 'productImpressions', 1861 'impressions': gtm_product 1862 }); 1863 } 1864 } 1865 } 1866 1867 const props = { 1868 sectionId: "1779085303274_2", 1869 collection: { 1870 id: 63341, 1871 title: "æçé£å ç³»å", 1872 }, 1873 allProductCount: 4, 1874 cartEnabled: true, 1875 discountPriceSloganUrl: "", 1876 showMultipleLabels: false, 1877 collectionHandleUrl: "/collections/food", 1878 blockProducts: 1879{"products":[{"id":67399624,"title":"夿³éé ææ©æé (400ml)","handle":"vinegar","price":780.0,"vendor":null,"slogan":"","sell_from":"2026-04-08 12:00:00","url":"/products/vinegar","product_type":null,"total_sold":8,"sold_out":true,"price_range":{"min":{"id":81947598,"price":780.0,"compare_at_price":899.0},"max":{"id":81947598,"price":780.0,"compare_at_price":899.0}},"show_slogan":false,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjI0LzE3Nzc5NjE0OThfMmRmMGEwOGE2YThkMzY0YTAxYzkud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=1a4323e3740b2008","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjI0LzE3Nzc5NjE0OThfMmRmMGEwOGE2YThkMzY0YTAxYzkud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=1a4323e3740b2008"]},{"id":67399661,"title":"ææ©æé2å ¥æè¢çµ","handle":"nainai","price":1599.0,"vendor":null,"slogan":"","sell_from":"2026-04-08 12:00:00","url":"/products/nainai","product_type":null,"total_sold":1599,"sold_out":true,"price_range":{"min":{"id":81947653,"price":1599.0,"compare_at_price":1899.0},"max":{"id":81947653,"price":1599.0,"compare_at_price":1899.0}},"show_slogan":false,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjYxLzE3Nzc5NjI2NjlfNDNkMmFhMzE2YmIwM2M0NTdiZTQud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=a59f9d0a508748ac","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjYxLzE3Nzc5NjI2NjlfNDNkMmFhMzE2YmIwM2M0NTdiZTQud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=a59f9d0a508748ac"]},{"id":67399672,"title":"椪ãç±³é¦","handle":"rice","price":450.0,"vendor":null,"slogan":"","sell_from":"2026-04-08 12:00:00","url":"/products/rice","product_type":null,"total_sold":9,"sold_out":true,"price_range":{"min":{"id":81947679,"price":450.0,"compare_at_price":488.0},"max":{"id":81947679,"price":450.0,"compare_at_price":488.0}},"show_slogan":false,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjcyLzE3Nzc5NjIwMDRfMzIyNzQxODE4YzY3NWFkNGEzMDMud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=8a4ee0683ada484c","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjcyLzE3Nzc5NjIwMDRfMzIyNzQxODE4YzY3NWFkNGEzMDMud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=8a4ee0683ada484c","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjcyLzE3Nzc5NjIwMDRfNDZlZDA4MmMyMjVmYzUxODA1NmQud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=736e46b4eb5d28a6","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjcyLzE3Nzc5NjIzNDFfOWQ3ZjdjMDdkYjNiZDlhODRlMjgud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=82fab2b9a5611791","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjcyLzE3Nzc5NjIzNDFfOGIzYmE1ZmIyNGM0NGZlYmQzM2Qud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=01698d153786cc81","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3Mzk5NjcyLzE3Nzc5NjIzNDFfZmZhZGJlMmE0NGU4ZDZhNTM1ZTEud2VicCJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.webp?sha=1e226e1501529c34"]},{"id":67851621,"title":"ç¢å°ç´éï½éç®æ¤ªæ","handle":"pokan","price":664.0,"vendor":null,"slogan":"å°åæ±å±± x æ°é®®ç¶å£","sell_from":"2026-05-19 00:00:00","url":"/products/pokan","product_type":null,"total_sold":1,"sold_out":false,"price_range":{"min":{"id":82547381,"price":664.0,"compare_at_price":699.0},"max":{"id":82547382,"price":1282.0,"compare_at_price":1350.0}},"show_slogan":true,"related_to_sales_page":false,"hide_price?":false,"sales_mode_purchasable?":true,"featured_image":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3ODUxNjIxLzE3NzkxNjIwNTdfYjU1YmNiNDE2ZWFjMmRlZDVjZDkuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=d2207902d4f0dcc8","optional_combo_product?":false,"combo_product_info":null,"purchase_eligibility":{"required":false,"eligible":true,"status":"eligible"},"product_labels":[],"images":["//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3ODUxNjIxLzE3NzkxNjIwNTdfYjU1YmNiNDE2ZWFjMmRlZDVjZDkuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=d2207902d4f0dcc8","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3ODUxNjIxLzE3OTA3ODE2NTBfYjM3NTg2YjY0YmNmNWEyN2Y4ODIucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=1d1b0b1
1879d12f6e165","//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL3Byb2R1Y3RzLzY3ODUxNjIxLzE3OTA3ODE2NTBfZjNkNzYwMzA3Y2E4MzMzNDVhNzQucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=1867c7452e2b36ab"]}]} 1880, 1881 sessionTitle: null, 1882 section: {"type":"_index_8_blocks","custom_name":"åååé¡","visible":true,"settings":{"dict_title":"æçé£å ç³»å","collection_handle":"food","limit":"4","product_arrangement":"2","product_column_for_pc":"4","product_column_for_mobile":"3","product_alignment":"leftPosition","product_text_align":"center","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"24","product_display":"displayDefault","product_card_hover_effect":"button","product_image_border_radius":"15"},"blocks":{},"block_order":[],"schedule":{"enabled_default":true,"schedule_lists":[]}}, 1883 productURLSearch: "", 1884 hasIntegratedProductLabelsPlugin: true, 1885 isDisplayPriceRange: null || false, 1886 pageType: "index", 1887 } 1888 if (isDynamicLoading) { 1889 window.DynamicLoading.setupComponent({ 1890 sectionId: '#index_8_blocks-1779085303274_2', 1891 callbackData: props, 1892 entryName: 'renderProductCollection', 1893 source: '//cdn-general.cybassets.com/frontend/shop/productCollection-3a2e378145f8a165.js', 1894 }); 1895 } else { 1896 renderProductCollection('#index_8_blocks-1779085303274_2', props); 1897 } 1898 var products = props.blockProducts && props.blockProducts.products; 1899 if (products) { 1900 sendProductImpressions(products, props.collection.title); 1901 } 1902 }); 1903</script>
1903 1904 1905<style> 1906 [id="1779085303274_2"] { 1907 margin: 0 0px 50px !important; 1908 } 1909 @media (max-width: 991px) { 1910 [id="1779085303274_2"] { 1911 margin: 0 0px 24px !important; 1912 } 1913 } 1914</style> 1915 1916<section id="1779085303274_2" class="index_8_blocks qk-text--center"> 1917 <div id="index_8_blocks-1779085303274_2"></div> 1918</section> 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_index_4_blocks-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' />
1934<script src='//cdn-general.cybassets.com/frontend/shop/productDisplay-3a2e378145f8a165.js' type='text/javascript'></script>
1934 1935 1936<style> 1937 [id="_index_4_blocks_2"] { 1938 margin: 0 80px 48px !important; 1939 } 1940 1941 @media (min-width: 992px) { 1942 [id="_index_4_blocks_2"] .block:not(.last-row) { 1943 margin-bottom: 10px !important; 1944 } 1945 [id="_index_4_blocks_2"] .block-default-width-margin:not(:first-of-type), 1946 [id="_index_4_blocks_2"] .block-not-first-margin { 1947 margin-left: 10px !important; 1948 } 1949 } 1950 1951 @media (max-width: 991px) { 1952 [id="_index_4_blocks_2"] { 1953 margin: 0 16px 24px !important; 1954 } 1955 [id="_index_4_blocks_2"] > .qk-display--flex.qk-flex--wrap { 1956 gap: 10px; 1957 justify-content: flex-start; 1958 } 1959 [id="_index_4_blocks_2"] .block { 1960 flex: 0 0 calc((100% - (2 - 1) * 10px) / 2); 1961 } 1962 } 1963 1964 .video-block-loading { 1965 background-color: #eeee; 1966 position: absolute; 1967 top: 0; 1968 bottom: 0; 1969 left: 0; 1970 width: 100%; 1971 height: 100%; 1972 } 1973</style> 1974
1975<script> 1976 1977 $(document).ready(function() { 1978 let isDynamicLoading = false; 1979 if (isDynamicLoading) { 1980 window.DynamicLoading.setupComponent({ 1981 sectionId:'_index_4_blocks_2', 1982 componentType:'liquid', 1983 }); 1984 } 1985 1986 1987 1988 1989 1990 }) 1991</script>
1991 1992
1993<script> 1994 function buildYoutubeEmbedUrl(url, options) { 1995 const YT_REGEX = /^.*(youtu\.be\/|v\/|u\/\w\/|embed\/|watch\?v=|&v=|shorts\/)([^#&?]*).*/; 1996 const match = (url || '').match(YT_REGEX); 1997 const videoId = match && match[2].length === 11 ? match[2] : ''; 1998 1999 if (!videoId) { 2000 return ''; 2001 } 2002 2003 const autoPlay = options && options.autoPlay; 2004 const hideControls = options && options.hideControls; 2005 const loop = options && options.loop; 2006 2007 const searchParams = new URLSearchParams(); 2008 2009 searchParams.set('autoplay', autoPlay ? '1' : '0'); 2010 // è¥èªåææ¾ï¼é è¨éé³ä»¥ç¬¦åç覽å¨éå¶ 2011 searchParams.set('mute', autoPlay ? '1' : '0'); 2012 searchParams.set('playsinline', '1'); 2013 2014 searchParams.set('controls', hideControls ? '0' : '1'); 2015 searchParams.set('rel', '0'); 2016 2017 if (loop) { 2018 searchParams.set('loop', '1'); 2019 searchParams.set('playlist', videoId); 2020 } 2021 2022 return 'https://www.youtube.com/embed/' + videoId + '?' + searchParams.toString(); 2023 } 2024 2025 function parseYtUrlOnLoad(target, url, autoPlay, hideControls, loop) { 2026 const finalUrl = buildYoutubeEmbedUrl(url, { 2027 autoPlay: autoPlay, 2028 hideControls: hideControls, 2029 loop: loop, 2030 }); 2031 2032 if (!finalUrl || target.src === finalUrl) { 2033 return; 2034 } 2035 2036 const handleVideoLoad = function () { 2037 try { 2038 const wrapper = $(target).closest('.embed-responsive')[0]; 2039 if (wrapper) { 2040 // éé loading skeleton 2041 const loading = wrapper.querySelector('.video-block-loading'); 2042 if (loading) { 2043 loading.style.display = 'none'; 2044 } 2045 } 2046 } catch (e) { 2047 console.error('iframe onload èç失æ', e); 2048 } finally { 2049 target.removeEventListener('load', handleVideoLoad); 2050 } 2051 }; 2052 2053 target.addEventListener('load', handleVideoLoad); 2054 2055 target.src = finalUrl; 2056 if (hideControls && autoPlay) { 2057 target.style.pointerEvents = 'none'; 2058 } 2059 2060 // 夿·æ¯ä¸æ¯ YouTube shortsï¼æ±ºå®è¦ä¸è¦å ä¸ .short-youtube class 2061 try { 2062 const isShort = (url || '').indexOf('/shorts/') !== -1; 2063 if (isShort) { 2064 const wrapper = $(target).closest('.embed-responsive')[0]; 2065 if (wrapper) { 2066 wrapper.classList.add('short-youtube'); 2067 } 2068 } 2069 } catch (e) { 2070 console.error('isShort 夿·å¤±æ', e); 2071 } 2072 } 2073 2074 2075 window.addEventListener('load', function () { 2076 const sectionEl = document.getElementById('_index_4_blocks_2'); 2077 if (!sectionEl) return; 2078 2079 const options = { 2080 threshold: 0.25, 2081 }; 2082 2083 2084 2085 { 2086 const target = sectionEl.querySelector('#video-block-_index_4_blocks_2_block_1'); 2087 2088 if (!target) { 2089 return; 2090 } 2091 2092 const callback = (entries, observer) => { 2093 entries.forEach(entry => { 2094 if (entry.isIntersecting) { 2095 const iframe = target.querySelector('iframe'); 2096 parseYtUrlOnLoad( 2097 iframe, 2098 'https://youtu.be/7RG8FE4tAEs?si=H5zhgFc7jg0g3URb', 2099 false, 2100 false, 2101 true 2102 ); 2103 2104 observer.unobserve(entry.target); 2105 } 2106 }); 2107 }; 2108 2109 const observer = new IntersectionObserver(callback, options); 2110 observer.observe(target); 2111 } 2112 2113 2114 2115 { 2116 const target = sectionEl.querySelector('#video-block-1777574801971_1'); 2117 2118 if (!target) { 2119 return; 2120 } 2121 2122 const callback = (entries, observer) => { 2123 entries.forEach(entry => { 2124 if (entry.isIntersecting) { 2125 const iframe = target.querySelector('iframe'); 2126 parseYtUrlOnLoad( 2127 iframe, 2128 'https://youtu.be/2Kh5Fzcr6yg?si=VxmNRZ0E66SZqzLY', 2129 false, 2130 false, 2131 true 2132 ); 2133 2134 observer.unobserve(entry.target); 2135 } 2136 }); 2137 }; 2138 2139 const observer = new IntersectionObserver(callback, options); 2140 observer.observe(target); 2141 } 2142 2143 2144 }); 2145</script>
2145 2146 2147<section id="_index_4_blocks_2" class="index-4-blocks"> 2148 <div class="qk-display--flex qk-flex--wrap"> 2149 2150 2151 2152 2153 <div class="block video mobile-2-col" style="width: calc(100% - 0.0px);"> 2154 2155 2156 <div class="embed-responsive only-video" id="video-block-_index_4_blocks_2_block_1"> 2157 <iframe 2158 frameborder="0" 2159 allowfullscreen 2160 allow="autoplay; encrypted-media" 2161 ></iframe> 2162 2163 <div class="video-block-loading" > 2164 </div> 2165 2166 </div> 2167 2168 </div> 2169 2170 2171 2172 <div class="block video mobile-2-col last-row" style="width: calc(100% - 0.0px);"> 2173 2174 2175 <div class="embed-responsive only-video" id="video-block-1777574801971_1"> 2176 <iframe 2177 frameborder="0" 2178 allowfullscreen 2179 allow="autoplay; encrypted-media" 2180 ></iframe> 2181 2182 <div class="video-block-loading" > 2183 </div> 2184 2185 </div> 2186 2187 </div> 2188 2189 </div> 2190</section> 2191 2192 2193 2194 2195 <!-- å å ¥è³¼ç©è» --> 2196 2197 <!-- cyb_snippet new_addcart_modal start --> 2198<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/vue_product_modal-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 2199 2200<div id="new-addcart-modal" class="container"> 2201 <transition name="modal"> 2202 <product-modal 2203 v-if="showProductModal" 2204 :only-description="onlyDescription" 2205 :product-url="popProductUrl" 2206 :color="color" 2207 :is-collection="isCollection" 2208 :is-show-description="isShowDescription" 2209 :is-quick-buy="isQuickBuy" 2210 :selected-variant-id="selectedVariantId" 2211 :categories="categories" 2212 :call-back="checkoutAddToCartCallback" 2213 ref="productModal" 2214 > 2215 </product-modal> 2216 </transition> 2217</div> 2218 2219<!-- cyb_snippet components/product_modal/product_modal start -->
2220<script type="text/x-template" id="product-modal"> 2221 <div class="modal-mask qk-h--100 qk-w--100 qk-l--0 qk-t--0 qk-pos--fixed" @click="closeModal"> 2222 <div class="modal-content qk-bd--none qk-center qk-bg--theme_bg" :class="{'only-description': onlyDescription}" @click.stop> 2223 <button class="btn-close qk-circle qk-circle--md qk-pos--abs qk-op--100 qk-bg--theme_bg qk-text--heading qk-bd--product_border qk-bd--default" @click="closeModal"></button> 2224 <div class="modal-body custom-scrollbar qk-w--100"> 2225 <div v-if="!isLoading"> 2226 <div id="checkout-product" class="row"> 2227 <div class="col-sm-6 col-xs-4"> 2228 <photo-swiper 2229 :mediaItems="swiperItems" 2230 :current-image-index="currentImageIndex" 2231 :current-variant="currentVariant" 2232 :video-after-image="videoAfterImage" 2233 ></photo-swiper> 2234 </div> 2235 <div class="col-sm-6 col-xs-8"> 2236 <h4 class="qk-fs--hd2 qk-fw--bold qk-text--heading qk-mg--0" v-html="product.title"></h4> 2237 <p class="product_brief qk-text--text qk-fs--body" v-html="product.brief"></p> 2238 <p class="product_slogan qk-text--heading qk-fs--body" v-html="product.slogan"></p> 2239 <div class="swiper_thumbnails" style="margin-bottom: 10px;"> 2240 <swiper-thumbnails 2241 :mediaItems="swiperItems" 2242 :current-image-index="currentImageIndex" 2243 :title="product.title" 2244 @update-current-image-index="(thumbnailIndex) => { currentImageIndex = thumbnailIndex }" 2245 ></swiper-thumbnails> 2246 </div> 2247 2248 <div v-if="!hidePrice" style="margin-bottom: 10px;"> 2249 2250 <span class="price-title qk-fs--body qk-fw--500 qk-text--heading">${ priceTitleTag }</span> 2251 2252 <div> 2253 <span v-html="variantPrice" class="variant-price qk-fs--hd1 qk-fw--bold" :class="[isDiscountPrice ? 'qk-text--discount_price' : 'qk-text--price']"></span> 2254 <del v-html="marketPrice" class="variant-del-price qk-fs--body qk-fw--500 qk-text--text"></del> 2255 </div> 2256 </div> 2257 <div v-if="!onlyDescription" class="controls"> 2258 <div class="variant-quantity qk-display--flex qk-flex--column"> 2259 <div v-if="hasVariant" class="product-variant-options"> 2260 <div v-for="(option, index) in optionInfo" class="product-variant-option" :class="{'product-variant-option--hidden': shouldHideSingleVariantOptions}"> 2261 <div class="advance variant-select-option" v-if="styledShopMenu==='dropDownType'"> 2262 2263 <label>${option.name}</label> 2264 <svg height="20" width="20" viewBox="0 0 20 20" aria-hidden="true" xmlns="http://www.w3.org/2000/svg"><path d="M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z"> </path></svg> 2265 <select class="qk-bg--theme_bg" :class="{'select_placeholder-color': currentOption[`option${index + 1}`] === null}" v-show="!isMobileSize" :value="String(currentOption[`option${index + 1}`])" @change="setOption(`option${index + 1}`, $event.target.value, option.types )" @click="onClickSelectModal(option,`option${index + 1}`)"> 2266 <option value="null" class="select_option-hidden">è«é¸æ${option.name}</option> 2267 <option :style="{ visibility : isMobileSize ? 'hidden' : 'visible' }" v-for="(types) in option.types" :disabled="!types.isValid" :value="types.name">${types.name}</option> 2268 </select> 2269 <span class="select_placeholder-color" v-if="currentOption[`option${index + 1}`] === null" v-show="isMobileSize" @click="onClickSelectModal(option,`option${index + 1}`)">è«é¸æ${option.name}</span>
2270 <span v-else :value="currentOption[`option${index + 1}`]" v-show="isMobileSize" @click="onClickSelectModal(option,`option${index + 1}`)" v-html="currentOption[`option${index + 1}`]"></span> 2271 </div> 2272 <advance-option v-else :option-key="'option' + (index + 1)" :option="option" :current-option="currentOption" :toggle-current-option="toggleCurrentOption"/> 2273 </div> 2274 </div> 2275 <div class="product_discounts_list qk-bg--theme_bg qk-bd--default qk-bd--product_border qk-pd--1 qk-mg_b--1" v-show="displayProductDiscountsList && ((displayPeriodicSalesPages && product.showableSalesPages.length > 0) || !!discountsList)"> 2276 <div class="list_block custom-scrollbar qk-of_x--hidden"> 2277 <h4 class="qk-text--heading qk-fs--body">æ¤åååèçåªæ æ´»å 2278 </h4> 2279 <template v-if="displayPeriodicSalesPages"> 2280 <div v-for="salesPage in product.showableSalesPages" class="discount-list"> 2281 <span class="discount-label qk-fs--breadcrumb qk-bd--default qk-bd--accent qk-bg--white qk-display--il_bk qk-text--accent">宿å®é¡ 2282 </span> 2283 <a class="discount-title qk-text--accent qk-fs--body" :href="salesPage.path">${ salesPage.title }</a> 2284 </div> 2285 </template> 2286 <template v-for="discounts in discountsList"> 2287 <div v-for="discount in discounts" class="discount-list"> 2288 <a v-if="discount.url" :href="discount.url" class="discount-title qk-text--accent qk-fs--body"> 2289 ${ discount.title } 2290 </a> 2291 <span v-else class="discount-title qk-text--accent qk-fs--body">${ discount.title }</span> 2292 </div> 2293 </template> 2294 </div> 2295 </div> 2296 <div v-if="showPurchaseControls" class="product-quantity qk-bd--product_border" v-show="!isMobileSize"> 2297 <div class="btn-group qk-w--100" role="group" aria-label="First group"> 2298 <button class="btn add-down qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityDecrease">ï¼</button> 2299 <input class="btn item-quantity qk-bd--default qk-bd--border qk-w--100 qk-text--heading" type="text" name="quantity" :value="quantity" @change="quantityChange"> 2300 <button class="btn add-up qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityIncrease">ï¼</button> 2301 </div> 2302 </div> 2303 </div> 2304 <div v-if="showPurchaseControls" class="add-button-wrapper"> 2305 <!-- cyb_snippet _product_modal_button start --> 2306<button 2307 class="btn btn-default add-button qk-cursor--pointer qk-w--100 qk-btn--primary" 2308 :class="{selected: isChoose, adding: adding || isHideAddCartBtn, secondary: isSecondaryBtn, 'qk-btn--disabled': isHideAddCartBtn && isNewNnCollection, 'qk-bd--none': isHideAddCartBtn && isNewNnCollection}" 2309 type="button" 2310 :disabled="isHideAddCartBtn" 2311 @click="addProduct" 2312> 2313 ${ addCartText } 2314</button> 2315 2316<!-- cyb_snippet _product_modal_button end --> 2317 </div> 2318 <div class="product-others qk-fs--body"> 2319 <span class="product-love"> 2320 <a class="btn-love qk-text--text qk-bg--theme_bg qk-bd--default qk-bd--product_border qk-display--il_bk qk-text--center qk-cursor--pointer qk-tst qk-tst_timing--ease_io qk-tst_dur--15" @click="addWishList"> 2321 <svg 2322 width="15" 2323 height="15"
2324 viewBox="0 0 24 24" 2325 fill="none" 2326 xmlns="http://www.w3.org/2000/svg"> 2327 <path 2328 d="M21.3899 4.54287C20.8146 4.01265 20.1366 3.60344 19.3969 3.34002C18.6572 3.0766 17.8711 2.96444 17.0863 3.01034C16.5593 3.01219 16.0362 3.09923 15.5375 3.26802C15.0194 3.44412 14.5265 3.68572 14.071 3.98682C13.6676 4.25092 13.2787 4.53613 12.906 4.84124C12.5762 5.09996 12.2648 5.38092 11.974 5.6821C11.6833 5.38092 11.3719 5.09996 11.042 4.84124C10.6516 4.53452 10.2443 4.24928 9.82221 3.98682C9.3967 3.69278 8.93642 3.45138 8.45163 3.26802C7.93995 3.0948 7.40254 3.0077 6.86175 3.01034C6.07688 2.96365 5.2906 3.07544 4.55076 3.3389C3.81091 3.60236 3.13296 4.01199 2.55813 4.54287C2.02401 5.11052 1.61146 5.77922 1.3453 6.50873C1.07914 7.23825 0.964875 8.01351 1.00937 8.78786C1.01359 9.36893 1.11073 9.94569 1.29719 10.4967C1.45989 11.0166 1.68054 11.517 1.95507 11.9886C2.20373 12.4073 2.47838 12.8104 2.77742 13.1956C3.09266 13.5889 3.32566 13.8601 3.46271 14.0093C3.56921 14.1255 3.6837 14.2343 3.80536 14.3348L11.4395 21.7669C11.5066 21.8412 11.5891 21.9002 11.6813 21.94C11.7736 21.9798 11.8734 21.9994 11.974 21.9975C12.0836 22.0067 12.1938 21.9906 12.296 21.9506C12.3983 21.9106 12.4898 21.8477 12.5634 21.7669L20.1838 14.3484C21.8272 12.9359 22.8376 10.9363 22.9935 8.78786C23.0307 8.0097 22.9078 7.23217 22.6321 6.50246C22.3565 5.77274 21.9339 5.10606 21.3899 4.54287V4.54287Z" 2329 stroke="currentColor" 2330 stroke-width="2" 2331 stroke-linecap="round" 2332 stroke-linejoin="round" /> 2333 </svg> 2334 å å ¥ææ 2335 </a> 2336 </span> 2337 <span class="product_sold qk-text--text" v-if="false"> 2338 <span>å·²é·å®ï¼ 2339 ${ product.totalSold } 2340 ä»¶ 2341 </span> 2342 </span> 2343 <span class="product_bonus qk-text--text" v-if="true"> 2344 æ¤åå ã æé« ãå¯ä»¥ææµç´ å© 2345 <span class="val qk-fw--600 qk-fs--hd2" v-if="currentVariant">${currentVariant.maxUsableBonus}</span> 2346 <span class="val qk-fw--600 qk-fs--hd2" v-else>${maxUsableBonus}</span> 2347 é» 2348 <span v-html="bonusToPrice"/> 2349 </span> 2350 </div> 2351 <div class='product_limit_buy qk-fs--body' v-show="product.minBuy > 0 || product.limitBuy > 0"> 2352 ${limitBuyText} 2353 </div> 2354 </div> 2355 </div> 2356 </div> 2357 <div v-if="isShowDescription" class="row"> 2358 <div class="col-sm-12"> 2359 2360 <div v-if="product.bodyHtml"> 2361 <h5 class="section-heading qk-bd--heading qk-fs--hd2 qk-text--heading"> 2362 ååä»ç´¹ 2363 </h5> 2364 <div class="ckeditor"> 2365 <div v-html="product.bodyHtml"></div> 2366 </div> 2367 </div> 2368 2369 2370 <div v-if="otherDescriptions['product_description_section_spec']"> 2371 <h5 class="section-heading qk-bd--heading qk-fs--hd2 qk-text--heading"> 2372 è¦æ ¼èªªæ 2373 </h5> 2374 <div class="ckeditor"> 2375 <div v-html="otherDescriptions['product_description_section_spec']"></div> 2376 </div> 2377 </div> 2378 2379 2380 <div v-if="otherDescriptions['product_description_section_shipping']"> 2381 <h5 class="section-heading qk-bd--heading qk-fs--hd2 qk-text--heading"> 2382 ééæ¹å¼ 2383 </h5> 2384 <div class="ckeditor"> 2385 <div v-html="otherDescriptions['product_description_section_shipping']"></div> 2386 </div> 2387 </div> 2388 2389 </div> 2390 </div> 2391 </div> 2392 <div v-show="isLoading" style="text-align: center; padding-bottom: 20px;"> 2393 <i class="fas fa-spinner fa-spin fa-fw fa-2x"></i> 2394 </div> 2395 </div> 2396 <!-- cyb_snippet _product_modal_button_mobile start --> 2397 <div 2398 v-if="showPurchaseControls" 2399 v-show="isMobileSize" 2400 class="mobile_footer" 2401 :class="{'mobile_footer-z': variantSize > 1 }"> 2402 <div class="product-quantity"> 2403 <div class="btn-group qk-w--100" role="group" aria-label="First group"> 2404 <button class="btn add-down qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityDecrease">ï¼</button> 2405 <input class="btn item-quantity qk-bd--default qk-bd--border qk-w--100 qk-text--heading" type="text" name="quantity" :value="quantity" @change="quantityChange"> 2406 <button class="btn add-up qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityIncrease">ï¼</button> 2407 </div> 2408 </div> 2409 <button 2410 v-if="!isLoading && !onlyDescription" 2411 class="btn btn-mobile add-button qk-btn qk-btn--primary qk-btn--lg" 2412 :class="{selected: isChoose, adding: adding || isHideAddCartBtn, 'qk-btn--disabled': isHideAddCartBtn && isNewNnCollection, 'qk-bd--none': isHideAddCartBtn && isNewNnCollection}" 2413 type="button" 2414 :disabled="isHideAddCartBtn" 2415 @click="addProduct"> 2416 ${ addCartText } 2417 </button> 2418</div> 2419<div 2420 class="mobile-modal" 2421 :class="{ 'modal-open': isModalSelectShow && isMobileSize }"> 2422 <div class="mobile_modal-content"> 2423 <div class="modal_close-button"> 2424 <button class="btn-close qk-circle qk-circle--md qk-pos--abs qk-op--100 qk-text--heading qk-bd--product_border qk-bd--default" @click="onChangeModalSelect(false,true)"></button> 2425 </div> 2426 2427 <p>è«é¸æ${modalOption.name}</p> 2428 <div class="modal_select-templete qk-display--flex qk-of_y--auto qk-w--100"> 2429 <div class="options-container"> 2430 <label :class="{'seleced-option': currentOption && currentOption[selectOption] === data.name, 'avoid-clicks':!data.isValid}" v-for="data in modalOption.types" @click="setOption(selectOption, data.name, modalOption.types)">${data.name}</label> 2431 </div> 2432 </div> 2433 <div v-if="variantSize > 1" class="modal_select_footer qk-display--flex"> 2434 <button type="button" class="modal_cancel qk-bd--default qk-btn--secondary qk-bd--button qk-text--button" @click="onChangeModalSelect(false,false)">åæ¶</button> 2435 <button type="button" class="qk-btn qk-btn--primary qk-btn--lg qk-fs--body qk-bd--button qk-test--button_text" @click="onChangeModalSelect(false,true)">宿</button> 2436 </div> 2437 </div> 2438</div> 2439 2440<!-- cyb_snippet _product_modal_button_mobile end --> 2441 </div> 2442 </div> 2443</script>
2443 2444 2445<!-- cyb_snippet components/product_modal/color_image_option start -->
2446<script id="color-image-option" type="text/x-template"> 2447 <div class="color-image qk-display--flex qk-flex--wrap qk-align--center"> 2448 <div class="title">é¡è²</div> 2449 <div 2450 v-for="(imageColor, index) in imageColors" 2451 :class="{ 2452 'focus': !currentOption[optionKey] === option.types[index].name && currentImageIndex === index, 2453 'selected': currentOption[optionKey] === option.types[index].name, 2454 'disabled': !option.types[index].isValid 2455 }" 2456 class="image-option img-flex qk-bd--default qk-bd--transparent qk-display--block qk-pos--rel" 2457 @mouseleave="setCurrentImageIndex(index)" 2458 @mouseover="getOptionImageIndex(index)" 2459 @click="setOption(optionKey, index)" 2460 > 2461 <img v-if="imageColor !== 'noColorImage'" :src="imageColor.large" alt="image"> 2462 <img v-else src="/assets/no-image-large.png" alt="image"> 2463 </div> 2464 </div> 2465</script>
2465 2466
2467<script type="text/javascript"> 2468 $(document).ready(function() { 2469 window.themeHelper.productModalComponents['color-image-option'] = { 2470 template: '#color-image-option', 2471 delimiters: ['${', '}'], 2472 props: { 2473 optionKey: String, 2474 option: Object, 2475 product: Object, 2476 imageColors: Array, 2477 isChoose: Boolean, 2478 currentImageIndex: Number, 2479 setCurrentImageIndex: Function, 2480 getOptionImageIndex: Function, 2481 currentOption: Object, 2482 toggleCurrentOption: Function, 2483 }, 2484 methods: { 2485 setOption: function(optionKey, index) { 2486 const type = this.option.types[index]; 2487 if(type.isValid){ 2488 this.toggleCurrentOption(optionKey, type.name); 2489 } 2490 } 2491 } 2492 }; 2493 }); 2494</script>
2494 2495 2496<!-- cyb_snippet components/product_modal/color_image_option end --> 2497<!-- cyb_snippet components/product_modal/advance_option start -->
2498<script id="advance-option" type="text/x-template"> 2499 <div class="advance"> 2500 <div class="title qk-text--heading qk-fs--body">${option.name}</div> 2501 <div 2502 v-for="type in option.types" 2503 :class="{ 2504 'selected': currentOption[optionKey] === type.name, 2505 'disabled': !type.isValid 2506 }" 2507 @click="setOption(optionKey, type)" 2508 class="option qk-btn qk-bd--button qk-text--button qk-pd_x--1" 2509 > 2510 ${type.name} 2511 </div> 2512 </div> 2513</script>
2513 2514
2515<script type="text/javascript"> 2516 $(document).ready(function() { 2517 window.themeHelper.productModalComponents['advance-option'] = { 2518 template: '#advance-option', 2519 delimiters: ['${', '}'], 2520 props: { 2521 optionKey: String, 2522 option: Object, 2523 product: Object, 2524 currentOption: Object, 2525 toggleCurrentOption: Function, 2526 }, 2527 methods: { 2528 setOption: function(optionKey, type) { 2529 if(type.isValid){ 2530 this.toggleCurrentOption(optionKey, type.name); 2531 } 2532 } 2533 } 2534 }; 2535 }); 2536</script>
2536 2537 2538<!-- cyb_snippet components/product_modal/advance_option end --> 2539 2540<!-- cyb_snippet components/product_modal/photo_swiper start --> 2541 2542
2543<script id="photo-swiper" type="text/x-template"> 2544 <div ref="photoSwiper" id="photo_swiper" class="photos swiper swiper-container"> 2545 <div class="swiper-wrapper"> 2546 <template v-if="hasImage"> 2547 <div v-for="(item, index) in mediaItems" :key="index" class="photo swiper-slide qk-align--center qk-display--flex qk-justify--center qk-vert--text_top three_to_four_scale"> 2548 <video-player v-if="item.url" :video="item" 2549 :video-poster=" !!mediaItems[firstImageIndex] ? mediaItems[firstImageIndex].large : '//cdn-general.cybassets.com/img_loading.svg' " 2550 > 2551 </video-player> 2552 <img v-else class="qk-center" :src="item.large" alt="image"/> 2553 </div> 2554 </template> 2555 <div v-else class="photo swiper-slide qk-align--center qk-display--flex qk-justify--center qk-vert--text_top three_to_four_scale"> 2556 <img src="//cdn-general.cybassets.com/assets/no-image-large-2b95ea56c455be9ce081d81c14eded925df68bf8fa38809e46f6af8fcdd5f9bc.png" alt="image" /> 2557 </div> 2558 </div> 2559 <div v-show="showBtn" class="photo-prev qk-swiper_btn--prev qk-hidden--mobile qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v2 qk-mg_l--05"></div> 2560 <div v-show="showBtn" class="photo-next qk-swiper_btn--next qk-hidden--mobile qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v2 qk-mg_l--05"></div> 2561 2562 <div class="photo-pagination qk-bd--default qk-bd--body qk-text--center qk-text--body qk-fs--breadcrumb qk-visible-sm"> 2563 <span class="current-index qk-text--default_dark">${currentImageIndex +1 }</span><span class="pagination-slash">/</span> 2564 <span>${mediaItems.length}</span> 2565 </div> 2566 </div> 2567</script>
2567 2568
2569<script> 2570 $(document).ready(function () { 2571 window.themeHelper.productModalComponents['photo-swiper'] = { 2572 template: '#photo-swiper', 2573 delimiters: ['${', '}'], 2574 props: { 2575 mediaItems: Array, 2576 currentImageIndex: Number, 2577 currentVariant: Object, 2578 videoAfterImage: Boolean, 2579 }, 2580 data: function () { 2581 return { 2582 swiper: {}, 2583 swiperOption: { 2584 preventInteractionOnTransition: true, 2585 rewind: true, 2586 spaceBetween: 5, 2587 slidesPerView: 1, 2588 navigation: { 2589 nextEl: '.photo-next', 2590 prevEl: '.photo-prev' 2591 } 2592 }, 2593 showBtn: true, 2594 isVariantReposition: false, 2595 } 2596 }, 2597 mounted: function() { 2598 this.swiper = new Swiper('#photo_swiper', this.swiperOption); 2599 this.swiper.on('slideChange', this.slideOnChange); 2600 }, 2601 watch: { 2602 currentImageIndex: function() { 2603 this.slideToIndex(); 2604 }, 2605 currentVariant: { 2606 immediate: true, 2607 handler: function() { 2608 this.showBtn = this.mediaItems.length > 1; 2609 this.isVariantReposition = true; 2610 this.$nextTick(() => { 2611 if (this.swiper) { 2612 this.swiper.update(); 2613 this.swiper.slideToLoop(this.initialItemIndex) 2614 this.slideOnChange(); 2615 this.isVariantReposition = false; 2616 } 2617 }); 2618 }, 2619 }, 2620 }, 2621 computed: { 2622 hasImage: function() { 2623 return this.mediaItems.length > 0; 2624 }, 2625 hasVideo: function() { 2626 return this.mediaItems.findIndex(item => !!item.url) !== -1; 2627 }, 2628 variantPhotos: function() { 2629 if (this.currentVariant?.photos?.length) { 2630 return this.currentVariant.photos; 2631 } else { 2632 return null; 2633 } 2634 }, 2635 initialItemIndex: function() { 2636 if (this.hasVideo && !this.videoAfterImage) { 2637 // Focus on photo if "variant with photos" selected, video otherwise 2638 return this.variantPhotos?.length ? 1 : 0; 2639 } else { 2640 // Focus on first photo 2641 return 0; 2642 } 2643 }, 2644 }, 2645 methods: { 2646 slideOnChange: function() { 2647 themeHelper.EventBus.$emit('photoOnChange', this.swiper.realIndex, this.isVariantReposition); 2648 }, 2649 slideToIndex: function() { 2650 if(this.swiper.realIndex != this.currentImageIndex) { 2651 this.swiper.slideToLoop(this.currentImageIndex); 2652 this.swiper.update(); 2653 } 2654 }, 2655 } 2656 }; 2657 }); 2658</script>
2658 2659 2660 2661<!-- cyb_snippet components/product_modal/video_player start -->
2662<script id="video-player" type="text/x-template"> 2663 <div class="videoPlayer__wrapper" @click="handleVideoClick"> 2664 <video 2665 id='modal-video' 2666 class="videoPlayer__video qk-cursor--pointer qk-center" 2667 :poster="videoPoster" 2668 loop defaultMuted muted playsinline webkit-playsinline autoplay 2669 > 2670 <source :src="videoUrl" type="video/mp4"> 2671 <p>ä½ çç覽å¨ä¸æ¯æ´ HTML 5 video</p> 2672 </video> 2673 <button id="modal-video-button" class="videoPlayer__pauseButton"></button> 2674 </div> 2675</script>
2675 2676
2677<script> 2678 $(document).ready(function () { 2679 window.themeHelper.productModalComponents['video-player'] = { 2680 template: '#video-player', 2681 delimiters: ['${', '}'], 2682 props: { 2683 video: Object, 2684 videoPoster: String, 2685 }, 2686 data: function() { 2687 return { 2688 videoElement: null, 2689 buttonElement: null, 2690 }; 2691 }, 2692 mounted: function() { 2693 this.videoElement = $('#modal-video')[0]; 2694 this.buttonElement = $('#modal-video-button'); 2695 this.setVideoVolumeZero(); 2696 this.videoElement.addEventListener('canplay', (event) => { 2697 this.sendGtag('play'); 2698 }, { once: true }); 2699 }, 2700 computed: { 2701 videoUrl: function() { 2702 return this.video.url; 2703 } 2704 }, 2705 methods: { 2706 sendGtag: function(action) { 2707 window.productVideoView && productVideoView(action); 2708 }, 2709 setVideoVolumeZero: function() { 2710 this.videoElement.volume = 0; 2711 }, 2712 handleVideoClick: function() { 2713 if (this.videoElement.paused){ 2714 this.videoElement.play(); 2715 this.sendGtag('play'); 2716 } else { 2717 this.videoElement.pause(); 2718 this.sendGtag('paused'); 2719 } 2720 this.handleVideoButtonDisplay(this.buttonElement, this.videoElement); 2721 }, 2722 handleVideoButtonDisplay: function(button, video) { 2723 button.toggleClass('videoPlayer__playButton', video.paused); 2724 button.toggleClass('videoPlayer__pauseButton', !video.paused); 2725 }, 2726 } 2727 }; 2728 }); 2729</script>
2729 2730 2731<!-- cyb_snippet components/product_modal/video_player end --> 2732 2733<!-- cyb_snippet components/product_modal/photo_swiper end --> 2734<!-- cyb_snippet components/product_modal/swiper_thumbnails start -->
2735<script id="swiper-thumbnails" type="text/x-template"> 2736 <div 2737 v-for="(thumbnail, index) in allThumbnails" 2738 :key="index" 2739 class="product-thumbnail img-flex qk-of--hidden qk-display--il_bk qk-cursor--pointer qk-bd--default qk-bd--transparent three_to_four_scale" 2740 :class="{ focus: index === currentImageIndex }" 2741 @mouseover="updateCurrentImageIndex(index)" 2742 > 2743 <template v-if="thumbnail.isVideo"> 2744 <video class="qk-w--100 qk-h--100" :src="thumbnail.url" defaultMuted playsinline></video> 2745 <button class="videoPlayer__playButton"></button> 2746 </template> 2747 <img v-else :src="thumbnail.url" :alt="title" class="qk-w--100 qk-h--100"> 2748 </div> 2749</script>
2749 2750
2751<script type="text/javascript"> 2752 $(document).ready(function () { 2753 window.themeHelper.productModalComponents['swiper-thumbnails'] = { 2754 template: '#swiper-thumbnails', 2755 delimiters: ['${', '}'], 2756 props: { 2757 title: String, 2758 mediaItems: Array, 2759 currentImageIndex: Number, 2760 }, 2761 emits: ['updateCurrentImageIndex'], 2762 methods: { 2763 updateCurrentImageIndex: function(thumbnailIndex) { 2764 if (thumbnailIndex !== this.currentImageIndex ) { 2765 this.$emit('updateCurrentImageIndex', thumbnailIndex); 2766 } 2767 }, 2768 }, 2769 mounted() { 2770 // can be removed after replacing video thumbnail with img 2771 const thumbnailVideo = $('.product-thumbnail video')[0]; 2772 if (!!thumbnailVideo) { 2773 thumbnailVideo.volume = 0; 2774 const promise = thumbnailVideo.play(); 2775 promise.then(() => { 2776 thumbnailVideo.pause(); 2777 }) 2778 } 2779 }, 2780 computed: { 2781 allThumbnails: function() { 2782 return this.mediaItems.map(item => ({ 2783 isVideo: !!item.url, 2784 url: item.url || item.medium 2785 })); 2786 }, 2787 }, 2788 watch: { 2789 allThumbnails: { 2790 handler(){ 2791 this.updateCurrentImageIndex(this.currentImageIndex); 2792 } 2793 } 2794 } 2795 }; 2796 }); 2797</script>
2797 2798 2799<!-- cyb_snippet components/product_modal/swiper_thumbnails end --> 2800 2801 2802<!-- cyb_snippet _product_modal_js start -->
2803<script type="text/javascript"> 2804 $(document).ready(function() { 2805 var categoryLevels = []; 2806 var productCategoryLevels = null; 2807 var pageMainProductId = null; 2808 window.themeHelper.productModalComponents['product-modal'] = { 2809 template: '#product-modal', 2810 delimiters: [ 2811 '${', '}' 2812 ], 2813 props: { 2814 onlyDescription: Boolean, 2815 cartItems: Array, 2816 groupId: Number, 2817 productUrl: String, 2818 color: String, // unused 2819 collectionId: Number, 2820 categories: Array, 2821 // 夿·æ¯å¦æè²ç¥¨å±é 2822 isCollection: { 2823 type: Boolean, 2824 required: false, 2825 default: false, 2826 }, 2827 // 夿·å å ¥è³¼ç©è»çæ¹æ³ 2828 isNnCollection: Boolean, 2829 isNewNnCollection: Boolean, 2830 isBundleDiscount: Boolean, 2831 2832 // 夿·æ¯å¦é¡¯ç¤ºååæè¿° 2833 isShowDescription: { 2834 type: Boolean, 2835 default: true 2836 }, 2837 2838 // 夿·æ¯å¦çºç«å³è³¼è²· 2839 isQuickBuy: { 2840 type: Boolean, 2841 default: false 2842 }, 2843 selectedVariantId: Number, 2844 callBack: Function 2845 }, 2846 data: function() { 2847 return { 2848 styledShopMenu: "buttonType", 2849 selectOption: '', 2850 selectCurrentStr:'', 2851 isModalSelectShow: false, 2852 modalOption: {}, 2853 adding: false, 2854 currentImageIndex: 0, 2855 _navState: { variantId: null, photoIndex: 0 }, 2856 currentOption: { 2857 option1: null, 2858 option2: null, 2859 option3: null 2860 }, 2861 currentVariant: null, 2862 variantNotifications: null, 2863 currentVariantIndex: null, 2864 product: {}, 2865 isChoose: false, 2866 isLoading: true, 2867 isEmptyClickable: liquidHelper.isEmptyClickable, 2868 quantity: 1, 2869 maxUsableBonus: 0, 2870 isDiscountPrice: false, 2871 displayProductDiscountsList: true, 2872 displayPeriodicSalesPages:true, 2873 discountsList: null, 2874 hasVideoPlugin: true, 2875 videoDisplayLocation: "before", 2876 hasStockNotificationPlugin: false, 2877 isDisplayPriceRange: null, 2878 hasVariantPriceRangePlugin: true, 2879 hasHideSingleVariantOptionsPlugin: false, 2880 } 2881 }, 2882 mounted: function() { 2883 this.getProductDetail(); 2884 $('.custom-scrollbar').addCustomScrollbar(); 2885 themeHelper.EventBus.$on('photoOnChange', this.photoOnChange); 2886 }, 2887 beforeUnmount: function() { 2888 themeHelper.EventBus.$off('photoOnChange', this.photoOnChange); 2889 }, 2890 computed: { 2891 photoUrls: function() { 2892 return this.product.photoUrls.length > 0 2893 ? this.product.photoUrls 2894 : [this.featuredImage]; 2895 }, 2896 photoUrlsMap: function() { 2897 var map = {}; 2898 var urls = this.product.photoUrls; 2899 this.product.photos.forEach(function(photo, index) { 2900 map[photo.photo.id] = urls[index]; 2901 }); 2902 2903 return map; 2904 }, 2905 featuredImage: function() { 2906 return this.product.featuredImage; 2907 }, 2908 swiperPhotos: function() { 2909 if (!this.photoUrls.length) { 2910 return [this.featuredImage]; 2911 } 2912 2913 if (this.currentVariant && this.currentVariant.photos.length) { 2914 var map = this.photoUrlsMap; 2915 return this.currentVariant.photos.map(function(p) { 2916 return map[p.id]; 2917 }); 2918 } 2919 2920 return this.photoUrls; 2921 }, 2922 productVideo: function() { 2923 return this.product.video; 2924 }, 2925 videoAfterImage: function() { 2926 return this.videoDisplayLocation === 'after'; 2927 }, 2928 swiperItems: function() { 2929 const media = [...this.swiperPhotos]; 2930 if ( 2931 this.hasVideoPlugin && this.productVideo.url 2932 ) { 2933 this.videoAfterImage 2934 ? media.push(this.productVideo) 2935 : media.unshift(this.productVideo); 2936 } 2937 return media; 2938 }, 2939 firstImageIndex: function() { 2940 return this.hasVideoPlugin && this.productVideo.url && !this.videoAfterImage 2941 ? 1 2942 : 0 2943 }, 2944 otherDescriptions: function() { 2945 var descriptions = {}; 2946 this.product.otherDescriptions.forEach(function(od) { 2947 descriptions[od.settingName] = od.bodyHtml; 2948 }) 2949 return descriptions 2950 }, 2951 variantOptions: function() { 2952 return themeHelper.variantOptions(this.product); 2953 }, 2954 firstValidVariant: function() { 2955 var self = this; 2956 var result = this.product.variants.find(function(variant) { 2957 // å¢å product modal è¯çµ¡åºå®¶ property 2958 variant.imgUrl = ""; 2959 variant.productTitle = ""; 2960 2961 return variant.available; 2962 }); 2963 2964 return result 2965 ? result 2966 : null; 2967 }, 2968 selectedValidVariant: function() { 2969 var self = this; 2970 var result = this.variantOptions.find(function(variant) { 2971 return variant.id === self.selectedVariantId; 2972 }); 2973 2974 return result 2975 ? result 2976 : null; 2977 }, 2978 totalInventoryQuantity: function(product) { 2979 return themeHelper.totalInventoryQuantity(this.product) 2980 }, 2981 addCartText: function() { 2982 var variants = parseInt(""); 2983 let isRegisteredNotification = this.currentVariant && this.variantNotifications && this.variantNotifications[this.currentVariant.id] 2984 if (this.isNnCollection || this.isBundleDiscount) { 2985 if (this.currentVariant && !themeHelper.variantIsAvailable(this.currentVariant)) { 2986 if (this.currentVariant.inventoryPolicy === 'continue') { 2987 if (this.isNnCollection) { 2988 return this.isChoose && !this.isNewNnCollection 2989 ? 'å·²é è³¼' 2990 : 'é è³¼åå'; 2991 } 2992 } else { 2993 return 'å·²å®å®'; 2994 } 2995 } 2996 if (this.totalInventoryQuantity === 0) { 2997 return 'å·²å®å®'; 2998 } 2999 return this.isChoose && !this.isNewNnCollection 3000 ? 'å·²é¸è³¼' 3001 : 'é¸è³¼'; 3002 } else { 3003 if (this.isQuickBuy) { 3004 if (this.currentVariant && !themeHelper.variantIsAvailable(this.currentVariant)) { 3005 if (this.currentVariant.inventoryPolicy === 'continue'){ 3006 return 'ç«å³é è³¼' 3007 } 3008 return this.hasStockNotificationPlugin 3009 ? (isRegisteredNotification 3010 ? 'å·²ç»è¨è£è²¨éç¥' 3011 : 'å·²å®å®ï¼è²¨å°éç¥æ') 3012 : 'è¯çµ¡åºå®¶' 3013 } 3014 return 'ç«å³è³¼è²·'; 3015 } else { 3016 if (this.currentVariant) { 3017 if (!themeHelper.variantIsAvailable(this.currentVariant)) { 3018 if (this.currentVariant.inventoryPolicy === 'continue'){ 3019 return 'é è³¼åå' 3020 } 3021 return this.hasStockNotificationPlugin 3022 ? (isRegisteredNotification 3023 ? 'å·²ç»è¨è£è²¨éç¥' 3024 : 'å·²å®å®ï¼è²¨å°éç¥æ') 3025 : 'è¯çµ¡åºå®¶' 3026 } 3027 } else { 3028 if (this.totalInventoryQuantity === 0) { 3029 return 'å·²å®å®'; 3030 } 3031 } 3032 return 'å å ¥è³¼ç©è»'; 3033 } 3034 } 3035 }, 3036 cartItem: function() { 3037 if (!this.currentVariant) { 3038 return null 3039 } 3040 return { 3041 id: this.currentVariant.id, 3042 groupId: this.groupId, 3043 productId: this.product.id, 3044 title: this.product.title, 3045 photo: this.currentVariant.imgUrl || this.featuredImage.large, 3046 quantity: this.quantity, 3047 price: this.currentVariant.price, 3048 variant: this.currentVariant, 3049 product: this.product 3050 } 3051 }, 3052 options: function() { 3053 return this.product.options; 3054 }, 3055 optionTypes: function() { 3056 3057 // å æ ¹æè¨å®çvariantsä¾æåº 3058 var self = this; 3059 3060 var option1 = []; 3061 var option2 = []; 3062 var option3 = [];
3063 this.product.variants.forEach(function(item) { 3064 if (item.option1 !== null) { 3065 option1.push(item.option1); 3066 } 3067 if (item.option2 !== null) { 3068 option2.push(item.option2); 3069 } 3070 if (item.option3 !== null) { 3071 option3.push(item.option3); 3072 } 3073 }) 3074 var filteredOptionTypes = []; 3075 this.product.optionTypes.forEach(function(item, index) { 3076 filteredOptionTypes.push(self.getUniqueVariant(eval('option' + ( 3077 index + 1 3078 ))).join(',')); 3079 }); 3080 return filteredOptionTypes; 3081 }, 3082 optionInfo: function() { 3083 var self = this; 3084 3085 return self.options.map(function(option, index) { 3086 return { 3087 name: option, 3088 types: self.getOptions('option' + ( 3089 index + 1 3090 ), self.optionTypes[index].split(',')) 3091 } 3092 }); 3093 }, 3094 hasVariant: function() { 3095 return this.product.options.length > 0; 3096 }, 3097 shouldHideSingleVariantOptions: function() { 3098 return this.hasHideSingleVariantOptionsPlugin && 3099 this.product.variants && 3100 this.product.variants.length <= 1; 3101 }, 3102 variantSize: function() { 3103 if(this.product.options){ 3104 return this.product.options.length; 3105 } 3106 }, 3107 firstVariant: function() { 3108 return this.product.variants[0]; 3109 }, 3110 firstCheapestVariant: function() { 3111 return this.product.variants.find((v)=> (v.price === this.priceStats.minPrice)); 3112 }, 3113 priceStats: function() { 3114 return this.product.variants.reduce(function(acc, variant) { 3115 return { 3116 minPrice: variant.price < acc.minPrice ? variant.price : acc.minPrice, 3117 maxPrice: variant.price > acc.maxPrice ? variant.price : acc.maxPrice, 3118 }; 3119 }, { 3120 minPrice: this.firstVariant.price, 3121 maxPrice: this.firstVariant.price, 3122 }); 3123 }, 3124 hidePrice: function() { 3125 return this.product && this.product.hidePrice === true; 3126 }, 3127 salesModePurchasable: function() { 3128 return !(this.product && this.product.salesModePurchasable === false); 3129 }, 3130 // - 任鏿æ£ï¼ç´ é ç¶ ï¼ã鏿ãåªæ¯å é²è©¦ç®æ¸ å®ï¼ä¸æç´æ¥ä¸å®ï¼æ åªæèå¹åå 3131 // - å ¶ä»æ å¢ï¼ååé ã群çµé ãå¤å±¤ç´åé¡ãæå°ãé¦é åååå¡ï¼ï¼ä¸å¯è³¼è²·ï¼å«èå¹ï¼å°±æ´çµæ¶æ 3132 showPurchaseControls: function() { 3133 if (this.isNnCollection || this.isBundleDiscount) { 3134 return !this.hidePrice; 3135 } 3136 return this.salesModePurchasable; 3137 }, 3138 variantPrice: function() { 3139 if (this.hidePrice) { 3140 return ''; 3141 } 3142 var from = liquidHelper.defaultCurrency; 3143 if (this.currentVariant) { 3144 return moneySymbol(this.currentVariant.price, from); 3145 } 3146 if (this.product.variants.length === 1) { 3147 return moneySymbol(this.firstVariant.price, from); 3148 } 3149 3150 var minPrice = this.priceStats.minPrice; 3151 var maxPrice = this.priceStats.maxPrice; 3152 3153 if (minPrice !== maxPrice && (!this.hasVariantPriceRangePlugin || this.isDisplayPriceRange)) { 3154 this.isDiscountPrice = false; 3155 return moneySymbol(minPrice, from) + '~' + moneySymbol(maxPrice, from); 3156 } else { 3157 return moneySymbol(minPrice, from); 3158 } 3159 }, 3160 marketPrice: function() { 3161 if (this.hidePrice) { 3162 this.isDiscountPrice = false; 3163 return; 3164 } 3165 var from = liquidHelper.defaultCurrency; 3166 if (this.currentVariant) { 3167 this.isDiscountPrice = false; 3168 if (this.currentVariant.compareAtPrice && this.currentVariant.compareAtPrice > this.currentVariant.price) { 3169 this.isDiscountPrice = true; 3170 return moneySymbol(this.currentVariant.compareAtPrice, from); 3171 } 3172 } else { 3173 if (!_.includes(this.variantPrice, '~')) { 3174 const price = Number(this.variantPrice.replace(/[^0-9.
3174-]/g, "")) 3175 // æªé¸ææ¬¾å¼ä¹ä¸é¡¯ç¤ºåéæï¼é¡¯ç¤ºç¬¬ä¸åæä¾¿å®ç款å¼çå®å¹ 3176 if (this.firstCheapestVariant.compareAtPrice && this.firstCheapestVariant.compareAtPrice > price){ 3177 this.isDiscountPrice = true; 3178 return moneySymbol(this.firstCheapestVariant.compareAtPrice, from); 3179 } 3180 // æªé¸ææ¬¾å¼æè¦æ¹åä¸è¬å¹æ ¼é¡è² 3181 this.isDiscountPrice = false; 3182 } 3183 } 3184 }, 3185 isShowDropdownList: function() { 3186 if (this.product.options.length > 0) { 3187 return true; 3188 } 3189 return this.product.variants.length > 1 3190 }, 3191 priceTitleTag: function() { 3192 return this.marketPrice 3193 ? getDiscountPriceName() 3194 : getDiscountPriceSuggestionName(); 3195 }, 3196 isHideAddCartBtn: function() { 3197 if (this.addCartText === 'å·²å®å®') { 3198 return true; 3199 } 3200 return false; 3201 }, 3202 isSecondaryBtn: function() { 3203 if (this.addCartText === 'è¯çµ¡åºå®¶') { 3204 return true; 3205 } 3206 return false; 3207 }, 3208 variantsMaxUsableBonus: function() { 3209 var variants = this.product.variants; 3210 var maxUsableBonusArray = variants.map(function(item) { 3211 return item.maxUsableBonus 3212 }); 3213 return Math.max.apply(null, maxUsableBonusArray); 3214 }, 3215 bonusToPrice: function() { 3216 const bonus = this.currentVariant 3217 ? this.currentVariant.maxUsableBonus 3218 : this.maxUsableBonus; 3219 const price = Math.floor(bonus / window.liquidHelper.conversionBonus); 3220 const priceWithMoney = window.themeHelper.productDisplayCurrencyBlock(price); 3221 return "(ç´çæ¼ value )".replace('value', priceWithMoney); 3222 }, 3223 isMobileSize: function() { 3224 return window.innerWidth <= 580 3225 }, 3226 limitBuyText: function () { 3227 const minCount = this.product.minBuy; 3228 const maxCount = this.product.limitBuy; 3229 if (minCount > 0 && maxCount > 0) { 3230 return 'æ¤å忝çè¨å®æå°é購買 minCount ä»¶ï¼æå¤å¯è³¼è²· maxCount ä»¶'.replace('minCount', minCount).replace('maxCount', maxCount); 3231 } 3232 if (minCount > 0) { 3233 return 'æ¤å忝çè¨å®æå°é購買 minCount ä»¶'.replace('minCount', minCount); 3234 } 3235 if (maxCount > 0) { 3236 return 'æ¤å忝çè¨å®æå¤å¯è³¼è²· maxCount ä»¶'.replace('maxCount', maxCount); 3237 } 3238 return ''; 3239 } 3240 }, 3241 methods: { 3242 onClickSelectModal: function(objData, selectOptionStr) { 3243 this.isModalSelectShow = true; 3244 this.modalOption = objData; 3245 this.selectOption = selectOptionStr 3246 this.selectCurrentStr = this.currentOption && (String(this.currentOption[selectOptionStr]) || null) 3247 }, 3248 onChangeModalSelect: function(flag, isSelect) { 3249 if(!isSelect){ 3250 this.setOption(this.selectOption,this.selectCurrentStr,this.modalOption.types) 3251 } 3252 this.isModalSelectShow = flag; 3253 }, 3254 setOption: function(optionKey, type, dataArr) { 3255 let flag = true 3256 dataArr.forEach(item => { 3257 if (item.name === type) { 3258 flag = item.isValid 3259 } 3260 }) 3261 if (flag) { 3262 this.toggleCurrentOption(optionKey, type) 3263 } 3264 }, 3265 addToWishListEvent: function() { 3266 try { 3267 if (appMarketAddToWishListEvent) { 3268 var product = this.product; 3269 var currentVariant = this.currentVariant 3270 var element = $(`.btn[data-id=${product.id}]`); 3271 var index; 3272 var listName; 3273 if (element) { 3274 index = element.data('position') 3275 listName = element.data('list') 3276 } 3277 // sku_properties:é¸ä¸æ¬¾å¼ç option pairs(ç¶åèªç³»),é¡åå zip å¼ 3278 var optionValues = [currentVariant.option1, currentVariant.option2, currentVariant.option3]; 3279 var properties = [];
3280 (product.options || []).forEach(function(optionName, i) { 3281 if (optionName && optionValues[i]) { 3282 properties.push({ name: optionName, value: optionValues[i] }); 3283 } 3284 }); 3285 var dataSet = { 3286 name: product.title, 3287 category: product.productType, 3288 categories: (this.categories && this.categories.length) ? this.categories : (categoryLevels.length ? categoryLevels : (product.id === pageMainProductId ? productCategoryLevels : undefined)), 3289 sku: currentVariant.sku, 3290 price: currentVariant.price, 3291 compare_at_price: currentVariant.compareAtPrice, 3292 properties: properties, 3293 quantity: currentVariant.inventoryQuantity, 3294 variant: currentVariant.title, 3295 listName: listName || null, 3296 productId: product.id, 3297 variantId: currentVariant.id, 3298 index: Number(index) || 0, 3299 } 3300 appMarketAddToWishListEvent(dataSet) 3301 } 3302 } catch (e) { 3303 console.error(e) 3304 } 3305 }, 3306 addWishList: function() { 3307 if (this.currentVariant === null) { 3308 window.msg('è«é¸æå忬¾å¼', 'warning').show(); 3309 return; 3310 } 3311 var productVariantId = this.currentVariant.id; 3312 var addToWishListEvent = this.addToWishListEvent 3313 $.ajax({ 3314 method: 'POST', 3315 url: '/tracking_items', 3316 dataType: 'json', 3317 data: { 3318 product_variant_id: productVariantId 3319 }, 3320 success: function(response) { 3321 if (response.message) { 3322 window.msg(response.message, 'success').show(); 3323 addToWishListEvent() 3324 } 3325 3326 if (response.error) { 3327 window.msg(response.error, 'error').show(); 3328 3329 } 3330 if (response.info) { 3331 window.msg(response.info, 'info').show(); 3332 } 3333 if (response.success === false) { 3334 if (window.liquidHelper && window.liquidHelper.language && window.liquidHelper.language.handle) { 3335 window.location = "/" + window.liquidHelper.language.handle + "/account/login"; 3336 } else { 3337 window.location = "/account/login"; 3338 } 3339 } 3340 } 3341 }); 3342 }, 3343 setChoose: function(currentVariant) { 3344 this.maxUsableBonus = 0; 3345 var quantity = 1; 3346 var cartItem = null; 3347 if (!this.isNnCollection && this.cartItems) { 3348 cartItem = this.normalGetChoosenItem(currentVariant); 3349 } 3350 if (this.isNnCollection) { 3351 cartItem = this.nnCollectionGetChoosenItem(currentVariant); 3352 } 3353 this.isChoose = !! cartItem; 3354 if (this.isNewNnCollection) { 3355 return 3356 } 3357 this.quantity = cartItem 3358 ? cartItem.quantity 3359 : this.quantity; 3360 3361 // product modal è¯çµ¡åºå®¶æ å¢ 3362 if (currentVariant) { 3363 var photoIndex = 0; 3364 if (! currentVariant.imgUrl) { 3365 currentVariant.imgUrl = this.swiperPhotos.length > 0 3366 ? (this.swiperPhotos[photoIndex] && this.swiperPhotos[photoIndex].large) 3367 : this.featuredImage.large; 3368 } 3369 currentVariant.productTitle = this.product.title + ' - ' + this.currentVariant.title; 3370 } 3371 }, 3372 normalGetChoosenItem: function(currentVariant) { 3373 return this.cartItems.find(function(cartItem) { 3374 return currentVariant && cartItem.id === currentVariant.id; 3375 }); 3376 }, 3377 nnCollectionGetChoosenItem: function(currentVariant) { 3378 var isSelected = null; 3379 if (! currentVariant) { 3380 return isSelected; 3381 } 3382 if (this.isNewNnCollection) { 3383 var cart = store.get(`SpecialCollectionCart_${this.collectionId}`); 3384 isSelected = cart && cart.find((item) => item.variant_id == currentVariant.id) || null; 3385 } else { 3386 store.each(function(value, key) { 3387 var productId = _.includes(key, 'Pro' + currentVariant.productId); 3388 var variantID = _.includes(key, 'Var' + currentVariant.id); 3389 if (productId && variantID) { 3390 isSelected = store.get(key); 3391 } 3392 }); 3393 } 3394 3395 return isSelected; 3396 }, 3397 // get product detail 3398 getProductDetail: function() { 3399 var self = this; 3400 3401 $.ajax({ 3402 url: self.productUrl + '.json', 3403 type: 'GET', 3404 timeout: 30000, 3405 beforeSend: function() { 3406 self.isLoading = true; 3407 }, 3408 error: function(xhr) { 3409 self.closeModal(); 3410 if (xhr.status === 429) { 3411 window.showAddCartRateLimitModal(5); 3412 return; 3413 } 3414 window.msg('網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç', 'error').show(); 3415 } 3416 }).done(function(data) { 3417 if (data.id) { 3418 var productData = [themeHelper.toCamelCase(data)]; 3419 self.product = themeHelper.priceWithDiscount(productData, liquidHelper.hasPriceWithDiscountPlugin)[0]; 3420 self.maxUsableBonus = self.variantsMaxUsableBonus; 3421 if (self.product.variants.length === 1 || liquidHelper.isFirstVariantSelected || self.selectedVariantId) { 3422 self.currentVariant = self.firstValidVariant; 3423 // 妿已ç¶èªé¸ååï¼åååé 䏿»å å ¥è³¼ç©è»é¡¯ç¤ºèªé¸åå 3424 if (self.selectedVariantId) { 3425 self.currentVariant = self.selectedValidVariant; 3426 } 3427 if (self.currentVariant) { 3428 self.setChoose(self.currentVariant); 3429 self.setDefaultOption(); 3430 } 3431 } 3432 if (self.displayProductDiscountsList) { 3433 self.setUpDiscountsTag(data); 3434 } 3435 self.isLoading = false;
3436 if (self.product && self.product.variants) { 3437 self.product.variants.forEach(function(discountedVariant) { 3438 var rawVariant = data.variants.find(function(v) { return v.id === discountedVariant.id; }); 3439 if (rawVariant) { rawVariant.price = discountedVariant.price; } 3440 }); 3441 } 3442 viewItem && viewItem(data, { collectionId: '', collectionName: null, categories: (self.categories && self.categories.length) ? self.categories : (categoryLevels.length ? categoryLevels : (data.id === pageMainProductId ? productCategoryLevels : undefined)) }); 3443 3444 3445 } else { 3446 window.msg('網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç', 'error').show(); 3447 self.closeModal() 3448 } 3449 }) 3450 }, 3451 // product image btn 3452 photoOnChange: function(photoIndex, isVariantReposition) { 3453 var visiblePhotos = (this.currentVariant && this.currentVariant.photos.length) 3454 ? this.currentVariant.photos 3455 : this.product.photos.map(function(p) { return p.photo; }); 3456 var result = themeHelper.buildNavigateItemImagePayload(this._navState, { 3457 product: this.product, 3458 currentVariant: this.currentVariant, 3459 visiblePhotos: visiblePhotos, 3460 slideIndex: photoIndex, 3461 videoOffset: this.firstImageIndex, 3462 }); 3463 this._navState = result.nextState; 3464 if (result.payload && !isVariantReposition) { 3465 window.navigateItemImage(result.payload); 3466 } 3467 this.currentImageIndex = photoIndex; 3468 }, 3469 toggleCurrentOption: function(key, value) { 3470 this.currentOption[key] = 3471 (this.currentOption[key] === value || value === 'null') ? null : value; 3472 var variantIndex = this.getVariantIndex(); 3473 if (variantIndex !== -1) { 3474 this.currentVariant = this.product.variants[variantIndex]; 3475 } else { 3476 this.currentVariant = null; 3477 } 3478 this.setChoose(this.product.variants[variantIndex]); 3479 if (this.currentOption[key] !== null) { 3480 var optionIndex = parseInt(key.replace('option', '')) - 1; 3481 appStoreSelectItemEvent(this.product, this.product.options[optionIndex], this.currentOption[key], this.currentVariant); 3482 } 3483 }, 3484 toggleNotification: function() { 3485 var self = this; 3486 var variantId = this.currentVariant.id; 3487 3488 $.ajax({ 3489 url: '/toggle_pv_notification', 3490 method: 'POST', 3491 dataType: 'json', 3492 data: { 3493 product_variant_id: variantId 3494 }, 3495 success: function(response) { 3496 self.variantNotifications[variantId] = response.notice; 3497 window.msg(response.message, "success").show(); 3498 }, 3499 error: function(xhr) { 3500 var response = xhr.responseJSON; 3501 var msg = response && response.error || "網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç"; 3502 window.msg(msg, "error").show(); 3503 } 3504 }) 3505 }, 3506 getOptionImageIndex: function(index) { 3507 this.currentImageIndex = index; 3508 }, 3509 quantityDecrease: function() { 3510 if (this.cartItem) { 3511 themeHelper.EventBus.$emit('quantityDecrease', this.cartItem, false); 3512 this.quantity = this.cartItem.quantity 3513 } else { 3514 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 3515 } 3516 }, 3517 quantityIncrease: function() { 3518 if (this.cartItem) { 3519 themeHelper.EventBus.$emit('quantityIncrease', this.cartItem, false); 3520 this.quantity = this.cartItem.quantity 3521 } else { 3522 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 3523 } 3524 }, 3525 quantityChange: function(el) { 3526 if (this.cartItem) { 3527 themeHelper.EventBus.$emit('quantityChange', parseInt(el.target.value), this.cartItem, false); 3528 this.quantity = this.cartItem.quantity; 3529 el.target.value = this.cartItem.quantity; 3530 } else { 3531 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 3532 } 3533 }, 3534 addProduct: function() { 3535 if (this.addCartText === 'è¯çµ¡åºå®¶') { 3536 $('#messagebuy-Modal').data('variant', this.currentVariant); 3537 $('#messagebuy-Modal').modal('show'); 3538 $('#messagebuy-Modal').css("background-color", "rgba(0, 0, 0, .6)"); 3539 } else if ( 3540 this.addCartText === 'å·²ç»è¨è£è²¨éç¥' || 3541 this.addCartText === 'å·²å®å®ï¼è²¨å°éç¥æ' 3542 ) { 3543 this.toggleNotification(); 3544 } else { 3545 if (this.cartItem) { 3546 try { 3547 if (this.isChoose) { 3548 themeHelper.EventBus.$emit('updateStore', 'update', this.cartItem, this.callBack) 3549 } else { 3550 themeHelper.EventBus.$emit('updateStore', 'add', this.cartItem, this.callBack) 3551 } 3552 3553 this.adding = true; 3554 this.closeModal(); 3555 } catch (e) { 3556 window.msg("å忬¾å¼ç°å¸¸", 'error').show(); 3557 } 3558 } else { 3559 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 3560 } 3561 } 3562 }, 3563 closeModal: function() { 3564 themeHelper.EventBus.$emit('closeProductModal'); 3565 }, 3566 setDefaultOption: function() { 3567 var self = this; 3568 Object.keys(self.currentOption).map(function(optionKey) { 3569 self.currentOption[optionKey] = self.currentVariant[optionKey]; 3570 }); 3571 }, 3572 getVariantIndex: function() { 3573 var self = this; 3574 return self.product.variants.findIndex(function(variant, index) { 3575 var isVariant = true;
3576 Object.keys(self.currentOption).forEach(function(option) { 3577 if (variant[option] !== self.currentOption[option]) { 3578 isVariant = false; 3579 } 3580 }); 3581 return isVariant; 3582 }); 3583 }, 3584 3585 // 篩é¸éè¤åé 3586 getUniqueVariant: function(variants) { 3587 return variants.filter(function(value, index, self) { 3588 return self.indexOf(value) === index; 3589 }); 3590 }, 3591 groupBy(xs, key) { 3592 return xs.reduce(function(rv, x) { 3593 (rv[x[key]] = rv[x[key]] || []).push(x); 3594 return rv; 3595 }, {}); 3596 }, 3597 setUpDiscountsTag(data) { 3598 var self = this; 3599 var languagePrefix = '/' + ((window.shopScriptHelper && window.shopScriptHelper.i18nLocale) || 'zh-TW'); 3600 $.ajax({ 3601 url: languagePrefix + self.productUrl + '/discounts_list', 3602 method: 'GET', 3603 success: function(result) { 3604 if (result.length > 0) { 3605 var discounts_list = self.groupBy(result, 'campaign_type'); 3606 self.discountsList = discounts_list; 3607 } else { 3608 self.discountsList = null; 3609 } 3610 } 3611 }); 3612 }, 3613 getOptions: function(optionKey, optionTypes) { 3614 var self = this; 3615 return optionTypes.map(function(optionType, index) { 3616 var isValid = true; 3617 3618 // é¸åºå å«ç®åtypeçvariant 3619 var matchVariants = self.product.variants.filter(function(variant) { 3620 return variant[optionKey] === optionType; 3621 }); 3622 3623 // 篩é¸å·²å¾é¸type 3624 Object.keys(self.currentOption).forEach(function(currentOptionKey) { 3625 if (currentOptionKey !== optionKey) { 3626 matchVariants = matchVariants.filter(function(variant) { 3627 if (self.currentOption[currentOptionKey]) { 3628 return variant[currentOptionKey] === self.currentOption[currentOptionKey] 3629 } else { 3630 return true; 3631 } 3632 }); 3633 } 3634 }); 3635 if (matchVariants.length === 0) { 3636 isValid = false; 3637 } 3638 if (! self.isEmptyClickable) { 3639 isValid = false; 3640 matchVariants.find(function(item) { 3641 if (item.inventoryQuantity === null || item.inventoryQuantity > 0 || item.inventoryPolicy === 'continue') { 3642 isValid = true; 3643 } 3644 }); 3645 } 3646 return {name: optionType, isValid: isValid} 3647 }); 3648 } 3649 } 3650 }; 3651 }); 3652</script>
3652 3653 3654<!-- cyb_snippet _product_modal_js end --> 3655 3656<!-- cyb_snippet components/product_modal/product_modal end --> 3657 3658<!-- cyb_snippet messagebuy_modal start --> 3659 3660<div class="modal" id="messagebuy-Modal" tabindex="-1" role="dialog" aria-hidden="true"> 3661 <div class="modal-dialog modal-dialog-centered" role="document"> 3662 <div class="modal-content"> 3663 <div class="modal-header"> 3664 <p class="modal-title qk-fw--500" style="font-size: 1.25rem;">åå庫åä¸è¶³çè¨</p> 3665 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 3666 <span aria-hidden="true">×</span> 3667 </button> 3668 </div> 3669 <div class="modal-body"> 3670 <form class="form-horizontal" id="message-form"> 3671 <input type="hidden" name="authenticity_token" id="authenticity_token" value="68ywoggxRuUWFNlW6TYGh-_Zfw_a4PjtOIjjdfhg0jxRm3nH8gj_02j4YCkwf8pA7yGfA-QtI8wxobIGTmZxgw" autocomplete="off" /> 3672 <div class="product_link img-flex"> 3673 <img src="" alt="product img" class="product_img" width="300" height="300"> 3674 </div> 3675 <p class="product_name qk-fw--500 qk-mg_t--05 qk-mg_b--05" style="font-size: 1.25rem;"></p> 3676 <div class="form-group"> 3677 <input type="email" class="form-control" id="contact_us_email" name="contact[email]" placeholder="Email" data-error="é䏿¯ææçemail" required> 3678 <input type="email" class="form-control" id="repeat-email" name="content[email]" placeholder="Email"> 3679 <div class="help-block with-errors"></div> 3680 </div> 3681 <div class="form-group"> 3682 <textarea type="text" class="form-control" id="message_body" name="contact[body]" placeholder="çè¨çµ¦åºå®¶" data-error="è«ç䏿³å°æå說ç話åï¼" rows="4" required></textarea> 3683 <div class="help-block with-errors"></div> 3684 </div>
vendor: 100 bytes, lines 3684-3687
3684 3685 3686 <script src='https://www.google.com/recaptcha/api.js'></script> 3687
3687<button type="submit" class="qk-btn qk-btn--primary qk-btn--lg qk-w--100 btn-submit-message g-recaptcha" 3688 data-action="submit" 3689 data-sitekey="6LfmL1YtAAAAAH4OK8VkypFlVMtb3_ZLMDolGyzD" 3690 data-callback="callback">éåº</button> 3691
3691<script> 3692 function callback(event) { 3693 return new Promise(function(resolve, reject) { 3694 if (grecaptcha === undefined) { 3695 alert('Recaptcha not define'); 3696 reject(); 3697 } 3698 var response = grecaptcha.getResponse(); 3699 if (!response) { 3700 alert('Coud not get recaptcha response'); 3701 reject(); 3702 } 3703 var form = document.querySelector('#message-form'); 3704 if (form.checkValidity() === false) { 3705 reject(new Error('check fail')); 3706 }else{ 3707 $('.g-recaptcha').prop('disabled',true); 3708 $('.g-recaptcha').data('g-recaptcha-response', response); 3709 form.classList.add('was-validated'); 3710 form.submit(); 3711 resolve(); 3712 } 3713 const submitEvent = new Event('submit'); 3714 form.dispatchEvent(submitEvent); 3715 grecaptcha.reset(); 3716 }).catch(error =>console.log(error)); 3717 }; 3718 </script>
3718 3719 3720 </form> 3721 </div> 3722 </div> 3723 </div> 3724</div> 3725
3726<script> 3727 $(document).ready(function(){ 3728 // setting modal 3729 var product_title, product_img, variant, variant_name, variant_sku, variant_price 3730 3731 $('#repeat-email').hide(); 3732 3733 $('#messagebuy-Modal').on('show.bs.modal', function(){ 3734 var currentVariant = $('#messagebuy-Modal').data('variant'); 3735 3736 if (currentVariant) { 3737 // product modal è¯çµ¡åºå®¶ 3738 $('#messagebuy-Modal').find('.product_name').html(currentVariant.productTitle); 3739 $('#messagebuy-Modal').find('.product_img').attr('src', currentVariant.imgUrl); 3740 product_title = currentVariant.productTitle; 3741 variant_sku = currentVariant.sku; 3742 variant_name = currentVariant.title; 3743 variant_price = parseInt(currentVariant.price); 3744 } else { 3745 product_title = $('#product .product_info .product_title').text() 3746 // æ¯å¦é¡¯ç¤ºè²ç¥¨ 3747 var isDisplayImagesColor = "false"; 3748 if (isDisplayImagesColor === "true") { 3749 product_img = $('#photo_with_images_color').attr('src'); 3750 } else { 3751 product_img = $('#product .product_info .thumb .active img').attr('src') 3752 } 3753 variant = $('#product .product_variant').find(':selected') 3754 variant_name = $(variant).data('name'); 3755 variant_sku = variant.data('sku'); 3756 variant_price = variant.data('price'); 3757 $('#messagebuy-Modal').find('.product_name').text(product_title) 3758 $('#messagebuy-Modal').find('.product_img').attr('src', product_img) 3759 } 3760 }) 3761 3762 $('#message-form').on('submit', function (e) { 3763 e.preventDefault() 3764 3765 var robot_check = $('#repeat-email').val(); 3766 if(robot_check) 3767 return; 3768 3769 var csrf_token = $('meta[name=csrf-token]').attr('content'); 3770 var message_email = $('#message-form input[name="contact[email]"]').val(); 3771 var message_body = $('#message-form textarea[name="contact[body]"]').val(); 3772 var variant_info = "\n (å忍é¡:" + product_title + " ,(ååsku:" + variant_sku + " ,å忍£å¼:" + variant_name + " ,åå广 ¼:" + variant_price + ')'; 3773 if(!variant_sku || !variant_name || !variant_price){ 3774 variant_info = "\n (å忍é¡:" + product_title + ", æªé¸æåå ï¼" 3775 } 3776 message_body += variant_info 3777 3778 var headers = {}; 3779 if (csrf_token && csrf_token !== '') { 3780 headers['X-CSRF-TOKEN'] = csrf_token; 3781 } 3782 3783 $.ajax({ 3784 method: 'POST', 3785 url: '/contact', 3786 headers: headers, 3787 data: { 3788 contact: { email: message_email, body: message_body }, 3789 'g-recaptcha-response': $('.g-recaptcha').data('g-recaptcha-response'), 3790 }, 3791 dataType: 'json' 3792 }).done(function(){ 3793 $('#message-form input[name="contact[email]"]').val(''); 3794 $('#message-form textarea[name="contact[body]"]').val(''); 3795 3796 window.msg("éåºæå", 'success').show() 3797 $('#messagebuy-Modal').modal('hide'); 3798 themeHelper.EventBus.$emit('closeProductModal'); 3799 }).fail(function(){ 3800 window.msg("è«ç¨å¾å試", 'error').show(); 3801 }); 3802 }) 3803 }) 3804</script>
3804 3805 3806 3807<!-- cyb_snippet messagebuy_modal end --> 3808<!-- cyb_snippet components/rate_limit_modal start --> 3809<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/rate_limit_modal-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 3810 3811<div class="modal fade" id="rate-limit-modal" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static" data-keyboard="false"> 3812 <div class="modal-dialog modal-dialog-centered" role="document"> 3813 <div class="modal-content"> 3814 <div class="modal-body"> 3815 <div class="qk-text--default_dark rate-limit-text"> 3816 <p id="rate-limit-title">ç®åæ¶è³¼äººæ½®ç¾å¤ï¼è«èå¿çå</p> 3817 <p class="qk-fs--body qk-fw--500 rate-limit-message"> 3818 <span class="qk-text--error" id="rate-limit-countdown"></span> 3819 <span id="rate-limit-desc"></span> 3820 </p> 3821 <p class="qk-fs--body qk-fw--500 rate-limit-message" id="rate-limit-warn">è¥é¢éæ¤é é¢ï¼å¯è½æå»¶é·çå¾ æéã</p> 3822 </div> 3823 <button id="rate-limit-btn" class="btn qk-btn qk-btn--primary" disabled>éæ°é²å ¥ååé </button> 3824 </div> 3825 </div> 3826 </div> 3827</div> 3828
3829<script> 3830 window.showRateLimitModal = function(countdownSec) { 3831 var countdown = countdownSec || 5; 3832 var $modal = $('#rate-limit-modal'); 3833 var $btn = $modal.find('#rate-limit-btn'); 3834 var $countdownEl = $modal.find('#rate-limit-countdown'); 3835 3836 $btn.show(); 3837 $modal.find('#rate-limit-desc').text(language["product_rate_limit_desc"]); 3838 $countdownEl.text(countdown); 3839 $btn.prop('disabled', true); 3840 $modal.modal('show'); 3841 3842 var timer = setInterval(function() { 3843 countdown--; 3844 $countdownEl.text(countdown); 3845 if (countdown <= 0) { 3846 clearInterval(timer); 3847 $btn.prop('disabled', false); 3848 } 3849 }, 1000); 3850 3851 $btn.off('click').on('click', function() { 3852 location.reload(); 3853 }); 3854 } 3855 3856 window.showAddCartRateLimitModal = function(countdownSec) { 3857 var countdown = countdownSec || 5; 3858 var $modal = $('#rate-limit-modal'); 3859 var $countdownEl = $modal.find('#rate-limit-countdown'); 3860 3861 $modal.find('#rate-limit-btn').hide(); 3862 $modal.find('#rate-limit-desc').text(language["addcart_rate_limit_desc"]); 3863 $countdownEl.text(countdown); 3864 $modal.modal('show'); 3865 3866 var timer = setInterval(function() { 3867 countdown--; 3868 $countdownEl.text(countdown); 3869 if (countdown <= 0) { 3870 clearInterval(timer); 3871 $modal.modal('hide'); 3872 } 3873 }, 1000); 3874 } 3875</script>
3875 3876 3877<!-- cyb_snippet components/rate_limit_modal end --> 3878
3879<script> 3880 $(document).ready(function() { 3881 const shouldSkipQuantityCheck = false; 3882 const newAddCartModalApp = new window.themeHelper.LiquidVueHandler({ 3883 componentNames: Object.keys(window.themeHelper.productModalComponents), 3884 mountSelector: '#new-addcart-modal', 3885 autoMount: false, 3886 }); 3887 3888 newAddCartModalApp.createApp({ 3889 el: '#new-addcart-modal', 3890 delimiters: ['${', '}'], 3891 data() { 3892 return { 3893 collectionId: 0, 3894 categories: [], 3895 color: '', // unused 3896 isCollection: true, 3897 productQuantity: 0, 3898 onlyDescription: false, 3899 showProductModal: false, 3900 popProductUrl: '', 3901 loading: false, 3902 }; 3903 }, 3904 mounted: function() { 3905 themeHelper.EventBus.$on('closeProductModal',this.closeProductModal); 3906 themeHelper.EventBus.$on('updateStore', this.addProduct); 3907 themeHelper.EventBus.$on('quantityDecrease', this.quantityDecrease); 3908 themeHelper.EventBus.$on('quantityIncrease', this.quantityIncrease); 3909 themeHelper.EventBus.$on('quantityChange', this.quantityChange); 3910 }, 3911 methods: { 3912 addProduct: function(actionType, productData, checkoutAddToCartCallback){ 3913 var self = this; 3914 var pageViewId = window.CYBERBIZ && window.CYBERBIZ.dis && window.CYBERBIZ.dis.pageViewId; 3915 $.ajax({ 3916 method: 'POST', 3917 url: '/cart/add', 3918 headers: pageViewId ? { 'X-Cyb-Page-View-Id': pageViewId } : {}, 3919 data: { 3920 id: productData.id, 3921 quantity: productData.quantity, 3922 }, 3923 dataType: 'json', 3924 beforeSend: function() { 3925 self.loading = true; 3926 themeHelper.ajaxLoadingMsg('loading'); 3927 $('.shopcart').dropdown('hide') 3928 $('.global-cart-count').hide(); 3929 $('.global-cart-loading').show(); 3930 $('.global-cart-loading').html('<i class="fa fa-spinner fa-pulse" style="vertical-align: middle;"></i>'); 3931 }, 3932 error: function(xhr) { 3933 $('.global-cart-loading').hide(); 3934 $('.global-cart-count').show(); 3935 self.loading = false; 3936 if (xhr.status === 429) { 3937 themeHelper.ajaxLoadingMsg('hide', 0); 3938 self.closeProductModal(); 3939 window.showAddCartRateLimitModal(5); 3940 return; 3941 } 3942 themeHelper.ajaxLoadingMsg('fail', 2000); 3943 } 3944 }).done(function(data, status, request){ 3945 // product modal ç«å³è³¼è²·æé 3946 window.sendAddToCartEvent && sendAddToCartEvent({ 3947 price: productData.price, 3948 quantity: productData.quantity, 3949 id: productData.product.id, 3950 name: productData.product.title, 3951 category: productData.product.productType, 3952 brand: productData.product.vendor, 3953 qc: productData.variant.qc, 3954 variant: { 3955 id: productData.variant.id, 3956 title: productData.variant.title, 3957 sku: productData.variant.sku, 3958 price: productData.variant.price, 3959 qc: productData.variant.qc, 3960 }, 3961 position: "ååå½åºè¦çª", 3962 request, 3963 }) 3964 if (self.isQuickBuy) { 3965 if (window.liquidHelper && window.liquidHelper.language && window.liquidHelper.language.handle) { 3966 window.location = "/" + window.liquidHelper.language.handle + "/cart"; 3967 } else { 3968 window.location = "/cart"; 3969 } 3970 } else { 3971 themeHelper.ajaxLoadingMsg('success'); 3972 pullNavCart(); 3973 $('.shopcart').dropdown('show') 3974 $('.global-cart-loading').hide(); 3975 self.loading = false; 3976 } 3977 if(typeof checkoutAddToCartCallback === 'function'){ 3978 var callbackData = { 3979 id: productData.id, 3980 quantity: productData.quantity, 3981 title: productData.product ? productData.product.title : productData.title || '' 3982 }; 3983 checkoutAddToCartCallback(callbackData) 3984 } 3985 peh.emit('product:add_to_cart', [{ 3986 variantId: productData.id, 3987 quantity: productData.quantity 3988 }], self.collectionId); 3989 }).fail(function(e){ 3990 if (e.status === 429) { 3991 return; 3992 } 3993 let err_msg = e.responseJSON.err_msg; 3994 err_msg && err_msg.length > 0 ? 3995 window.msg(e.responseJSON.err_msg, 'warning').show(): 3996 window.msg("å å ¥è³¼ç©è»æèª¤ï¼è«éæ°å試", 'warning').show(); 3997 }) 3998 }, 3999 quantityDecrease: function(cartItem, isAdded){ 4000 if (cartItem.quantity > 1) { 4001 cartItem.quantity -= 1; 4002 } else { 4003 window.msg("æ¸éä¸å¾çºä½æ¼ 1", 'warning').show(); 4004 } 4005 }, 4006 quantityIncrease: function(cartItem, isAdded){ 4007 const limitQuantity = cartItem.variant.inventoryQuantity; 4008 const limitBuy = cartItem.product.limitBuy 4009 if (limitBuy && cartItem.quantity >= limitBuy) { 4010 product_limit_buy = "æ¤ååéè³¼ limitBuy ä»¶".replace('limitBuy', limitBuy) 4011 window.msg(product_limit_buy, 'warning').show(); 4012 return; 4013 } else if (cartItem.quantity >= liquidHelper.cartQuantityLimit) { 4014 window.msg("æ¸éè¶ é購買ä¸é", 'warning').show(); 4015 } else if ( cartItem.quantity < limitQuantity || limitQuantity === null || 4016 cartItem.variant.inventoryPolicy == "continue" || shouldSkipQuantityCheck) { 4017 cartItem.quantity += 1; 4018 } else { 4019 this.showInventoryMessage(limitQuantity); 4020 } 4021 },
4022 quantityChange: function(quantity, cartItem, isAdded){ 4023 const limitBuy = cartItem.product.limitBuy 4024 var limitQuantity = cartItem.variant.inventoryQuantity; 4025 var inventoryPolicy = cartItem.variant.inventoryPolicy; 4026 if (Number.isInteger(quantity)) { 4027 if (quantity >= 1) { 4028 if (limitBuy && quantity >= limitBuy) { 4029 product_limit_buy = "æ¤ååéè³¼ limitBuy ä»¶".replace('limitBuy', limitBuy) 4030 window.msg(product_limit_buy, 'warning').show(); 4031 } else if (quantity > liquidHelper.cartQuantityLimit) { 4032 window.msg("æ¸éè¶ é購買ä¸é", 'warning').show(); 4033 } else if (quantity <= limitQuantity || limitQuantity === null || inventoryPolicy == "continue" || shouldSkipQuantityCheck) { 4034 cartItem.quantity = quantity; 4035 } else { 4036 cartItem.quantity = limitQuantity; 4037 this.showInventoryMessage(limitQuantity); 4038 } 4039 } else { 4040 window.msg("æ¸éä¸å¾çºä½æ¼ 1", 'warning').show(); 4041 } 4042 } else { 4043 window.msg("æ¸éè¼¸å ¥é¯èª¤", 'warning').show(); 4044 } 4045 }, 4046 popModal: function(productUrl, collectionId, color, isCollection, isShowDescription, isQuickBuy, variantId, checkoutAddToCartCallback, categories){ 4047 this.showProductModal = true; 4048 this.collectionId = collectionId; 4049 this.categories = categories || []; 4050 this.popProductUrl = productUrl; 4051 this.color = color || ''; // unused 4052 this.isCollection = isCollection || false; 4053 this.isShowDescription = isShowDescription != false; 4054 this.isQuickBuy = isQuickBuy || false; 4055 this.selectedVariantId = parseInt(variantId) || undefined; 4056 this.checkoutAddToCartCallback = checkoutAddToCartCallback; 4057 document.body.style.overflow = "hidden"; 4058 }, 4059 closeProductModal: function() { 4060 this.showProductModal = false; 4061 document.body.style.overflow = ""; 4062 }, 4063 showInventoryMessage: function(inventoryQuantity) { 4064 const stockMessage = "åå庫åå©é¤ count ä»¶".replace('count', inventoryQuantity || 0); 4065 window.msg(stockMessage, 'warning').show(); 4066 }, 4067 } 4068 }); 4069 4070 for (const componentName in window.themeHelper.productModalComponents) { 4071 newAddCartModalApp.component( 4072 componentName, 4073 window.themeHelper.productModalComponents[componentName], 4074 ); 4075 } 4076 4077 window.new_addcart_modal = newAddCartModalApp.mount(); 4078 }); 4079</script>
4079 4080 4081<!-- cyb_snippet new_addcart_modal end --> 4082
4082<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/new_cart-3a2e378145f8a165.js' type='text/javascript'></script>
4082 4083 4084</div> 4085 4086 </div> 4087 4088 <!-- Footer --> 4089 4090 4091 4092 4093 4094 4095 4096<style> 4097 4098 4099 @media(min-width: 991px) { 4100 .display_x .left-content > div { 4101 max-width: calc(100% / 3); 4102 } 4103 } 4104</style> 4105 4106<div id="index-recommendation"></div> 4107 4108<footer id="footer" class="qk-fs--body qk-bg--footer_bg"> 4109 4110 4111 <div class="qk-container display_x"> 4112 <div class="footer_content qk-mg--0 qk-display--flex qk-justify--between"> 4113 <div class="left-content qk-flex--1"> 4114 4115 4116 <div class="item contact qk-text--left"> 4117 4118 <p class="footer_title qk-fs--title qk-text--footer_text">è¯çµ¡æå</p> 4119 4120 <ul> 4121 4122 <li class="phone qk-bd_r--default qk-bd--footer_text qk-display--il_bk"> 4123 <span class="qk-text--footer_text">客æå°ç·ï¼0930-691331</span> 4124 </li> 4125 4126 4127 4128 <li class="time qk-bd_r--default qk-bd--footer_text qk-display--il_bk"> 4129 <span class="qk-text--footer_text">客ææéï¼10:30am - 4:00pm</span> 4130 </li> 4131 4132 4133 <br> 4134 <li class="mail qk-bd_r--default qk-bd--footer_text qk-cursor--pointer qk-display--il_bk"> 4135 <a class="qk-text--footer_text" href="mailto:[email protected]">ä¿¡ç®±ï¼[email protected]</a> 4136 </li> 4137 4138 4139 <li class="address qk-bd_r--default qk-bd--footer_text qk-display--il_bk"> 4140 <span class="qk-text--footer_text">å°åï¼å°åå¸ä¸è¥¿åæ°çè·¯ä¸æ®µ100è(å çºè¯çµ¡å°åï¼ä¸å°å¤éæ¾)</span> 4141 </li> 4142 4143 4144 <li class="tax_id qk-bd_r--default qk-bd--footer_text qk-display--il_bk"> 4145 <span class="qk-text--footer_text">çµ±ä¸ç·¨èï¼0018850</span> 4146 </li> 4147 4148 </ul> 4149 </div> 4150 4151 4152 4153 <div class="link-list-container"> 4154 4155 <p class="footer_title qk-fs--title qk-text--footer_text">éæ¼æå</p> 4156 4157 <div class="item horizontal qk-text--left"> 4158 <ul class="qk-display--flex qk-flex--wrap"> 4159 4160 4161 <li class="qk-display--il_bk"> 4162 4163 <a 4164 class="qk-text--footer_text" 4165 href="/search" 4166 rel="noopener noreferrer" 4167 target="_blank">æ¥è©¢</a> 4168 4169 </li> 4170 4171 <li class="qk-display--il_bk"> 4172 4173 <a 4174 class="qk-text--footer_text" 4175 href="/pages/about-us" 4176 rel="noopener noreferrer" 4177 target="_blank">éæ¼æå</a> 4178 4179 </li> 4180 4181 <li class="qk-display--il_bk"> 4182 4183 <a 4184 class="qk-text--footer_text" 4185 href="/account/index" 4186 rel="noopener noreferrer" 4187 target="_blank">æç帳æ¶</a> 4188 4189 </li> 4190 4191 <li class="qk-display--il_bk"> 4192 4193 <a 4194 class="qk-text--footer_text" 4195 href="/pages/refund" 4196 rel="noopener noreferrer" 4197 target="_blank">鿬¾æ¿ç</a> 4198 4199 </li> 4200 4201 <li class="qk-display--il_bk"> 4202 4203 <a 4204 class="qk-text--footer_text" 4205 href="/pages/privacy" 4206 rel="noopener noreferrer" 4207 target="_blank">é±ç§æ¿ç</a> 4208 4209 </li> 4210 4211 <li class="qk-display--il_bk"> 4212 4213 <a 4214 class="qk-text--footer_text" 4215 href="/pages/terms" 4216 rel="noopener noreferrer" 4217 target="_blank">æåæ¢æ¬¾</a> 4218 4219 </li> 4220 4221 4222 </ul> 4223 </div> 4224 </div> 4225 4226 4227 4228 <div class="link-list-container"> 4229 4230 <p class="footer_title qk-fs--title qk-text--footer_text">Menu</p> 4231 4232 <div class="item horizontal qk-text--left"> 4233 <ul class="qk-display--flex qk-flex--wrap"> 4234 4235 4236 <li class="qk-display--il_bk"> 4237 4238 <a 4239 class="qk-text--footer_text" 4240 href="/" 4241 rel="noopener noreferrer" 4242 target="_blank">é¦é </a> 4243 4244 </li> 4245 4246 <li class="qk-display--il_bk"> 4247 4248 <a 4249 class="qk-text--footer_text" 4250 href="/collections/all" 4251 rel="noopener noreferrer" 4252 target="_blank">ååå表</a> 4253 4254 </li> 4255 4256 <li class="qk-display--il_bk"> 4257 4258 <a 4259 class="qk-text--footer_text" 4260 href="/blogs/news" 4261 rel="noopener noreferrer" 4262 target="_blank">ææ°åæ </a> 4263 4264 </li> 4265 4266 <li class="qk-display--il_bk"> 4267 4268 <a 4269 class="qk-text--footer_text" 4270 href="/pages/about-us" 4271 rel="noopener noreferrer" 4272 target="_blank">éæ¼æå</a> 4273 4274 </li> 4275 4276 <li class="qk-display--il_bk"> 4277 4278 <a 4279 class="qk-text--footer_text" 4280 href="/pages/常è¦qa" 4281 rel="noopener noreferrer" 4282 target="_blank">常è¦Q&A</a> 4283 4284 </li> 4285 4286 <li class="qk-display--il_bk"> 4287 4288 <a 4289 class="qk-text--footer_text" 4290 href="/blogs" 4291 rel="noopener noreferrer" 4292 target="_blank">é¨è½æ ¼ç¸½è¦½</a> 4293 4294 </li> 4295 4296 4297 </ul> 4298 </div> 4299 </div> 4300 4301 4302 </div> 4303 <div class="right-content qk-display--flex qk-flex--column"> 4304 4305 <div class="fb_fanpage qk-hidden--mobile"> 4306 <div class="fb_fans_page_area"> 4307 <div 4308 class="fb-page" 4309 data-href="https://www.facebook.com/100271131672176" 4310 data-width="500" 4311 data-adapt-container-width="true" 4312 data-hide-cover="false" 4313 data-show-facepile="true"> 4314 <blockquote cite="https://www.facebook.com/100271131672176" class="fb-xfbml-parse-ignore"> 4315 <a target="_blank" rel="noopener noreferrer" href="https://www.facebook.com/100271131672176"></a> 4316 </blockquote> 4317 </div> 4318 </div> 4319 </div> 4320 4321 <div class="media qk-display--il"> 4322 <div class="item social_media qk-h--auto qk-float--l"> 4323 <ul> 4324 4325 <li class="qk-display--il_bk"> 4326 <a target="_blank" rel="noopener noreferrer" href="https://www.facebook.com/"> 4327 <svg 4328 class="facebook-svg" 4329 xmlns="http://www.w3.org/2000/svg" 4330 width="40" 4331 height="40"
4332 viewBox="0 0 40 40"> 4333 <path class="qk-svg--footer_text" d="M40 20.1208C40 30.1027 32.6767 38.3778 23.1167 39.8795V25.9409H27.765L28.65 20.1742H23.1167V16.4324C23.1167 14.8541 23.89 13.3174 26.3667 13.3174H28.8817V8.4073C28.8817 8.4073 26.5983 8.01729 24.4167 8.01729C19.86 8.01729 16.8833 10.779 16.8833 15.7774V20.1725H11.8183V25.9393H16.8833V39.8779C7.325 38.3745 0 30.101 0 20.1208C0 9.07564 8.955 0.120483 20 0.120483C31.045 0.120483 40 9.07398 40 20.1208Z" /> 4334 </svg> 4335 </a> 4336 </li> 4337 4338 4339 <li class="qk-display--il_bk"> 4340 <a target="_blank" rel="noopener noreferrer" href="https://www.instagram.com/?hl=zh-tw"> 4341 <svg 4342 class="instagram-svg" 4343 xmlns="http://www.w3.org/2000/svg" 4344 width="40" 4345 height="40" 4346 viewBox="0 0 40 40"> 4347 <rect class="qk-svg--footer_text" width="40" height="40" rx="20" /> 4348 <path class="qk-svg--footer_bg" d="M15.0302 8.08393C13.7534 8.14417 12.8814 8.34793 12.1192 8.64745C11.3303 8.95489 10.6616 9.36745 9.99636 10.0351C9.33107 10.7028 8.92139 11.3719 8.61611 12.162C8.32066 12.9259 8.1205 13.7986 8.0641 15.0761C8.0077 16.3536 7.99522 16.7643 8.00146 20.023C8.0077 23.2817 8.0221 23.6902 8.08402 24.9704C8.14498 26.2469 8.34802 27.1186 8.64755 27.8811C8.95547 28.67 9.36755 29.3384 10.0355 30.0039C10.7034 30.6694
434811.3721 31.0782 12.1641 31.3839C12.9273 31.6789 13.8002 31.88 15.0775 31.9359C16.3547 31.9918 16.7659 32.0048 20.0237 31.9986C23.2815 31.9923 23.6916 31.9779 24.9716 31.9172C26.2515 31.8565 27.1186 31.652 27.8813 31.3539C28.6702 31.0453 29.3391 30.6339 30.0042 29.9658C30.6692 29.2976 31.0787 28.628 31.3837 27.8374C31.6794 27.0742 31.8803 26.2013 31.9357 24.925C31.9916 23.6441 32.0048 23.2352 31.9986 19.9769C31.9923 16.7187 31.9777 16.3102 31.917 15.0305C31.8563 13.7508 31.653 12.8818 31.3537 12.1188C31.0453 11.3299 30.6337 10.662 29.966 9.99601C29.2983 9.33001 28.6282 8.92081 27.8379 8.61649C27.0742 8.32105 26.2018 8.11969 24.9245 8.06449C23.6472 8.00929 23.2361 7.99513 19.9771 8.00137C16.7181 8.00761 16.3101 8.02153 15.0302 8.08393ZM15.1703 29.7771C14.0003 29.7262 13.365 29.5318 12.9417 29.3691C12.381 29.1531 11.9817 28.892 11.5597 28.4742C11.1378 28.0563 10.8786 27.6555 10.6597 27.0961C10.4953 26.6727 10.2973 26.0381 10.2426 24.8681C10.1831 23.6036 10.1706 23.2239 10.1636 20.0201C10.1567 16.8164 10.1689 16.4372 10.2244 15.1721C10.2743 14.0031 10.4699 13.3671 10.6324 12.9439C10.8484 12.3826 11.1085 11.9839 11.5273 11.5623C11.9461 11.1406 12.3457 10.8809 12.9057 10.662C13.3286 10.4969 13.9631 10.3006 15.1327 10.2449C16.3982 10.1849 16.7774 10.1729 19.9807 10.1659C23.184 10.159 23.5642 10.171 24.8302 10.2267C25.9992 10.2775 26.6355 10.4712 27.0581 10.6347C27.619 10.8507 28.0181 11.1101 28.4398 11.5296C28.8615 11.9491 29.1214 12.3473 29.3403 12.9084C29.5057 13.3301 29.702 13.9644 29.7572 15.1347C29.8174 16.4002 29.8311 16.7796 29.8369 19.9827C29.8426 23.1857 29.8314 23.5661 29.7759 24.8307C29.7248 26.0007 29.5309 26.6362 29.3679 27.0601C29.1519 27.6205 28.8915 28.0201 28.4725 28.4415C28.0534 28.863 27.6543 29.1226 27.0941 29.3415C26.6717 29.5064 26.0364 29.7032 24.8679 29.7589C23.6023 29.8184 23.2231 29.8309 20.0186 29.8378C16.8141 29.8448 16.4361 29.8318 15.1706 29.7771M24.9531 13.5864C24.9535 13.8713 25.0385 14.1495 25.1971 14.3861C25.3558 14.6226 25.581 14.8068 25.8443 14.9154C26.1077 15.0239 26.3973 15.0519 26.6765 14.9959C26.9558 14.9398 27.2122 14.8022 27.4132 14.6004C27.6142 14.3986 27.7509 14.1418 27.806 13.8623C27.861 13.5828 27.8319 13.2933 27.7224 13.0304C27.6129 12.7675 27.4279 12.5429 27.1908 12.3851C26.9536 12.2274 26.675 12.1435 26.3902 12.144C26.0084 12.1448 25.6425 12.2972 25.373 12.5677C25.1035 12.8381 24.9524 13.2046 24.9531 13.5864ZM13.8386 20.012C13.8453 23.4152 16.6091 26.1677 20.0117 26.1613C23.4142 26.1548 26.1687 23.3912 26.1622 19.988C26.1557 16.5848 23.3911 13.8315 19.9881 13.8382C16.5851 13.8449 13.8321 16.6092 13.8386 20.012ZM16 20.0076C15.9985 19.2165 16.2315 18.4427 16.6698 17.784C17.108 17.1253 17.7317 16.6114 18.462 16.3072C19.1924 16.003 19.9965 15.9222 20.7727 16.075C21.549 16.2278 22.2625 16.6073 22.823 17.1656C23.3836 17.724 23.766 18.436 23.9218 19.2116C24.0777 19.9872 24.0001 20.7917 23.6988 21.5232C23.3975 22.2547 22.886 22.8804 22.2291 23.3213C21.5721 23.7621 20.7992 23.9983 20.0081 23.9998C19.4827 24.0009 18.9623 23.8985 18.4766 23.6985C17.9909 23.4985 17.5493 23.2047 17.1771 22.834C16.8049 22.4632 16.5094 22.0228 16.3074 21.5379C16.1054 21.0529 16.001 20.533 16 20.0076Z" /> 4349 </svg> 4350 </a> 4351 </li> 4352 4353 4354 <li class="qk-display--il_bk"> 4355 <a target="_blank" rel="noopener noreferrer" href="https://line.me/zh-hant/"> 4356 <svg 4357 class="line-svg" 4358 xmlns="http://www.w3.org/2000/svg" 4359 width="40" 4360 height="40"
4361 viewBox="0 0 40 40"> 4362 <rect class="qk-svg--footer_text" width="40" height="40" rx="20" /> 4363 <path class="qk-svg--footer_bg" d="M32.5946 18.2214C32.5946 12.5857 26.9449 8 20.0002 8C13.0555 8 7.40576 12.5857 7.40576 18.2214C7.40576 23.2743 11.8873 27.5053 17.9396 28.3048C18.3506 28.392 18.908 28.575 19.0487 28.9269C19.1754 29.245 19.1303 29.7433 19.0881 30.0642C19.0881 30.0642 18.9417 30.9537 18.908 31.1423C18.8517 31.4604 18.6546 32.3866 20.0002 31.8207C21.343 31.2549 27.2545 27.5503 29.895 24.5101C31.7191 22.5058 32.5946 20.4762 32.5946 18.2214Z" /> 4364 <path class="qk-svg--footer_text" d="M17.4413 15.4965H16.5574C16.4223 15.4965 16.3125 15.6062 16.3125 15.7414V21.2279C16.3125 21.363 16.4223 21.4728 16.5574 21.4728H17.4413C17.5764 21.4728 17.6862 21.363 17.6862 21.2279V15.7414C17.6862 15.6062 17.5764 15.4965 17.4413 15.4965Z" /> 4365 <path class="qk-svg--footer_text" d="M23.5219 15.4965H22.638C22.5028 15.4965 22.3931 15.6063 22.3931 15.7414V19.0012L19.8792 15.6063C19.8736 15.5978 19.868 15.5894 19.8595 15.5809C19.8595 15.5809 19.8595 15.5809 19.8595 15.5781C19.8539 15.5725 19.8483 15.5668 19.8455 15.564C19.8426 15.564 19.8426 15.5612 19.8398 15.5584C19.8342 15.5556 19.8314 15.55 19.8258 15.5471C19.8229 15.5443 19.8229 15.5443 19.8201 15.5415C19.8173 15.5387 19.8117 15.5359 19.8089 15.5331C19.8061 15.5303 19.8032 15.5303 19.8004 15.5274C19.7948 15.5246 19.792 15.5218 19.7863 15.519C19.7835 15.519 19.7807 15.5162 19.7779 15.5162C19.7723 15.5134 19.7695 15.5105 19.7638 15.5105C19.761 15.5105 19.7582 15.5077 19.7554 15.5077C19.7498 15.5049 19.7469 15.5049 19.7413 15.5021C19.7385 15.5021 19.7357 15.5021 19.7329 15.4993C19.7272 15.4993 19.7244 15.4965 19.7188 15.4965C19.716 15.4965 19.7132 15.4965 19.7075 15.4937C19.7019 15.4937 19.6991 15.4937 19.6935 15.4908C19.6878 15.4908 19.685 15.4908 19.6822 15.4908C19.6794 15.4908 19.6766 15.4908 19.6737 15.4908H18.7898C18.6547 15.4908 18.5449 15.6006 18.5449 15.7358V21.2222C18.5449 21.3574 18.6547 21.4671 18.7898 21.4671H19.6737C19.8089 21.4671 19.9187 21.3574 19.9187 21.2222V17.9709L22.4353 21.3714C22.4522 21.3968 22.4747 21.4165 22.4972 21.4305C22.4972 21.4305 22.5 21.4305 22.5 21.4334C22.5057 21.4362 22.5113 21.439 22.5141 21.4418C22.5169 21.4418 22.5197 21.4446 22.5226 21.4446C22.5254 21.4474 22.531 21.4474 22.5338 21.4503C22.5366 21.4531 22.5423 21.4531 22.5451 21.4559C22.5479 21.4559 22.5507 21.4587 22.5535 21.4587C22.5591 21.4615 22.5648 21.4615 22.5704 21.4643H22.5732C22.5929 21.47 22.6154 21.4728 22.6352 21.4728H23.5191C23.6542 21.4728 23.764 21.363 23.764 21.2279V15.7414C23.7668 15.6063 23.657 15.4965 23.5219 15.4965Z" /> 4366 <path class="qk-svg--footer_text" d="M15.313 20.099H12.9118V15.7414C12.9118 15.6062 12.802 15.4965 12.6669 15.4965H11.783C11.6479 15.4965 11.5381 15.6062 11.5381 15.7414V21.2279C11.5381 21.2926 11.5634 21.3545 11.6056 21.3968L11.6085 21.3996L11.6113 21.4024C11.6563 21.4446 11.7154 21.4699 11.7802 21.4699H15.3102C15.4453 21.4699 15.5551 21.3602 15.5551 21.225V20.3411C15.5579 20.2116 15.4482 20.099 15.313 20.099Z" /> 4367 <path class="qk-svg--footer_text" d="M28.4001 16.8702C28.5352 16.8702 28.645 16.7604 28.645 16.6253V15.7414C28.645 15.6062 28.5352 15.4965 28.4001 15.4965H24.87C24.8053 15.4965 24.7433 15.5218 24.7011 15.5668L24.6983 15.5697C24.6983 15.5725 24.6955 15.5725 24.6955 15.5753C24.6533 15.6203 24.6279 15.6794 24.6279 15.7442V21.2307C24.6279 21.2954 24.6533 21.3573 24.6955 21.3996L24.6983 21.4024L24.7011 21.4052C24.7462 21.4474 24.8053 21.4756 24.87 21.4756H28.4001C28.5352 21.4756 28.645 21.3658 28.645 21.2307V20.3467C28.645 20.2116 28.5352 20.1018 28.4001 20.1018H25.9988V19.1757H28.4001C28.5352 19.1757 28.645 19.0659 28.645 18.9308V18.0469C28.645 17.9118 28.5352 17.802 28.4001 17.802H25.9988V16.8758H28.4001V16.8702Z" /> 4368 </svg> 4369 </a> 4370 </li> 4371 4372 4373 <li class="qk-display--il_bk"> 4374 <a target="_blank" rel="noopener noreferrer" href="https://www.youtube.com/"> 4375 <svg 4376 class="youtube-svg" 4377 xmlns="http://www.w3.org/2000/svg" 4378 width="40" 4379 height="40"
4380 viewBox="0 0 40 40"> 4381 <rect class="qk-svg--footer_text" width="40" height="40" rx="20" /> 4382 <path class="qk-svg--footer_bg" d="M27.3078 11H12.6922C9.82462 11 7.5 13.3653 7.5 16.283V23.717C7.5 26.6347 9.82462 29 12.6922 29H27.3078C30.1754 29 32.5 26.6347 32.5 23.717V16.283C32.5 13.3653 30.1754 11 27.3078 11ZM23.7964 20.3617L16.9602 23.6792C16.778 23.7676 16.5676 23.6324 16.5676 23.4271V16.5848C16.5676 16.3766 16.7835 16.2416 16.9661 16.3357L23.8023 19.8606C24.0055 19.9653 24.002 20.2619 23.7964 20.3617Z" /> 4383 </svg> 4384 </a> 4385 </li> 4386 4387 </ul> 4388 </div> 4389 </div> 4390 </div> 4391 </div> 4392 </div> 4393 4394 <div class="copyright qk-text--footer_text qk-bd--footer_text qk-text--left qk-bd_t--default"> 4395 <div class="qk-container container qk-fw--500"> 4396 <span>Copyright ©</span> 4397 <a class="qk-text--link" href="/"> 4398 <span>carryongarden</span> 4399 </a> 4400 <span>All Rights Reserved.</span> 4401 <span>Designed by 4402 </span> 4403 <a 4404 class="qk-text--link" 4405 href="https://www.cyberbiz.io?utm_source=poweredbycyberbiz" 4406 target="_blank" 4407 rel="noopener noreferrer" 4408 title="Designed by CYBERBIZ">CYBERBIZ</a>. 4409 </div> 4410 </div> 4411 4412</footer>
4413<script> 4414 $(document).ready(function() { 4415 let isDynamicLoading = false; 4416 4417 let menusData = { 4418 4419 4420 4421 4422 "footer": { 4423 4424 "type": "items", 4425 "data": [ 4426 4427 4428 4429 { 4430 "title": "æ¥è©¢", 4431 "url": "/search", 4432 "item_type": "search" 4433 }, 4434 4435 { 4436 "title": "éæ¼æå", 4437 "url": "/pages/about-us", 4438 "item_type": "page" 4439 }, 4440 4441 { 4442 "title": "æç帳æ¶", 4443 "url": "/account/index", 4444 "item_type": "http" 4445 }, 4446 4447 { 4448 "title": "鿬¾æ¿ç", 4449 "url": "/pages/refund", 4450 "item_type": "refund" 4451 }, 4452 4453 { 4454 "title": "é±ç§æ¿ç", 4455 "url": "/pages/privacy", 4456 "item_type": "privacy" 4457 }, 4458 4459 { 4460 "title": "æåæ¢æ¬¾", 4461 "url": "/pages/terms", 4462 "item_type": "terms" 4463 } 4464 4465 4466 ] 4467 4468 }, 4469 4470 4471 4472 "main-menu": { 4473 4474 "type": "items", 4475 "data": [ 4476 4477 4478 4479 { 4480 "title": "é¦é ", 4481 "url": "/", 4482 "item_type": "frontpage" 4483 }, 4484 4485 { 4486 "title": "ååå表", 4487 "url": "/collections/all", 4488 "item_type": "collections_all" 4489 }, 4490 4491 { 4492 "title": "ææ°åæ ", 4493 "url": "/blogs/news", 4494 "item_type": "http" 4495 }, 4496 4497 { 4498 "title": "éæ¼æå", 4499 "url": "/pages/about-us", 4500 "item_type": "page" 4501 }, 4502 4503 { 4504 "title": "常è¦Q\u0026A", 4505 "url": "/pages/常è¦qa", 4506 "item_type": "page" 4507 }, 4508 4509 { 4510 "title": "é¨è½æ ¼ç¸½è¦½", 4511 "url": "/blogs", 4512 "item_type": "http" 4513 } 4514 4515 4516 ] 4517 4518 } 4519 4520 4521 }; 4522 4523 if (isDynamicLoading) { 4524 window.DynamicLoading.setupComponent({ 4525 sectionId: '#footer', 4526 callbackData:{ 4527 section: {"type":"footer","visible":true,"settings":{"footer_link":"footer","display_facebook":true,"shop_facebook":"https://www.facebook.com/","display_instagram":true,"shop_instagram":"https://www.instagram.com/?hl=zh-tw","display_line":true,"shop_line":"https://line.me/zh-hant/","display_youtube":true,"shop_youtube":"https://www.youtube.com/","footer_link_arrangement":"display_x","display_facebook_fan_block":true},"block_order":["default_contact_info","default_link_list","default_link_list_2"],"blocks":{"default_link_list":{"type":"link_list_setting","thumbnail":"list","draggable":true,"visible":true,"settings":{"dict_link_list_block_title":"éæ¼æå","footer_link":"footer"},"custom_name":"é¸å®"},"default_contact_info":{"type":"contact_info_setting","thumbnail":"contactInfo","draggable":true,"visible":true,"settings":{"dict_contact_info_block_title":"è¯çµ¡æå","display_phone":"true","dict_phone_number":"0930-691331","display_fax_number":false,"dict_shop_fax_number":"02-22345678","display_shop_email":"true","dict_shop_email":"[email protected]","display_shop_address":"true","dict_shop_address":"å°åå¸ä¸è¥¿åæ°çè·¯ä¸æ®µ100è(å çºè¯çµ¡å°åï¼ä¸å°å¤éæ¾)","display_office_time":"true","dict_shop_office_time":"10:30am - 4:00pm","display_tax_id":true,"dict_tax_id":"0018850"},"custom_name":"è¯çµ¡è³è¨"},"default_link_list_2":{"type":"link_list_setting","visible":true,"settings":{"dict_link_list_block_title":"Menu","footer_link":"main-menu"},"custom_name":"é¸å®"}},"custom_name":"é è ³"}, 4528 shop: { 4529 name: 'carryongarden', 4530 cyberbiz_link: 'https://www.cyberbiz.io?utm_source=poweredbycyberbiz', 4531 facebook_fan_page: 'https://www.facebook.com/100271131672176', 4532 }, 4533 menus: menusData, 4534 is_display_facebook_fan_block: true 4535 }, 4536 entryName:'renderFooterSection', 4537 source:'//cdn-general.cybassets.com/frontend/shop/footerSection-3a2e378145f8a165.js', 4538 }); 4539 } 4540 }); 4541</script>
4541 4542 4543<!-- cyb_snippet _tracking_code start --> 4544
4544<script> 4545 window.fbAsyncInit = function() { 4546 FB.init({ 4547 appId : '', 4548 xfbml : true, 4549 version : 'v24.0', 4550 }); 4551 }; 4552 (function(d, s, id){ 4553 var js, fjs = d.getElementsByTagName(s)[0]; 4554 if (d.getElementById(id)) {return;} 4555 js = d.createElement(s); 4556 js.id = id; 4557 js.src = 'https://connect.facebook.net/zh_TW/sdk.js'; 4558 fjs.parentNode.insertBefore(js, fjs); 4559 }(document, 'script', 'facebook-jssdk')); 4560 </script>
4560 4561 4562
4563<script> 4564 // for scupio 4565 if (document.querySelector("meta[name=\"scupio_mid\"]")) { 4566 mid = document.querySelector("meta[name=\"scupio_mid\"]").content; 4567 } else { 4568 mid = ""; 4569 } 4570 if (!window.is_scupio_sent && mid) { 4571 window._bwtm = window._bwtm || [] 4572 window._bwtm.push({ 4573 "mid": mid, 4574 "uid": "" 4575 }); 4576 } 4577</script>
4577 4578 4579<!-- cyb_snippet _tracking_code end --> 4580
4581<script> 4582 $(document).ready(function(){ 4583 if(window.location.pathname != '' && window.location.pathname != '/' ){ 4584 document.getElementById('index-recommendation').style.display = 'none' 4585 } 4586 }); 4587</script>
4587 4588 4589 4590 4591 <!-- Fast-Events --> 4592 <!-- cyb_snippet fast_events start --> 4593 4594
4595<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/fast_events-3a2e378145f8a165.js' type='text/javascript'></script>
4595 4596<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/fast_events-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 4597 4598<!-- cyb_snippet fast_events end --> 4599 4600 <div class="bottom-right qk-pos--fixed"> 4601 <!-- gototop --> 4602 <div id="gototop" class="qk-display--none qk-text--center"> 4603 <a href="javascript:void(0)" class="qk-circle qk-circle--lg qk-pos--relative qk-text--center"> 4604 <i class="fas fa-chevron-up"></i> 4605 </a> 4606 </div> 4607 4608 <!-- popup --> 4609 4610 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/popup-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 4611 4612 4613 4614 4615 4616 4617<div id="popup-wrapper" class="qk-display--none"></div> 4618 4619<template id="popup-template"> 4620 <div 4621 :class="status" 4622 v-if="hasContent" 4623 id="popup-section" 4624 > 4625 <transition name="backdrop"> 4626 <div 4627 v-if="shouldShowPopup" 4628 @click.capture="minifyPopup" 4629 id="popup-backdrop" 4630 class="qk-w--100vw qk-h--100vh qk-pos--fixed qk-t--0 qk-l--0 qk-tst" 4631 > 4632 </div> 4633 </transition> 4634 <transition name="onShow"> 4635 <div 4636 @click.self="showPopup" 4637 @transitionstart="updateGameStatus('start', this)" 4638 @transitionend="updateGameStatus('end', this)" 4639 class="popup-content qk-display--flex qk-align--center qk-tst qk-tst_dur--30 qk-tst_timing--ease_o" 4640 > 4641 <div 4642 v-for="block in blocks" 4643 :key="block.id" 4644 :class="[block.type, minifiedBlockClasses, block.settings.icon_size]" 4645 class="block qk-tst qk-tst_dur--30 qk-tst_timing--ease_o qk-of--auto" 4646 > 4647 <div v-if="block.type === 'image'" class="qk-pos--rel"> 4648 <img 4649 v-show="!shouldShowPopup" 4650 :src="block.settings.dict_icon_image_url" 4651 class="qk-tst qk-tst_dur--30 qk-tst_timing--ease_o" 4652 alt="popup button" 4653 > 4654 <a 4655 v-show="shouldShowPopup" 4656 :href="block.settings.dict_link" 4657 :target="block.settings.target" 4658 :rel="block.settings.rel" 4659 class="qk-display--flex qk-align--center" 4660 @click="linkClicked" 4661 > 4662 <picture> 4663 <source :srcset="block.settings.dict_mobile_image_url" media="(max-width: 576px)"> 4664 <source :srcset="block.settings.dict_tablet_image_url" media="(max-width: 992px)"> 4665 <img 4666 :src="block.settings.dict_image_url" 4667 class="qk-tst qk-tst_dur--30 qk-tst_timing--ease_o" 4668 alt="popup picture" 4669 /> 4670 </picture> 4671 </a> 4672 </div> 4673 <div v-if="block.type === 'video'"> 4674 <iframe 4675 :src="block.settings.dict_video_link" 4676 frameborder="0" 4677 class="qk-center--y qk-w--100 qk-h--100" 4678 ></iframe> 4679 </div> 4680 <div v-if="block.type === 'game'"> 4681 <div v-show="gameStatus === 'show'" :class="{ 'show-game': gameStatus === 'show' }"> 4682 <iframe 4683 class="cb-game-iframe iframe-loading" 4684 :src="getGameIframeSrc(block)" 4685 style="border: none;" 4686 > 4687 Loading 4688 </iframe> 4689 </div> 4690 <div v-show="gameStatus === 'minified'"> 4691 <img 4692 src="//cdn-general.cybassets.com/game_assets/game_minified_new.png" 4693 class="qk-h--100 qk-w--100" 4694 alt="game minified icon" 4695 /> 4696 </div> 4697 </div> 4698 <div 4699 v-if="block.type === 'carousel'" 4700 :id="`popup-carousel-${block.id}`" 4701 > 4702 </div> 4703 </div> 4704 </div> 4705 </transition> 4706 <transition name="backdrop"> 4707 <div 4708 v-if="shouldShowPopup" 4709 @click.capture="minifyPopup" 4710 class="minify-popup qk-circle qk-circle--md qk-text--black qk-bg--white qk-bd--default qk-bd--border qk-text--center qk-cursor--pointer qk-pos--fixed" 4711 > 4712 </div> 4713 </transition> 4714 </div> 4715</template> 4716
4717<script> 4718 $(document).ready(function() { 4719 const CDN_HOST = '//cdn-general.cybassets.com'; 4720 const section = {"type":"popup","visible":true,"blocks":{"popup_block_1":{"type":"image","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MTIyMDE2X-aXpeabtDU0IOeahOikh-acrCDnmoTopIfmnKwucG5nLnBuZyJdXQ.png?sha=b6e69a9d3ca95344","icon_size":"middle","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MTIyMDE2X-aXpeabtDU0IOeahOikh-acrCDnmoTopIfmnKwucG5nLnBuZyJdXQ.png?sha=b6e69a9d3ca95344","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MTIyMDE2X-aXpeabtDU0IOeahOikh-acrCDnmoTopIfmnKwucG5nLnBuZyJdXQ.png?sha=b6e69a9d3ca95344","dict_icon_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjM1ODMyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MTIyMDE2X-aXpeabtDU0IOeahOikh-acrCDnmoTopIfmnKwucG5nLnBuZyJdXQ.png?sha=b6e69a9d3ca95344","dict_link":"https://lin.ee/Vg1Pb9b"},"custom_name":"åç"}},"block_order":["popup_block_1"],"settings":{},"custom_name":"å½çªå»£å"}; 4721 var popupSection = Vue.createApp({ 4722 template: '#popup-template', 4723 delimiters: ['${', '}'], 4724 data() { 4725 const isOmniauthPage = ['omniauth_terms_agreement', 'omniauth_mobile/'] 4726 .some(path => location.pathname.includes(path)); 4727 return { 4728 status: 'minified', 4729 gameStatus: 'show', 4730 blocks: isOmniauthPage 4731 ? [] 4732 : section.block_order && section.block_order.reduce( 4733 function(acc, blockId) { 4734 const block = section.blocks[blockId]; 4735 if (block && block.visible) { 4736 acc.push({ 4737 ...block, 4738 id: blockId, 4739 }); 4740 } 4741 return acc; 4742 }, 4743 [], 4744 ), 4745 hasAddedGameScript: false, 4746 }; 4747 }, 4748 computed: { 4749 hasContent: function() { 4750 return !!(this.blocks && this.blocks.length > 0); 4751 }, 4752 minifiedBlockClasses: function() { 4753 return this.status === 'minified' ? 'qk-pointer--none qk-unselectable' : ''; 4754 }, 4755 shouldShowPopup: function() { 4756 return this.status === 'show'; 4757 } 4758 }, 4759 methods: { 4760 unhidePopup: function(storedStatus) { 4761 this.status = storedStatus; 4762 $('#popup-wrapper').removeClass('qk-display--none'); 4763 }, 4764 showPopup: function() { 4765 if (this.status !== 'show') { 4766 this.status = 'show'; 4767 this.saveStatus(this.status); 4768 } 4769 }, 4770 minifyPopup: function() { 4771 this.status = 'minified'; 4772 this.saveStatus('minified'); 4773 }, 4774 loadStatus: function() { 4775 return JSON.parse(localStorage.getItem('popupStatus')); 4776 }, 4777 saveStatus: function(status) { 4778 if (status) { 4779 localStorage.setItem('popupStatus', JSON.stringify({ 4780 status: status, 4781 setTime: new Date().getTime(), 4782 })); 4783 } 4784 }, 4785 linkClicked: function() { 4786 this.saveStatus('minified'); 4787 }, 4788 parseVideoLink: function(settings) { 4789 settings.dict_video_link = themeHelper.parseYtUrl(settings.dict_video_link); 4790 }, 4791 setupImageSrc: function (settings) { 4792 settings.dict_image_url = this.addCdnHost(settings.dict_image_url); 4793 if (settings.dict_tablet_image_url) { 4794 settings.dict_tablet_image_url = this.addCdnHost(settings.dict_tablet_image_url); 4795 } 4796 if (settings.dict_mobile_image_url) { 4797 settings.dict_mobile_image_url = this.addCdnHost(settings.dict_mobile_image_url); 4798 } 4799 settings.dict_icon_image_url = this.addCdnHost(settings.dict_icon_image_url) || settings.dict_image_url; 4800 }, 4801 addCdnHost: function(url) { 4802 if (!url) { 4803 return url; // only add cdn host if url is not empty 4804 } 4805 4806 try { 4807 new URL(url); 4808 return url; // already a valid url, cdn host not needed 4809 } catch { 4810 return `${CDN_HOST}${url}`; 4811 } 4812 }, 4813 initStatus: function() { 4814 let newStatus = 'show'; 4815 const popupStatus = this.loadStatus(); 4816 const currentTime = new Date().getTime(); 4817 const oneDay = 1000 * 60 * 60 * 24; 4818 const hasStoredStatus = popupStatus && currentTime - popupStatus.setTime < oneDay; 4819 const redirectedByGameLogin = !this.hasRedirectUrl() && this.redirectedByGameLogin(); 4820 const isLoggingIn = this.isLoggingIn(); 4821 const isCartPage = window.location.pathname.split('/').includes('carts'); 4822 4823 if (hasStoredStatus && !redirectedByGameLogin) { 4824 newStatus = popupStatus.status; 4825 } 4826 4827 if (isLoggingIn) { 4828 newStatus = 'minified'; 4829 } else { 4830 localStorage.removeItem('redirectedByPopup'); 4831 } 4832 4833 setTimeout(() => { 4834 this.status = newStatus; 4835 this.gameStatus = newStatus; 4836 this.saveStatus(newStatus); 4837 if(!isCartPage){ 4838 this.unhidePopup(newStatus); 4839 } 4840 }, 1000); 4841 }, 4842 initBlocks: function() { 4843 if (this.hasContent) { 4844 this.blocks.forEach(block => { 4845 switch(block.type) { 4846 case 'image': 4847 this.setupImageSrc(block.settings); 4848 4849 const isOpenInNewTab = block.settings.link_open_in_new_tab; 4850 if (isOpenInNewTab) { 4851 block.settings.target = '_blank'; 4852 block.settings.rel = 'noopener noreferrer'; 4853 } 4854 4855 break; 4856 case 'video': 4857 this.parseVideoLink(block.settings); 4858 break; 4859 } 4860 }) 4861 } 4862 }, 4863 getGameIframeSrc: function (block) { 4864 return `/games/${block.settings.dict_game_handle}` 4865 }, 4866 updateGameStatus: function(type, element) { 4867 if ( 4868 (type === 'start' && this.status === 'minified') 4869 || (type === 'end' && this.status === 'show') 4870 ) { 4871 this.gameStatus = this.status; 4872 } 4873 }, 4874 setupGameRedirects: function() { 4875 window.addEventListener('pagehide', () => { 4876 const isGameActive = document.body.getElementsByClassName('show-game').length; 4877 if (isGameActive) { 4878 localStorage.setItem('redirectedByPopup', 'true'); 4879 this.saveStatus('minified'); 4880 } 4881 }); 4882 }, 4883 hasRedirectUrl: function() { 4884 return (new URLSearchParams(location.search)).has('redirect_url'); 4885 }, 4886 redirectedByGameLogin: function() { 4887 return localStorage.getItem('redirectedByPopup'); 4888 }, 4889 isLoggingIn: function() { 4890 const loginRelatedPathnames = [ 4891 'account/signup', 4892 'account/login', 4893 'account/customer/password/new', 4894 'pages/terms' 4895 ]; 4896 return loginRelatedPathnames.some(path => location.pathname.includes(path)); 4897 } 4898 }, 4899 created: function() { 4900 this.initStatus(); 4901 this.initBlocks(); 4902 this.setupGameRedirects(); 4903 }, 4904 mounted: function() { 4905 this.blocks.forEach((block) => { 4906 if (block.type === 'carousel' && block.settings.dict_c
4906arousel) { 4907 renderCarousel(`#popup-carousel-${block.id}`, { 4908 title: block.settings.dict_carousel, 4909 CDN_HOST, 4910 onLinkClick: () => this.linkClicked(), 4911 }); 4912 } 4913 }); 4914 }, 4915 }); 4916 popupSection.mount('#popup-wrapper'); 4917 }); 4918</script>
4918 4919 4920 4921 4922 </div> 4923 4924 <!-- ajaxloading --> 4925 <div id="ajaxloading" class="qk-display--none qk-h--100vh qk-w--100vw qk-l--0 qk-t--0 qk-pos--fixed"> 4926 <div class="ajaxbody qk-pos--abs qk-l--50 qk-t--50 qk-text--center"> 4927 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="73.4" height="73.4" viewBox="0 0 73.4 73.4"> 4928 <circle class="circle" fill="none" stroke="#898989" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" cx="36.7" cy="36.7" r="35.2"/> 4929 <polyline class="success_path" fill="none" stroke="#898989" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="23.7,36.8 32.4,45.4 49.7,28 "/> 4930 <path class="success_icon" fill="#898989" d="M32.5,46.9c-0.4,0-0.8-0.2-1.1-0.4l-8.6-8.6c-0.6-0.6-0.6-1.5,0-2.1s1.5-0.6,2.1,0l7.5,7.5L48.6,27c0.6-0.6,1.5-0.6,2.1,0s0.6,1.5,0,2.1L33.5,46.5C33.2,46.7,32.9,46.9,32.5,46.9L32.5,46.9z"/> 4931 <line class="fail_path" fill="none" stroke="#898989" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="26.6" y1="26.6" x2="46.8" y2="46.8"/> 4932 <line class="fail_path" fill="none" stroke="#898989" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="46.8" y1="26.6" x2="26.6" y2="46.8"/> 4933 <path class="fail_icon" fill="#898989" d="M38.7,36.7l9.1-9.1c0.6-0.6,0.6-1.5,0-2.1s-1.5-0.6-2.1,0l-9.1,9.1l-9.1-9.1c-0.6-0.6-1.5-0.6-2.1,0s-0.6,1.5,0,2.1l9.1,9.1l-9.1,9.1c-0.6,0.6-0.6,1.5,0,2.1c0.3,0.3,0.7,0.4,1.1,0.4s0.8-0.1,1.1-0.4l9.1-9.1l9.1,9.1c0.3,0.3,0.7,0.4,1.1,0.4s0.8-0.1,1.1-0.4c0.6-0.6,0.6-1.5,0-2.1L38.7,36.7z"/> 4934 </svg> 4935 <div class="success_msg title qk-display--none qk-pos--abs qk-l--0 qk-w--100 qk-text--center">å·²å å ¥è³¼ç©è»</div> 4936 <div class="success_update_msg title qk-display--none qk-pos--abs qk-l--0 qk-w--100 qk-text--center">å·²æ´æ°è³¼ç©è»</div> 4937 <div class="fail_msg title qk-display--none qk-pos--abs qk-l--0 qk-w--100 qk-text--center">網路ç°å¸¸ï¼è«éæ°æ´ç</div> 4938 </div> 4939 </div> 4940
4940<script src="//cdn-general.cybassets.com/assets/referral-code-trace-5fcbbe026a61c36b5f09a1615a1c168688205205d9d3e7ee854181a66b64a6ed.js"></script>
4940</body> 4941 4942
4942<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/sub_vendor-3a2e378145f8a165.js' type='text/javascript'></script>
4942 4943
4943<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/theme_helper-3a2e378145f8a165.js' type='text/javascript'></script>
4943 4944 4945 <!-- theme assets --> 4946
4946<script src='//cdn-general.cybassets.com/s/files/35832/theme/129735/assets/js/1775621071_677a7d16_main.js?1775621071' type='text/javascript'></script>
4946 4947
4947<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/theme-3a2e378145f8a165.js' type='text/javascript'></script>
4947 4948 4949 <!-- for cache --> 4950
4950<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/cacheable-3a2e378145f8a165.js' type='text/javascript'></script>
4950 4951</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.