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-TK6HW8PV
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/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzU2Nzk2MzAzX-avm-avm-iXuy1sb2dvLnBuZy5wbmciXV0.png?convert=false&sha=325706e012caae79"> 26<link rel="apple-touch-icon" href="https://cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzU2Nzk2MzAzX-avm-avm-iXuy1sb2dvLnBuZy5wbmciXV0.png?convert=false&sha=325706e012caae79"> 27 28<meta property="og:site_name" content="furrykelp æ¯æ¯è»" /> 29 30<!-- og tag --> 31 32 33<!-- og image --> 34 35 <meta property="og:image" content="https://cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzBfZGExNTY3OWQ3OWY2Y2I5YjQ0MDIucG5nIl0sWyJwIiwidGh1bWIiLCI0ODB4NDgwIl1d.png?sha=520ed6b00b657f0b" /> 36 37 38<title> 39 40 æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é ï½èè¶è+åçç±½ã»ç¬è²é©ç¨ï½æ¯æ¯è» furrykelp æ¯æ¯è» 41 42</title> 43 44 45
46<script src='//cdn-general.cybassets.com/frontend/shop/useSettingsData-3a2e378145f8a165.js' type='text/javascript'></script>
46 47 48 49 50
50<script> 51 window.setSettingsData({"draggable_sections":{"404":[],"index":["1782825715259_0","_index_product_banner_2","_index_product_banner","_index_4_blocks","_index_8_blocks","_graphic_introduction","_index_product_banner_3","_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":[]},"sections":{"navbar":{"type":"navbar","visible":true,"settings":{"navbar_image_logo_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4MDQ4MjgxXzEwMHgxMDDlrpjntrJMT0dPLnBuZy5wbmciXV0.png?sha=753d829eb2d61394","navbar_image_logo_tablet_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4MDQ4MjgxXzEwMHgxMDDlrpjntrJMT0dPLnBuZy5wbmciXV0.png?sha=753d829eb2d61394","navbar_image_logo_mobile_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4MDQ4MjgxXzEwMHgxMDDlrpjntrJMT0dPLnBuZy5wbmciXV0.png?sha=753d829eb2d61394","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":"/theme_src/i18n_icare/default_img/header_banner_image.png","dict_header_banner_image_tablet_url":"","dict_header_banner_image_mobile_url":"","dict_header_banner_link":"","display_count_down":false,"navbar_display_style":"rowCenterNav","menu_display_style":"three_dimension_menu","header_banner_start":"","header_banner_end":"","timer_text_color":"#c39d6f","timer_bg_color":"#2b2b6e","logo_height":"","mobile_logo_position":"center","link_menu_enabled":false,"link_menu":"undefined","navbar_pc_title_font_size_scale":"90","navbar_pc_body_font_size_scale":"100","navbar_mobile_title_font_size_scale":"90","navbar_mobile_body_font_size_scale":"100","display_banner_type":"textBanner","header_banner_simple_text":"å å ¥æå¡é好禮","header_banner_simple_text_size":"25","header_banner_simple_text_color":"#7f7d7d","header_banner_simple_bg":"#89dccb","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_link_list_2","default_contact_info","rich_text_editor_setting"],"blocks":{"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":"04-26622906","display_fax_number":true,"dict_shop_fax_number":"04-22569719","display_shop_email":true,"dict_shop_email":"[email protected]","display_shop_address":true,"dict_shop_address":"å°ä¸å¸æ²é¹¿åæ¥æ°è¡25å··11è2æ¨","display_office_time":true,"dict_shop_office_time":"10:00-17:00","display_tax_id":true,"dict_tax_id":"90386976"},"custom_name":"è¯çµ¡è³è¨"},"default_link_list_2":{"type":"link_list_setting","visible":true,"settings":{"dict_link_list_block_title":"å®è·å¯µæéå¿æ¥å¸¸","footer_link":"footer"},"custom_name":"é¸å®"},"rich_text_editor_setting":{"type":"rich_text_editor_setting","visible":true,"settings":{"dict_rich_text_title":"","dict_rich_text_content":"\u003cp\u003eThis product is not intended to diagnose, treat, cure, or prevent any disease.\u003c/p\u003e\n"},"custom_name":"èªè¨æå"}},"custom_name":"é è ³"},"_index_product_banner":{"type":"_index_product_banner","visible":true,"settings":{"dict_link":"","dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgwOTA2NjA5X-WkqeeEtuS-hua6kC5wbmcucG5nIl1d.png?sha=d324220d21e2ddd1","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgwOTA2NzcwX-acquWRveWQjeioreioiCAoMSkucG5nLnBuZyJdXQ.png?sha=787eff15828752f9","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgwOTA2NzI1X-WkqeeEtuikkOiXuzQ4MFg4MDAucG5nLnBuZyJdXQ.png?sha=7605e484b0d65f25","cta_btn_display_style":"topPosition","cta_btn_text":"äºè§£æ´å¤","cta_btn_bg_color":"#000000","cta_btn_text_color":"#ffffff","margin_x":"0","margin_bottom":"60","mobile_margin_x":"0","mobile_margin_bottom":"16"},"custom_name":"æ©«å¹ å»£å"},"_index_product_banner_2":{"type":"_index_product_banner","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODc0NTMyX-ikkOiXu-a9lOeJmeS_neWBpeeyieeFp-mhp-avm-WtqeWBpeW6tzE5MjBYODAwLnBuZy5wbmciXV0.png?sha=1d5c1278ecc1c0e7","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODc0NTU3X-WkqeeEtuikkOiXu-WuiOitt-iyk-eLl-a9lOeJmeWBpeW6tzk2MFg4MDAucG5nLnBuZyJdXQ.png?sha=7ac3210dcfc3bf99","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODc0NTU3X-WkqeeEtuikkOiXu-eFp-mhp-iyk-eLl-WBpeW6ty7muIXpmaTlj6Poh600ODBYODAwLnBuZy5wbmciXV0.png?sha=f7913bc29ccacc52","dict_link":"/collections/all","display_cta_btn":false,"cta_btn_display_style":"bottomPosition","cta_btn_text":"Shop Now","cta_btn_bg_color":"#e7780c","cta_btn_text_color":"#e8e8e8","margin_x":"0","margin_bottom":"0","mobile_margin_x":"0","mobile_margin_bottom":"0","dict_cta_btn_text":"äºè§£æ´å¤åªæ ","link_open_in_new_tab":true},"custom_name":"æ©«å¹ å»£å"},"_index_4_blocks":{"type":"_index_4_blocks","visible":true,"settings":{"margin_x":"50","margin_bottom":"80","mobile_margin_x":"0","mobile_margin_bottom":"40","mobile_columns":2,"margin_block":"25","mobile_margin_block":"15","mobile_align":"left"},"blocks":{"display_index_4_block_1":{"type":"image","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4ODE1NDE4X-aUr-aMgeWPo-iFlOWBpeW6t-esrOS4ieW8tS5wbmcucG5nIl1d.png?sha=acec0723c594f675","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODc3NTA2X-ikkOiXu-a9lOeJmei8lemshuWujOaIkOiyk-WSqueJmem9kjk4MFg4MDAucG5nLnBuZyJdXQ.png?sha=92fc400988af3a5d","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODc3NTA2X-ikkOiXu-a9lOeJmeiyk-eLl-mZpOWPo-iHrea4heaWsOWkqeeEtjQ4MFg4MDAucG5nLnBuZyJdXQ.png?sha=15291d3e92f368e6","dict_link":"/products/è¤è»æ½çç²","dict_image_description":"\u003cp\u003e\u003c/p\u003e\n","dict_image_title":""},"custom_name":"åç"},"display_index_4_block_1_2":{"type":"image","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4ODE1NDc0X-W9iOWKm-WEquWujOaIkOeJiC5wbmcucG5nIl1d.png?sha=44d8b09847f7f800","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4ODE1NDc0X-W9iOWKm-WEquWujOaIkOeJiC5wbmcucG5nIl1d.png?sha=44d8b09847f7f800","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4ODE1NDc0X-W9iOWKm-WEquWujOaIkOeJiC5wbmcucG5nIl1d.png?sha=44d8b09847f7f800","dict_link":"/products/jointcare","dict_image_description":""},"custom_name":"åç"},"display_index_4_block_1_3":{"type":"image","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4ODE1NjE1X-a3qOaCoOWvtuesrOS4ieWujOaIkOeJiC5wbmcucG5nIl1d.png?sha=1ab63f6c166bdd59","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4ODE1NjE1X-a3qOaCoOWvtuesrOS4ieWujOaIkOeJiC5wbmcucG5nIl1d.png?sha=1ab63f6c166bdd59","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4ODE1NjE1X-a3qOaCoOWvtuesrOS4ieWujOaIkOeJiC5wbmcucG5nIl1d.png?sha=1ab63f6c166bdd59","dict_link":"/products/aquavitality","dict_image_description":"","custom_block_image_alt":""},"custom_name":"åç"},"display_index_4_block_1_4":{"type":"image","visible":true,"settings":{"dict_image_url":"/theme_src/i18n_icare/default_img/index_4_blocks_1_4.png","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"","dict_image_description":""},"custom_name":"åç"}},"block_order":["display_index_4_block_1","display_index_4_block_1_2","display_index_4_block_1_3"],"custom_name":"èªè¨æçè¨è¨"},"_index_8_blocks":{"type":"_index_8_blocks","visible":false,"settings":{"dict_title":"æ°åä¸å¸","collection_handle":"強奿¯å©å","limit":"4","margin_x":"100","margin_bottom":"48","mobile_margin_x":"0","mobile_margin_bottom":"24","product_display":"displayPartial","product_arrangement":"1","product_column_for_pc":"4","product_column_for_mobile":"2","product_alignment":"leftPosition","product_text_align":"center","product_card_hover_effect":"button","product_image_border_radius":"15"},"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_shoestore/default_img/index_4_blocks_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":"
516","category_product_item_limit":"18"}},"shop_setting":{"type":"shop_setting","visible":true,"settings":{"favicon_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzU2Nzk2MzAzX-avm-avm-iXuy1sb2dvLnBuZy5wbmciXV0.png?sha=325706e012caae79","og_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzU2Nzk2MzAzX-avm-avm-iXuy1sb2dvLnBuZy5wbmciXV0.png?sha=325706e012caae79","shop_title":"天ç¶è¤è»ç²ï¼å®è·æ¯å©å¥åº·å¤¥ä¼´","shop_description":"ç¶²ç«ç°¡è¿°å°çºç¬è²è¨è¨çãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï¼æ¡ç¨å æ¿å¤§é²å£å¤©ç¶è¤è»ç²(Ascophyllum nodosum)ï¼å
å·çãç¨åçå°±è½è¼é¬å¹«å©è²çæ¸
æ½çå¢ãæå¶çèæãå°æå£èãéæè²·1é1åªæ ä¸ï¼èç¬èè²ä¹é©ç¨ï¼å®è·æ¯å©å¥åº·å¾å£è
éå§ï¼","shop_keywords":"ç¶²ç«ééµåæ¯æ¯è»,FurryKelp,è¤è»æ½çç²,å¯µç©æ½çç²,çå£è,è²å£è,寵ç©é¤å£è,çå
å·ç,è²å
å·ç,å æ¿å¤§è¤è»ç²,寵ç©å£è
ä¿å¥,è²·ä¸éä¸"},"custom_name":"å
¨ç«è¨å®"},"color_settings":{"type":"color_settings","visible":true,"settings":{"button_color":"#00a1a3","button_text_color":"#FFFFFF","accent_color":"#40c1ac","heading_color":"#000000","text_color":"#9A9EA2","price_color":"#00a1a3","discount_price_color":"#00a1a3","theme_bg_color":"#ffffff","product_border_color":"#00a1a3","nav_logo_bg_color":"#FFFFFF","nav_menu_bg_color":"#FFFFFF","nav_menu_text_color":"#3e4442","nav_menu_icon_color":"#3e4442","footer_bg_color":"#d5f3eb","footer_text_color":"#3d4341","checkout_button_color":"#3e4442","checkout_accent_color":"#00a1a3","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/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyOTE2MTI4X-WumOe2suW9iOi3s-WcljgwMHg4MDAucG5nLnBuZyJdXQ.png?sha=89eff98409d59379","icon_size":"small","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyOTE2MTI4X-WumOe2suW9iOi3s-WcljgwMHg4MDAucG5nLnBuZyJdXQ.png?sha=89eff98409d59379","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyOTE2MTI4X-WumOe2suW9iOi3s-WcljgwMHg4MDAucG5nLnBuZyJdXQ.png?sha=89eff98409d59379","link_open_in_new_tab":true,"dict_link":"/products/bogo"},"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","product_column_for_pc":"","is_infinite_scroll":false},"custom_name":"åååé¡è¨å®"},"404":{"type":"404","visible":true,"settings":{"image_url":"/theme_src/i18n_icare/default_img/404_img.png","dict_404_image_url":"/theme_src/i18n_icare/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":{}},"_index_4_blocks_2":{"type":"_index_4_blocks","visible":true,"settings":{"margin_x":"30","margin_bottom":"50","margin_block":"0","mobile_margin_x":"0","mobile_margin_bottom":"50","mobile_columns":1,"mobile_margin_block":"0","mobile_align":"left"},"blocks":{"_index_4_blocks_2_block_1":{"type":"video","visible":true,"settings":{"dict_video_link":"https://youtu.be/6ML0JOWVbDk?si=OahT6Wamu6LGlMB7","auto_play":true,"hide_controls":false,"loop":true,"block_propotion":"50"},"custom_name":"å½±ç"},"_index_4_blocks_2_block_2":{"type":"image","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MjYyMjQyX-avj-WkqeWKoOS4gOm7njgwMFg4MDAucG5nLnBuZyJdXQ.png?sha=c077d1a651166021","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODc4MzM4X-a9lOeJmeeyieiyk-eLl-WFjeWIt-eJmS5wbmcucG5nIl1d.png?sha=cd07a94fb8fb236c","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODc4MzM4X-ikkOiXu-iyk-eLl-WIt-eJmeWQg-aSkuS4gOaSki5wbmcucG5nIl1d.png?sha=22980962558487f0","dict_link":"/collections/all","dict_image_description":"","block_propotion":"50"},"custom_name":"åç"}},"block_order":["_index_4_blocks_2_block_1","_index_4_blocks_2_block_2"],"custom_name":"èªè¨æçè¨è¨"},"_graphic_introduction":{"type":"_graphic_introduction","visible":true,"settings":{"text_display":"leftPosition","graphic_text":"#ffffff","graphic_bg"
51:"#40c1ac","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"0","dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MDkwMDYyX-iyt-S4gOmAgeS4gDgwMFg4MDDlrozmiJAucG5nLnBuZyJdXQ.png?sha=08f45b1de14f77aa","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODUzMzE4X-apq-W5heW7o-WRiuS4iuaetueJiC5wbmcucG5nIl1d.png?sha=7fb8a8b60adaa8e9","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODUzMzQ0X-iyt-S4gOmAgeS4gDgwMFg4MDDlrozmiJAucG5nLnBuZyJdXQ.png?sha=fd32190afa60c494","btn_display":"leftSide","block_propotion":"50"},"blocks":{"_graphic_introduction_block_1":{"type":"title","visible":true,"settings":{"dict_rich_text_title":"ä½ éæ¶ä¸å¯çãè²·ä¸éä¸ã3大çç±ï¼","dict_size":"29"},"custom_name":"æ¨é¡"},"_graphic_introduction_block_2":{"type":"text","visible":true,"settings":{"dict_rich_text_content":"\u003cp\u003e1. ð° å¹«ä½ åç¨ãé
æ¿å¹ãç䏿ªä¾ç大麻ç
©\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eãä½ ç¥éåï¼çæ¯å©åºç¾å´éç壿°£åé¡ãçè³å½±é¿é£æ
¾æï¼å»ä¸è¶è¨ºææ´ççè²»ç¨ï¼åè¼æ¸åå
çè³ç ´è¬å
ï¼éè¦æ¿å麻éç風éªãç¾å¨\u003cstrong\u003eè²·ä¸éä¸ï¼ä¸å¤©åªè¦é
æ¿å¹\u003c/strong\u003eï¼å¨æ¥å¸¸å飯æçä¸çï¼å°±æ¯æè°æãæçé¢çå¥åº·æè³ï¼ã\u003cbr\u003e\u003cbr\u003e2. ð å¥è®ã壿°£åé¡ãæ¨éä½ åæ¯å©\u003c/li\u003e\n\u003cli\u003eãç¶æ¯å©å£æ°£ä¸å¥½ãçé½è¡¨é¢ç°ææï¼ç æ³è·æ¨æå¬è¦ªè¦ªï¼æ¨å»å¿ä¸ä½å¾å¾éââéå°æ»¿ç¼é½æ¯æ¨çæ¯å©ä¾èªªï¼æ¯å¤éº¼åæ«çäºï¼\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eæ¯å¤©è¼é¬è£å
ï¼è®æ¨æéåçæéå®è·ç çæ¸
æ°å¥½å£æ°£\u003c/strong\u003eï¼å³ä½¿ç é常è¨åå·çãä¸çµ¦ç¢°å´å·´ï¼ä¹è½å¤©å¤©å¨å飯æï¼ææç¶æé½é¢æ½æ·¨äº®ç½ï¼å¾åºåºå¾¹åºä¸åç°å³ï¼ã\u003cbr\u003e\u003cbr\u003e3. ðãå¿
åãå大西æ´è¤è»ï¼æ¯å©å°å±¬çã天ç¶é±å½¢çå·ã\u003c/li\u003e\n\u003cli\u003eå´é¸ä¾èªå æ¿å¤§åå¤§è¥¿æ´æ¥µå¯æµ·åçãç´æ·¨æ³¡èè»ãã\u003c/li\u003e\n\u003cli\u003eè¤è»ä¸ç¨æç\u003cstrong\u003eãæµ·è»å¤é
ã\u003c/strong\u003eè\u003cstrong\u003eãè¤è»ç³è ã\u003c/strong\u003eï¼æ¯å¤©ç¶çé²è·ä¿è·ç½©ãæ¯å©åä¸å»
51å¾ï¼é¨è徿¶²åå»åå¸å¨å£è
æ¯åè§è½ã\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eä¸åªé¡§å¥½å£æ°£ï¼æ´æ¯å
¨è½ççé¤è¶
ç´é£ç©\u003c/strong\u003eï¼é款ä¿å¥ç²æ¡ç¨100%\u003cstrong\u003e天ç¶è¤è»ç 磨\u003c/strong\u003eï¼å¥½æé£ã好叿¶ã\u003cbr\u003eéç¶è¤è»ç²é飽å«è¶
é 60 種微éå
ç´ ã天ç¶ç¤¦ç©è³ªèåºç¤èºåºé
¸ã\u003c/li\u003e\n\u003cli\u003e鿬¾ç±é·æ½çç²\u003cstrong\u003eé£å¾æ¨åºè²·ä¸éä¸\u003c/strong\u003eï¼è¨±å¤å¤è²å¤çå®¶åºã以åè¬ç©¶ç²¾ç·»é¤å¯µç飼䏻齿¯ 4 ç¶ã6 ç¶å¨å¤è²¨ãæ¬æ¬¡æ´»å\u003cstrong\u003eæ¸éæéï¼å®å®å³å復åå¹\u003c/strong\u003eï¼ç¾å¨ä¸é»æãç«å³é¸è³¼ãï¼é¯éççææ¶å¿èï¼ã\u003c/li\u003e\n\u003c/ul\u003e\n","dict_size":"16"},"custom_name":"å
§æ"},"_graphic_introduction_block_3":{"type":"button","visible":true,"settings":{"dict_btn_text":"ç«å³é¸è³¼","graphic-button_bg":"#ffffff","graphic-button_text":"#40c1ac","dict_graphic_button_link":"/products/11"},"custom_name":"æé"}},"block_order":["_graphic_introduction_block_1","_graphic_introduction_block_2","_graphic_introduction_block_3"],"custom_name":"åæä»ç´¹"},"_index_product_banner_3":{"type":"_index_product_banner","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5MDkyODcwX-WPr-ebtOaOpemktemjnzE5MjBYODAw5a6M5oiQ54mILnBuZy5wbmciXV0.png?sha=fb0eae9c1aed5ae2","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"","cta_btn_display_style":"topPosition","cta_btn_bg_color":"#000000","cta_btn_text_color":"#ffffff","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"0"},"blocks":{},"block_order":[],"custom_name":"æ©«å¹
廣å"},"_index_4_blocks_3":{"type":"_index_4_blocks","visible":true,"settings":{"margin_x":"0","margin_bottom":"50","margin_block":"0","mobile_margin_x":"0","mobile_margin_bottom":"50","mobile_columns":2,"mobile_margin_block":"0"},"blocks":{"_index_4_blocks_3_block_1":{"type":"image","visible":true,"settings":{"dict_image_url":"/theme_src/i18n_icare/default_img/index_4_blocks_3_block_1.png","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"","dict_image_description":""},"custom_name":"åç"},"_index_4_blocks_3_block_2":{"type":"image","visible":true,"settings":{"dict_image_url":"/theme_src/i18n_icare/default_img/index_4_blocks_3_block_2.png","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"","dict_image_description":""},"custom_name":"åç"},"_index_4_blocks_3_block_3":{"type":"image","visible":true,"settings":{"dict_image_url":"/theme_src/i18n_icare/default_img/index_4_blocks_3_block_3.png","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"","dict_image_description":""},"custom_name":"åç"},"_index_4_blocks_3_block_4":{"type":"image","visible":true,"settings":{"dict_image_url":"/theme_src/i18n_icare/default_img/index_4_blocks_3_block_4.png","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"","dict_image_description":""},"custom_name":"åç"},"_index_4_blocks_3_block_5":{"type":"image","visible":true,"settings":{"dict_image_url":"/theme_src/i18n_icare/default_img/index_4_blocks_3_block_5.png","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"","dict_image_description":""},"custom_name":"åç"}},"block_order":["_index_4_blocks_3_block_1","_index_4_blocks_3_block_2","_index_4_blocks_3_block_3","_index_4_blocks_3_block_4","_index_4_blocks_3_block_5"],"custom_name":"èªè¨æçè¨è¨"},"1779851922422_5":{"type":"_index_4_blocks","custom_name":"èªè¨æçè¨è¨","visible":true,"settings":{"margin_x":"0","margin_bottom":"50","margin_block":"10","mobile_margin_x":"0","mobile_margin_bottom":"50","mobile_columns":1,"mobile_margin_block":"10"},"blocks":{"1779851922424_0":{"type":"image","custom_name":"åç","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODUyNTU0X-WkqeeEtuikkOiXu-a9lOeJmeS_neWBpeeyiS5wbmcucG5nIl1d.png?sha=79c3ccc6582d7713","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODUyNTY3X-iyt-S4gOmAgeS4gOS4iuaetueJiC5wbmcucG5nIl1d.png?sha=0fbd54414b5c8e8e","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc5ODUyNTc3X-iyt-S4gOmAgeS4gOS4iuaetueJiC5wbmcucG5nIl1d.png?sha=b6d66f2631381422","dict_image_title":"è²·ä¸éä¸","dict_image_description":"","dict_link":"/collections/11"}},"1779852689850_2":{"type":"carousel","custom_name":"æç¨è·é¦¬ç","visible":true,"settings":{"dict_carousel":"ç¾å¨å å
¥æ¯æ¯è»æå¡äº«é¦è³¼ä¹æåªæ å!!!"}}},"block_order":["1779851922424_0","1779852689850_2"]},"1782825715259_0":{"type":"_main_slider_custom","custom_name":"輪æç´ æ","visible":true,"settings":{"swiper_delay":"3","transition_speed":"0.3","margin_x":"0","margin_bottom":"50","image_number":"1","image_space":"12","mobile_margin_x":"0","mobile_margin_bottom":"50","mobile_image_number":"1","mobile_image_space":"8"},"blocks":{"1782825715263_0":{"type":"image","custom_name":"ç´ æ","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyODI2MTIxX-avm-avm-iXu-WRqOW5tOaFtuWumOe2sui8quaSrS5wbmcucG5nIl1d.png?sha=b570bf426f6916cc","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyODI5NzM2X-avm-avm-iXu-WRqOW5tOaFtui8quaSreW5s-adv-eUqC5wbmcucG5nIl1d.png?sha=8651824a9eddb969","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyODI5NzM1X-avm-avm-iXu-WRqOW5tOaFtui8quaSreWcluaJi-apn-advy5wbmcucG5nIl1d.png?sha=0fb3890325c2f9d6","dict_link":"/products/bogo","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"}},"1782826094688_0":{"type":"image","custom_name":"ç´ æ","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyODI2MTUxX-avm-avm-iXu-WRqOW5tOaFtuWumOe2sui8quaSrSAoMSkucG5nLnBuZyJdXQ.png?sha=5e86f15f6e3ff9b0","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyODI5NzM2X-avm-avm-iXu-WRqOW5tOaFtui8quaSreW5s-adv-eUqCAoMikucG5nLnBuZyJdXQ.png?sha=28bdf4a147284f7f","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyODI5NzM1X-avm-avm-iXu-WRqOW5tOaFtui8quaSreWcluaJi-apn-advy5wbmcucG5nIl1d.png?sha=0fb3890325c2f9d6","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"}},"1782826097175_0":{"type":"image","custom_name":"ç´ æ","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyODI2MTc1X-avm-avm-iXu-WRqOW5tOaFtuWumOe2sui8quaSrSAoMikucG5nLnBuZyJdXQ.png?sha=7c10234038d17ff9","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyODI5NzAzX-avm-avm-iXu-WRqOW5tOaFtui8quaSreW5s-adv-eUqCAoMSkucG5nLnBuZyJdXQ.png?sha=35de24e01e6c4a5a","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyODI5NzM2X-avm-avm-iXu-WRqOW5tOaFtui8quaSreWcluaJi-apn-advygxKS5wbmcucG5nIl1d.png?sha=befd592979eeefd6","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"}},"1789617369417_0":{"type":"image","custom_name":"ç´ æ","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzg5NjE3MTcxX-avm-avm-iXu-WRqOW5tOaFtuWumOe2sui8quaSrS5wbmcucG5nIl1d.png?sha=03c7f
5105dd16e4fdd","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzg5NjE3MjQwX-avm-avm-iXu-WRqOW5tOaFtui8quaSreW5s-adv-eUqC5wbmcucG5nIl1d.png?sha=cbe49630c79e60e5","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzg5NjE3MjU4X-avm-avm-iXu-WRqOW5tOaFtui8quaSreWcluaJi-apn-advy5wbmcucG5nIl1d.png?sha=d17dabaafcaec76c","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":["1782825715263_0","1782826094688_0","1782826097175_0","1789617369417_0"]},"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":"","link_open_in_new_tab":false,"dict_image_url":"/theme_src/i18n_icare/default_img/header_banner_image.png","dict_image_tablet_url":"","dict_image_mobile_url":"","image_alt":"","dict_content":"å å
¥æå¡é好禮","text_size":"25","text_color":"#7f7d7d","bg_color":"#89dccb","timer_text_color":"#c39d6f","timer_bg_color":"#2b2b6e","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":"6","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","display_inventory_policy":true,"google_font":"{\"ja\":{\"value\":\"Noto Sans JP\"},\"zh-TW\":{\"value\":\"Montserrat\"},\"en\":{\"value\":\"Noto Sans TC\"},\"zh-CN\":{\"value\":\"Noto Sans TC\"}}","styled_shop_menu":"buttonType","product_scale":"default_scale","display_product_vendor":true,"nav_icon_style":"icon_type_default","product_text_align":"start","product_video_display_location":"before","product_card_hover_effect":"button","product_image_border_radius":"0","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"}
51,{"id":"11347219-a97c-4771-8a30-1d1ce3b5db0d","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 1","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"0da39bfa-39f2-41f7-83f9-3836efde686b","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 2","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"a220c088-7a1c-4e5f-84a1-20a844c4119b","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 3","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"31fa8c80-3437-4b86-b8c6-33ac1d929629","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 4","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"fe05a897-d326-4ebe-ae68-27c78b9d17da","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 5","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"}]}}); 52 </script>
52 53 54 55 56 57 58 59 60 61 62 63 <!-- for vendor --> 64 <!-- cyb_snippet _bootstrap start --> 65 66<!-- cyb_snippet _bootstrap end --> 67 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/vendor-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 68 69 <!-- common css rulesets --> 70 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/common-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 71 72 <!-- for navbar --> 73 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/navbar-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 74 75 <!-- for footer --> 76 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/footer-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 77 78 <!-- theme assets --> 79 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/main-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 80 81 <!-- for vendor --> 82
82<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/vendor-3a2e378145f8a165.js' type='text/javascript'></script>
82 83 84
84<script> 85 window.sci = "eyJzaG9wX2lkIjozMzA2Miwic2hvcF9wbGFuIjoiYm9zc19wbHVzIiwiZGlt\nX2FmZmlsaWF0ZSI6bnVsbCwiY3VzdG9tZXJfaWQiOm51bGwsImN1c3RvbWVy\nX25hbWUiOm51bGwsInNob3BfbmFtZSI6ImZ1cnJ5a2VscCDmr5vmr5vol7si\nLCJzaGFyZV9hdHRyaWJ1dGlvbl9lbmFibGVkIjpmYWxzZX0=\n"; 86 </script>
86 87 88 89<meta name="csrf-param" content="authenticity_token" /> 90<meta name="csrf-token" content="x3xDs8Q8oG_BYR_s-0VWKpovMsgc50hv1ZnGXRvXV_Ah9BH6-HHnjBHah0PzJ40VlJBmkEorA2E4XJ7_bPYjAg" />
91<script>(function () { 92 window.gaConfigurations = {"useProductIdInProductEvents":false}; 93})(); 94</script>
vendor: 1 bytes, line 94
94
95<script>(function () { 96 window.CYBERBIZ_PageContext = {"page_type":"product"}; 97})(); 98</script>
98 99<link href="//cdn-general.cybassets.com/frontend/shop/quark-3a2e378145f8a165.css" rel="stylesheet" type="text/css" media="all" /> 100
100<script> 101 window.shopScriptHelper = { 102 i18nLocale: "zh-TW", 103 i18nLocaleDefault: "zh-TW", 104 availableCurrencies: [], 105 defaultCurrency: "TWD", 106 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$"}], 107 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
107d_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":"æ¤åå ã æé« ã坿æµç´
å©","discount_event":"æ¤åååèçåªæ æ´»å","has_stock":"å°æåº«å ","insufficient_selected_quantity":"è«é¸æçµåå忬¾å¼ï¼å°å·® { count } ä»¶","inventory_status":"ä¾è²¨çæ³","inventory_tooltip":"實é庫åè«ä»¥çµå¸³é çºæº","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 }
107 ä»¶","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天å
è²»éè³
107æï¼å«ä¾åæ¥ï¼ãéæè²¨æè«ä¿æåå è£ååç宿´ï¼å å«è³¼è²·ååï¼éä»¶ï¼è´åçï¼ã\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 })éæ°ç¼é"}}}}, 108 hasI18nInContextEditing: false, 109 shopMultipleCurrenciesCheckout: false, 110 hasLocalizedShopPriceFormat: true, 111 } 112 </script>
112 113 114 115
115<script 116 src="//cdn-general.cybassets.com/frontend/shop/tolgeeIntegration-3a2e378145f8a165.js"> 117 </script>
117 118
118<script defer> 119 /* 120 * Enable in-context translation for Liquid part on the page. 121 * This must be executed last to prevent conflicts with other Vue apps. 122 * So put it to `onload`, which will be executed after DOM ready's app mount 123 */ 124 window.onload = function() { 125 if ( 126 window.shopScriptHelper && 127 window.shopScriptHelper.hasI18nInContextEditing 128 ) { 129 window.initTolgeeForLiquid() 130 } 131 } 132 </script>
132 133
134<script> var google_con_event_labels = [{"conversion_id":" 617974660","conversion_event":"order_created","conversion_label":"6Hv4CIKGouYaEISX1qYC","id":null},{"conversion_id":"17291207905","conversion_event":"all","conversion_label":"UJXVCIT31egaEOHJi7VA","id":null},{"conversion_id":"17291207905","conversion_event":"account_created","conversion_label":"QWGlCJKHzegaEOHJi7VA","id":null},{"conversion_id":"17291207905","conversion_event":"add_to_cart","conversion_label":"yYjxCNGKzegaEOHJi7VA","id":null},{"conversion_id":"17291207905","conversion_event":"checkout_page","conversion_label":"yQ0fCP-CzegaEOHJi7VA","id":null},{"conversion_id":"17291207905","conversion_event":"order_created","conversion_label":"HGZLCNnDwOgaEOHJi7VA","id":null}]</script>
vendor: 1 bytes, line 134
134
135<script src="//cdn-general.cybassets.com/frontend/shop/pageEventHandler-3a2e378145f8a165.js"></script>
vendor: 1 bytes, line 135
135
136<script src="//cdn-general.cybassets.com/frontend/shop/globalAnalysis-e4c650eb0b.js"></script>
136 137
137<script> 138 window.c12t = {"customer_id":null,"product":{"id":59699979,"name":"æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨","price":490.0,"brand":"æ¯æ¯è»"}}; 139 </script>
139 140 141 <meta name="request-id" content="4BA3D8E2404A67FE46BFA1C8DDAE85BA"/> 142 143<link rel="canonical" href="https://www.furrykelp.com/products/aquavitality">
144<script src="//cdn-general.cybassets.com/frontend/shop/carousel-3a2e378145f8a165.js"></script>
144 145
145<script> 146 window.parent.postMessage({ type: 'previewShopInit', currentUrl: window.location.href }, '*'); 147 </script>
147 148
149<script src="//cdn-general.cybassets.com/frontend/appStoreSDK/main.2798231628aa7fab87a9.js"></script>
vendor: 1 bytes, line 149
149
150<script>window.CYBERBIZ_AppScriptSettings = {"shop_add_ons":"W3sidmVuZG9yX3R5cGUiOiJDWUJFUkJJWiBHb29nbGUgQW5hbHl0aWNzIDQi\nLCJhcHBfaWQiOiJRVWo1WnFvZUlPUjlaM2JaS2trMG44N3l5a0FpOWU0NURE\naDJ0YlFnaUJBIiwic2V0dGluZ3MiOnsiZ3RhZ19pZCI6IkctSDJEODc3U1I2\nSywgRy00QjdSSzdGSFdIIn19LHsidmVuZG9yX3R5cGUiOiJHb29nbGUgQW5h\nbHl0aWNzIDQiLCJhcHBfaWQiOiJSYkpWMTVFcVZWOHJ1Umo3NVlmV3Z1RUlD\nRm90Q0FPZm0xSDZtZ3hyNkZBIiwic2V0dGluZ3MiOnsiZ3RhZ19pZCI6Ikct\nTjhEVENWNlM3WSJ9fSx7InZlbmRvcl90eXBlIjoiQ2hhdCBCb3giLCJhcHBf\naWQiOiJjOWQ4M2YwOTk2MTc0ZmJiYTg2ZWJhMDQxYWU4OThhMiIsInNldHRp\nbmdzIjp7IndpZGdldF9rZXkiOiItLTVBNXRiRjI3UVAzaloyIn19LHsidmVu\nZG9yX3R5cGUiOiJEaWdpdGFsIEludGVsbGlnZW5jZSBUcmFja2VyIiwiYXBw\nX2lkIjoiMWI1MGE4NmRjMmQxNDE4Mzg4ZmRlZGY3YTBkNDM5YWUiLCJzZXR0\naW5ncyI6e319XQ==\n"} 151</script>
vendor: 1 bytes, line 151
151
152<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/9d6f4550aad572e9f70abb70ae5a6552482cf617ea5e4d5a32ed4ebbb5d60d54.js"></script>
vendor: 1 bytes, line 152
152
153<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/a810ec58aab67d16f8de1c4adf06fc7cc9f4477ec503b9cb1a998741bc692652.js"></script>
vendor: 1 bytes, line 153
153
154<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/8766542902afa60f4adda3c555c06025d2c27771ea85a6fc657a91cddbe5c59f.js"></script>
vendor: 1 bytes, line 154
154
155<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/35cd1f36a4a855bacbaa53900f8e17b376d4cab44c73812eef261aef6435163d.js"></script>
vendor: 1 bytes, line 155
155
156<script>window.CYBERBIZ.initializeSDK.initialize();</script>
vendor: 1 bytes, line 156
156
157<script src="//cdn-general.cybassets.com/frontend/shop/setAffliateCookie-3a2e378145f8a165.js"></script>
157 158 159 160 161 162 163 164 165<meta name="title" content="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é ï½èè¶è+åçç±½ã»ç¬è²é©ç¨ï½æ¯æ¯è»"> 166<meta property="og:title" content="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é ï½èè¶è+åçç±½ã»ç¬è²é©ç¨ï½æ¯æ¯è»"> 167<meta name="description" content="æ¯æ¯è»æ·¨æ 寶å¼å¼é ï¼çµåèè¶èèåç©ãå°å©åçç±½èåç²èè²å ¬è±ï¼å¹«å©æå¶æ³å°¿éç´°èãæ¹åæå°¿ä¸é ãæ¸è¼è èè² æãè»è³ªå¼é ç´æ¥é¤µé£ï¼é©åææ³å°¿ä¿å¥éæ±æä¸é«é½¡çç¬è²ã"> 168<meta property="og:description" content="æ¯æ¯è»æ·¨æ 寶å¼å¼é ï¼çµåèè¶èèåç©ãå°å©åçç±½èåç²èè²å ¬è±ï¼å¹«å©æå¶æ³å°¿éç´°èãæ¹åæå°¿ä¸é ãæ¸è¼è èè² æãè»è³ªå¼é ç´æ¥é¤µé£ï¼é©åææ³å°¿ä¿å¥éæ±æä¸é«é½¡çç¬è²ã"> 169<meta name="keywords" content="å¯µç©æ³å°¿ä¿å¥, è²çæ³å°¿é, èè¶è, æ³å°¿ä¿å¥å, è²çè¡å°¿æéº¼è¾¦, è²åªé »å°¿, ççæ³å°¿éææ, è²çå°¿è·¯çµç³é é², æ³å°¿éä¿å¥æ¨è¦, è²çè èä¿é¤, æ·¨æ 寶淨æ 寶, æ³å°¿ä¿å¥, èè¶è寵ç©, åçç±½èå, è²åªæ³å°¿, 寵ç©è èä¿å¥, å ¬è²æ³å°¿, é »å°¿è²åª, å¯µç©æ³å°¿éä¿å¥, æ¯æ¯è»"> 170<meta property="og:url" content="https://www.furrykelp.com/products/aquavitality"> 171<meta property="og:type" content="og:product">
172<script type="application/ld+json">{"@context":"https://schema.org/","@type":"Product","name":"æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å
¬è± 100% ç¡è 製æï½ç¬è²é©ç¨","image":"https://cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzBfZGExNTY3OWQ3OWY2Y2I5YjQ0MDIucG5nIl0sWyJwIiwidGh1bWIiLCI0ODB4NDgwIl1d.png?sha=520ed6b00b657f0b","description":"çµåèè¶èèåç©ãå°å©åçç±½èåç²èè²å
¬è±ï¼å¹«å©æå¶ç´°èéèæ³å°¿éãæ¹åæå°¿ä¸é ãæ¸è¼è
èè² æãè»è³ªå¼é ç´æ¥é¤µé£ï¼å°¤å
¶é©åææ³å°¿ä¿å¥éæ±æä¸é«é½¡çç¬è²ã","brand":"furrykelp æ¯æ¯è»","sku":"","offers":{"@type":"Offer","url":"https://www.furrykelp.com/products/aquavitality","priceCurrency":"TWD","price":"490.0","priceValidUntil":"","availability":"InStock"},"productId":59699979}</script>
172 173 174
174<script> 175 document.addEventListener("DOMContentLoaded", function() { 176 gtag('event', 'view_item', {"items":[{"id":72436717,"name":"æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨","price":490.0}],"send_to":["cyberbiz","dynamic_remarketing"]}); 177 }) 178 </script>
178 179 180 181
181<script> 182 document.addEventListener("DOMContentLoaded", function() { 183 try { 184 var productData = [{"id":null,"product_id":59699979,"variant_id":72436717,"sku":null,"name":"æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨","price":490.0,"compare_at_price":750.0,"currency":"TWD","inventory_quantity_status":"safety","category":"è èä¿å¥","categories":["è èä¿å¥,æ¯å©ä¿å¥,é¦é åå,å¯å é"],"properties":[],"list_name":""}]; 185 186 if (document.referrer.indexOf('collection') !== -1 || document.referrer.indexOf('products') !== -1) { 187 for (var i = 0; i < productData.length; i++) { 188 productData[i].list_name = sessionStorage.getItem("viewedCollection"); 189 } 190 } 191 192 window.CYBERBIZ.eventSDK.callEvent("viewItem", productData) 193 194 window.addEventListener("beforeunload", function(event) { 195 var collection = "ç¸éåå"; 196 sessionStorage.setItem("viewedCollection", collection); 197 }); 198 199 } catch (error) { 200 console.error('Exception catched in appMarketViewItemEvent') 201 } 202 }) 203 </script>
203 204 205
206<script src="//cdn-general.cybassets.com/frontend/shop/gallery-3a2e378145f8a165.js"></script>
206 207 208 <style id="color_settings"> 209 :root { 210 211 --button: #00a1a3; 212 213 214 215 --button_text: #FFFFFF; 216 217 218 219 --accent: #40c1ac; 220 221 222 223 --heading: #000000; 224 225 226 227 --text: #9A9EA2; 228 229 230 231 --price: #00a1a3; 232 233 234 235 --discount_price: #00a1a3; 236 237 238 239 --theme_bg: #ffffff; 240 241 242 243 --nav_logo_bg: #FFFFFF; 244 245 246 247 --nav_menu_bg: #FFFFFF; 248 249 250 251 --nav_menu_text: #3e4442; 252 253 254 255 --nav_menu_icon: #3e4442; 256 257 258 259 --footer_bg: #d5f3eb; 260 261 262 263 --footer_text: #3d4341; 264 265 266 267 --checkout_button: #3e4442; 268 269 270 271 --checkout_accent: #00a1a3; 272 273 274 275 --product_border: #00a1a3; 276 277 278 279 --tips_text: #0C5460; 280 281 282 283 284 285 } 286</style> 287 288 289 290 291 292 <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 74 bytes, lines 292-293
292 293 <script async src="https://www.googletagmanager.com/gtag/js?id=
293G-H2D877SR6K
vendor: 22 bytes, lines 293-294
293"></script> 294
294<script> 295 window.dataLayer = window.dataLayer || []; 296 function gtag(){dataLayer.push(arguments);} 297 gtag('js', new Date()); 298 gtag('config', 'G-H2D877SR6K', {"groups":"cyberbiz","custom_map":{"dimension1":"shop_id","dimension2":"customer_id","dimension3":"infinite_scroll","dimension4":"dim_affiliate"},"shop_id":33062,"dim_affiliate":null}); 299 gtag('config', 'UA-64017614-1', {"groups":"cyberbiz","custom_map":{"dimension1":"shop_id","dimension2":"customer_id","dimension3":"infinite_scroll","dimension4":"dim_affiliate"},"shop_id":33062,"dim_affiliate":null}); 300 gtag('config', 'AW-260-614-5886', {"groups":"dynamic_remarketing"});</script>
300<meta name="google-site-verification" content="v74LvTX4IY2xehjtfsgVQE3ou0HJ7C3A56z2D4t1bAE" /> 301
301<script> 302 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 303 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 304 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 305 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 306 307 ga('create', '', 'auto', {'name': 'cyberbiz'}); 308 ga('cyberbiz.require', 'displayfeatures'); 309 ga('cyberbiz.set', 'dimension1', '33062'); 310 ga('cyberbiz.require', 'ec'); 311 ga('cyberbiz.send', 'pageview'); 312 </script>
312 313 314
314<script>
vendor: 426 bytes, lines 314-321
314 315 !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod? 316 n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n; 317 n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; 318 t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, 319 document,'script','//connect.facebook.net/en_US/fbevents.js'); 320 321 fbq('init', '
3211816197358943543
vendor: 38 bytes, lines 321-322
321', {}, {'agent':'plcyberbiz'}); 322
322fbq('track', "PageView", '', { eventID: "PageView_4BA3D8E2404A67FE46BFA1C8DDAE85BA" }); 323 var facebook_pixel_id = '1816197358943543'</script>
323 324 325 </head> 326 327 <body style="display: flex; flex-direction: column;" class=""><!-- Google Tag Manager (noscript) -->
vendor: 74 bytes, lines 327-328
327 328 <noscript><iframe src="//www.googletagmanager.com/ns.html?id=
328GTM-TK6HW8PV
vendor: 105 bytes, lines 328-330
328" 329 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 330
330<!-- End Google Tag Manager (noscript) -->
vendor: 74 bytes, lines 330-332
330 331 <noscript><iframe 332 src="//www.googletagmanager.com/ns.html?id=
332GTM-TXD9LVJ
vendor: 117 bytes, lines 332-338
332" 333 height="0" 334 width="0" 335 style="display:none;visibility:hidden"> 336 </iframe></noscript> 337 338
338<!-- Navigation --> 339 <!-- cyb_snippet liquid_helper start -->
340<script> 341 function getDiscountPriceName() { 342 return "false" === "true" ? "" : ""; 343 } 344 345 function getDiscountPriceSuggestionName() { 346 return "false" === "true" ? "" : ""; 347 } 348 349 document.addEventListener('DOMContentLoaded', function() { 350 const languageHandle = Cookies.get("language"); 351 const defaultLanguage = {"handle":"zh-TW","currency_code":"TWD","title":"ç¹é«ä¸æ"}; 352 const languages = []; 353 const currency = window.shopScriptHelper.defaultCurrency; 354 const currencies = window.shopScriptHelper.currenciesInfo; 355 window.liquidHelper = { 356 shopInternational: false, 357 defaultLanguage: defaultLanguage, 358 language: languages.find(function(l) { 359 return l.handle === languageHandle; 360 }) || defaultLanguage, 361 shopMultipleCurrenciesCheckout: false, 362 shopMultipleCurrencies: false, 363 defaultCurrencyFormat: "NT${{amount_no_decimals}}", 364 defaultCurrency: currency, 365 getCurrency: function() { 366 const currencyValue = Cookies.get("currencyValue") || currency; 367 return currencies.find(function(c) { return c.code === currencyValue; } 368 )}, 369 getDefaultCurrency: function() { return currencies.find(function(c) { 370 return c.code === currency; 371 })}, 372 getAvailableCurrencies: function() { return currencies.map(c => c.code) },
373 getCurrencyFormatInfo: function(currency) { 374 const currencyInfo = currencies.find(c => c.code === currency) 375 return _.pick(currencyInfo, [ 376 'decimal_precision', 377 'symbol', 378 'money_format', 379 'unit', 380 'trailing_zeros', 381 'html_unit', 382 'code', 383 ]); 384 }, 385 cartQuantityLimit: (function() { 386 const limit = Number("0" || undefined); 387 return limit <= 0 || isNaN(limit) ? Number.POSITIVE_INFINITY : limit; 388 })(), 389 isFirstVariantSelected: false , 390 isImageColorsUsed: false , 391 isEmptyClickable: true , 392 hasAddBuyProduct: '' !== "" ? true : false, 393 hasPriceWithDiscountPlugin: 'false' ? true : false, 394 conversionBonus: 1, 395 hasLocalizedShopPriceFormat: true, 396 hasCustomerCartPlugin: true, 397 isCartEnabled: true, 398 cdnHost: '//cdn-general.cybassets.com', 399 hasShopCustomPasswordRulePlugin: false, 400 hasDisableProductQuantityValidation: false, 401 hasBreadcrumbReferrerEnabled: false, 402 }; 403 }); 404</script>
404 405 406<!-- cyb_snippet liquid_helper end --> 407
408<script src='//cdn-general.cybassets.com/frontend/shop/navbarSection-3a2e378145f8a165.js' type='text/javascript'></script>
408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425<style> 426 427 #navbar { 428 --navbar-pc-title-scale: 0.9; 429 --navbar-pc-body-scale: 1.0; 430 --navbar-mobile-title-scale: 0.9; 431 --navbar-mobile-body-scale: 1.0; 432 } 433 434 435 436 437 438</style> 439 440 441 <span id="navbar" class="drawer drawer--left font-size-setting-enabled"> 442 <header id="header" class="qk-w--100vw qk-pos--fixed qk-t--0 qk-l--0"> 443 444 445 446 <div id="announcement-bar"></div> 447 448 449 450 451 452 453 <div class="computer_nav row_nav qk-hidden--mobile "> 454 <div class="header_logo qk-bg--nav_logo_bg"> 455 <div class="qk-pos--rel"> 456 <div class="qk-text--center qk-display--flex"> 457 <!-- logo start --> 458 459 460 <nav class="logo qk-display--il_bk"> 461 <a href="/" class="qk-w--100"> 462 <img 463 src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4MDQ4MjgxXzEwMHgxMDDlrpjntrJMT0dPLnBuZy5wbmciXV0.png?sha=753d829eb2d61394" 464 class="qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--pc_logo qk-hidden--mobile" 465 style="width: auto; height: 52px;" 466 alt="" 467 height="52" 468 width="auto" 469 > 470 </a> 471 </nav> 472 473 <!-- logo end --> 474 475 <div class="header_nav qk-flex--1"> 476 <div class="qk-pos--relative center qk-pd_r--1 qk-w--100"> 477 <!-- main-nav start --> 478 <nav class="main_nav qk-display--init"></nav> 479 <!-- main-nav end --> 480 </div> 481 </div> 482 483 <!-- tool-nav start --> 484 485 <div style="display: flex; align-items: center; position: relative; top: -12px;"> 486 <!-- cyb_snippet tool_nav start --> 487 488 489 490 491 492 493<nav class="tool-nav qk-pos--rel qk-float--r qk-display--flex"> 494 <ul class="link_shelf_top qk-display--flex qk-flex--row qk-justify--end qk-align--center qk-pos--abs qk-r--0"> 495 496 497 <!-- member --> 498 499 <li class="customer_account qk-pos--rel qk-pd--05"> 500 <div class="dropdown qk-pos--static"> 501 <div class="qk-cursor--pointer" data-toggle="dropdown"> 502 <div data-icon-type="custom_icon_type_account"></div> 503 <span class="text"></span> 504 </div> 505 <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"> 506 <ul id="customer-logined-menu" style="display: none"> 507 <li> 508 <div class="qk-fs--body qk-text--heading"> 509 <p class="customer-name qk-whitespace-break-spaces"></p> 510 <p>æ¨å¥½ï¼</p> 511 </div> 512 </li> 513 </ul> 514 <ul id="customer-not-login-menu"> 515 <li class="button qk-text--center"> 516 <a href="/account/login" class="btn-login qk-btn qk-btn--lg qk-btn--primary qk-w--100">æå¡ç»å ¥</a> 517 </li> 518 <li class="button qk-text--center"> 519 <a href="/account/signup" class="btn-orders qk-btn qk-btn--lg qk-btn--secondary qk-w--100 qk-bg--transparent">è¨»åæ°æå¡</a> 520 </li> 521 </ul> 522 <span class="menu-bd qk-bd_t--default qk-bd--product_border"></span> 523 <ul class="member-menu qk-bd_t--default qk-bd--product_border"> 524 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 525 <a href="/account/index" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">æç帳æ¶</a> 526 </li> 527 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 528 <a href="/account/orders" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">
528è¨å®æ¥è©¢</a> 529 </li> 530 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 531 <a href="/account/coupons" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">å°å±¬åªæ å¸</a> 532 </li> 533 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 534 <a href="/account/tracking_items" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">æ¶èæ¸ å®</a> 535 </li> 536 <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"> 537 <a href="/account/logout" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">æå¡ç»åº</a> 538 </li> 539 </ul> 540 </div> 541 </div> 542 </li> 543 544 <!-- for money symbol --> 545 <div id="money-symbol" data-money-symbol="NT${{amount_no_decimals}}" hidden></div> 546 <!-- cart --> 547 548 <li class="cart qk-pos--rel qk-pd--05"> 549 <!--é»è ¦ççè³¼ç©è»é¸å®--> 550 <div class="dropdown qk-pos--static"> 551 <div data-toggle="dropdown" class="shopcart qk-cursor--pointer" > 552 <div data-icon-type="custom_icon_type_cart"></div> 553 <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> 554 <span class="global-cart-loading"></span> 555 </div> 556 <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"> 557 <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 default_scale"></div> 558 <p class="cart_empty qk-fs--body qk-text--heading qk-text--center">ç®åçè³¼ç©è»æ¯ç©ºçï¼</p> 559 <ul> 560 <li class="button qk-text--center"> 561 <a class="btn-checkout qk-btn qk-btn--lg qk-btn--primary qk-w--100" href="/cart" style="display: none">ç«å³è³¼è²·</a> 562 <a class="btn-tracking qk-btn qk-btn--lg qk-btn--secondary qk-w--100 qk-bg--transparent" href="/account/tracking_items">å徿¶èæ¸ å®</a> 563 </li> 564 </ul> 565 </div> 566 </div> 567 </li> 568 569 <!-- search --> 570 571 <li class="search qk-pos--rel qk-pd--05" id="search-icon"> 572 <div class="dropdown qk-pos--static"> 573 <div class="qk-cursor--pointer" data-toggle="dropdown"> 574 <div data-icon-type="custom_icon_type_search"></div> 575 </div> 576 <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"> 577 <div class="search-area qk-display--flex qk-flex--row qk-justify--start qk-align--center qk-vert--mid"> 578 <form action="/search" class="form-inline qk-search_form qk-display--flex qk-justfify--between qk-align--center qk-flex--1"> 579 <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="" /> 580 <button class="search-btn qk-btn qk-btn--lg qk-btn--primary qk-pd--0" type="submit">æå°</button> 581 </form> 582 </div> 583 </div> 584 </div> 585 </li> 586 587 <!-- express delivery --> 588 589 </ul> 590</nav> 591 592<!-- cyb_snippet tool_nav end --> 593 </div> 594 595 596 <!-- tool-nav end --> 597 </div> 598 </div> 599 </div> 600 </div> 601 602 <div class="qk-hidden--pc "> 603 <!-- mobile-nav start --> 604 <nav class="mobile-nav qk-bg--nav_logo_bg"> 605 <ul class="qk-display--flex qk-flex--row qk-justify--between qk-align--center qk-pd_x--05 qk-pd_y--0"> 606 <!-- menu --> 607 608 <li class="sidebar-menu-icon drawer-toggle qk-text--center qk-pd_x--05 qk-pd_y--0 qk-display--flex qk-align--center"> 609 <div data-icon-type="custom_icon_type_menu"></div> 610 </li> 611 612 <!-- logo --> 613
614 <li class="logo qk-pos--abs qk-center--x qk-pd_y--0"> 615 616 <a href="/" class="qk-display--il_flex qk-align--center qk-h--100 qk-hidden--phone"> 617 <img 618 src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4MDQ4MjgxXzEwMHgxMDDlrpjntrJMT0dPLnBuZy5wbmciXV0.png?sha=753d829eb2d61394" 619 height="25" 620 width="auto" 621 alt="" 622 > 623 </a> 624 625 626 <a href="/" class="qk-display--il_flex qk-align--center qk-h--100 qk-hidden--tablet"> 627 <img 628 src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4MDQ4MjgxXzEwMHgxMDDlrpjntrJMT0dPLnBuZy5wbmciXV0.png?sha=753d829eb2d61394" 629 height="25" 630 width="auto" 631 alt="" 632 > 633 </a> 634 635 </li> 636 637 638 <!-- search --> 639 640 <li class="search qk-text--center qk-pd_x--05 qk-pd_y--0 qk-display--flex qk-align--center qk-mg_l--auto"> 641 <div class="dropdown qk-pos--static qk-text--center"> 642 <div class="qk-cursor--pointer" data-toggle="dropdown"> 643 <div data-icon-type="custom_icon_type_search"></div> 644 </div> 645 <div 646 class="qk-dropdown_menu dropdown-menu qk-w--100vw qk-bg--theme_bg qk-bd--default qk-bd--product_border qk-mg--0" 647 role="menu" 648 > 649 <div class="search-area qk-display--flex qk-flex--row qk-justify--start qk-align--center qk-sp_bt--5 qk-w--100"> 650 <form action="/search" class="form-inline qk-display--flex qk-justfify--center qk-flex--1"> 651 <div class="form-inline qk-search_form qk-display--flex qk-justfify--center qk-align--center qk-flex--1"> 652 <input 653 class="form-control qk-flex--1 qk-inputbox qk-inputbox--lg qk-bg--transparent qk-text--heading" 654 type="search" 655 placeholder="æå°" 656 aria-label="Search" 657 name="q" 658 value="" 659 > 660 <button class="search-btn qk-btn qk-btn--lg qk-btn--primary qk-pd--0" type="submit"> 661 æå° 662 </button> 663 </div> 664 </form> 665 </div> 666 </div> 667 </div> 668 </li> 669 670 <!-- express delivery --> 671 672 673 </ul> 674 </nav> 675 <!-- mobile-nav end --> 676 </div> 677 678 </header> 679 680 <!-- Sidebar --> 681 <nav class="drawer-nav drawer-nav_width qk-bg--nav_menu_bg " role="navigation"> 682 <div class="drawer-menu"> 683 <!-- cyb_snippet side_menu start --> 684 685 686<ul id="index_sidebar_shelf_top" class="sidebar qk-pd_b--1"> 687 688 <li class="logo qk-pos--rel qk-bg--nav_logo_bg qk-pd_x--1 qk-pd_y--05"> 689 <a href="/" class="qk-pd--0"> 690 <img src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4MDQ4MjgxXzEwMHgxMDDlrpjntrJMT0dPLnBuZy5wbmciXV0.png?sha=753d829eb2d61394" height="32" width="auto" alt="logo"> 691 </a> 692 <button class="drawer-toggle qk-pos--abs qk-bg--transparent qk-pd--0"></button> 693 </li> 694 695 696 697 698 699 <!-- cyb_snippet components/side_menu/menu start --> 700 701 <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> 702 703 704 705 706 707 <li class="qk-pos--rel qk-pd--0"> 708 709 <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> 710 711 </li> 712 713 714 715 716 717 <!-- cyb_snippet components/side_menu/collection_all start --> 718 719 720 721 722 <li class="qk-pos--rel qk-pd--0"> 723 <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 "> 724 <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"> 725 åå 726 </a> 727 </button> 728 <ul id="index_sidebar_collection_all_shelf_second_2" class="collapse_collection_all_index_sidebar_2 collapse shelf_second qk-pd--0 show "> 729 730 731 732 <li class="qk-pos--rel qk-pd--0"> 733 <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 "> 734 <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"> 735 é¦é åå 736 </a> 737 </button> 738 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_1 collapse shelf_third q
738k-pd--0 show "> 739 740 <li class="qk-pos--rel qk-pd--0"> 741 <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/aquavitality">æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨</a> 742 </li> 743 744 <li class="qk-pos--rel qk-pd--0"> 745 <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/jointcare">å½ååª éç¯ä¿å¥å¼å¼é ï½ç´è¥¿èç¶ è²½è²ã»è¡èç³èºé¹½é ¸é¹½ã»Bio5 Ultra å¤èè¤åç©ã»ç¬è²é©ç¨</a> 746 </li> 747 748 <li class="qk-pos--rel qk-pd--0"> 749 <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/kelp-care-powder">ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè»</a> 750 </li> 751 752 <li class="qk-pos--rel qk-pd--0"> 753 <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/å¯µç©æµ®æ¯æ¢³-給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶spa">ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA</a> 754 </li> 755 756 <li class="qk-pos--rel qk-pd--0"> 757 <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/è±ç°é´¨æç¼è²çè«éç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·">ãU&YABY è±ç°é´¨ãæç¼è²çè«éç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·</a> 758 </li> 759 760 <li class="qk-pos--rel qk-pd--0"> 761 <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/uyaby-è±ç°é´¨uyaby-è±ç°é´¨æç¼è²çèè¹ç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·">ãU&YABY è±ç°é´¨ãæç¼è²çèè¹ç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·</a> 762 </li> 763 764 <li class="qk-pos--rel qk-pd--0"> 765 <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/uyaby-è±ç°é´¨ççç©å ·-æç¼è²å°é»é´¨-éæ°£ä¸ææ²»ç¶²å¸-坿©æ´èå¬ä¸è®å½¢-寵ç©ç©å ·æ¨è¦">ãU&YABY è±ç°é´¨ãççç©å · æç¼è²å°é»é´¨ éæ°£ä¸ææ²»ç¶²å¸ 坿©æ´èå¬ä¸è®å½¢ 寵ç©ç©å ·æ¨è¦</a> 766 </li> 767 768 </ul> 769 </li> 770 771 772 773 <li class="qk-pos--rel qk-pd--0"> 774 <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 "> 775 <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"> 776 æ¯å©ä¿å¥ 777 </a> 778 </button> 779 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_2 collapse shelf_third qk-pd--0 show "> 780 781 <li class="qk-pos--rel qk-pd--0"> 782 <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/kelp-care-powder">ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè»</a> 783 </li> 784 785 <li class="qk-pos--rel qk-pd--0"> 786 <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/jointcare">å½ååª éç¯ä¿å¥å¼å¼é ï½ç´è¥¿èç¶ è²½è²ã»è¡èç³èºé¹½é ¸é¹½ã»Bio5 Ultra å¤èè¤åç©ã»ç¬è²é©ç¨</a> 787 </li> 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/aquavitality">æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨</a> 791 </li> 792 793 </ul> 794 </li> 795 796 797 798 <li class="qk-pos--rel qk-pd--0"> 799 <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 "> 800 <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"> 801 æ¯å¯µç©å · 802 </a> 803 </button> 804 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_3 collapse shelf_third q
804k-pd--0 show "> 805 806 <li class="qk-pos--rel qk-pd--0"> 807 <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/uyaby-è±ç°é´¨uyaby-è±ç°é´¨æç¼è²çèè¹ç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·">ãU&YABY è±ç°é´¨ãæç¼è²çèè¹ç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·</a> 808 </li> 809 810 <li class="qk-pos--rel qk-pd--0"> 811 <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/è±ç°é´¨æç¼è²çè«éç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·">ãU&YABY è±ç°é´¨ãæç¼è²çè«éç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·</a> 812 </li> 813 814 <li class="qk-pos--rel qk-pd--0"> 815 <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/uyaby-è±ç°é´¨ççç©å ·-æç¼è²å°é»é´¨-éæ°£ä¸ææ²»ç¶²å¸-坿©æ´èå¬ä¸è®å½¢-寵ç©ç©å ·æ¨è¦">ãU&YABY è±ç°é´¨ãççç©å · æç¼è²å°é»é´¨ éæ°£ä¸ææ²»ç¶²å¸ 坿©æ´èå¬ä¸è®å½¢ 寵ç©ç©å ·æ¨è¦</a> 816 </li> 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/å¯µç©æµ®æ¯æ¢³-給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶spa">ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA</a> 820 </li> 821 822 </ul> 823 </li> 824 825 826 827 <li class="qk-pos--rel qk-pd--0"> 828 <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 "> 829 <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"> 830 å¨å¹´æ ¶éæåé¥ 831 </a> 832 </button> 833 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_4 collapse shelf_third qk-pd--0 show "> 834 835 </ul> 836 </li> 837 838 839 840 <li class="qk-pos--rel qk-pd--0"> 841 <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 "> 842 <a href="/collections/selected" class="qk-fw--500 collection_all_link qk-display--il_bk qk-text--left qk-fs--body qk-text--nav_menu_text"> 843 æ¯æ¯è»å´é¸å¥½ç© 844 </a> 845 </button> 846 <ul class="qk-bd--nav_menu_text collapse_collection_all_index_sidebar_2_5 collapse shelf_third qk-pd--0 show "> 847 848 <li class="qk-pos--rel qk-pd--0"> 849 <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/floor-cleaner-1000ml">ãæ¯æ¯è»å´é¸å¥½ç©ãä¸åªé¤è 寵ç©å°ç¨å± å®¶å°æ¿æ¸ æ½æ¶² 1000mlã»ç«ç°è±é¦ï¼ç¬è²å®¶åºé©ç¨ï¼</a> 850 </li> 851 852 <li class="qk-pos--rel qk-pd--0"> 853 <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/tear-stain-cleaner">ãæ¯æ¯è»å´é¸å¥½ç©ãä¸åªé¤è å¯µç©æ·çæ¸ æ½æ¶² 100ml (ç¬è²éç¨)</a> 854 </li> 855 856 <li class="qk-pos--rel qk-pd--0"> 857 <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/odor-eliminator-spray-300ml">ãæ¯æ¯è»å´é¸å¥½ç©ãä¸åªé¤è 寵ç©ç¬ææèé¤èå´é§ 300mlï¼ç¬è²éç¨ï¼</a> 858 </li> 859 860 </ul> 861 </li> 862 863 </ul> 864 </li> 865 866 867<!-- cyb_snippet components/side_menu/collection_all end --> 868 869 870 871 872 873 <li class="qk-pos--rel qk-pd--0"> 874 875 <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> 876 877 </li> 878 879 880 881 882 883 <li class="qk-pos--rel qk-pd--0"> 884 885 <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> 886 887 </li> 888 889 890 891 892 893 <li class="qk-pos--rel qk-pd--0"> 894 895 <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/æ¯åéç®±-stories">æ¯å©ç¸åª½æéº¼èªª</a> 896 897 </li> 898 899 900 901 902 903 <li class="qk-pos--rel qk-pd--0"> 904 905 <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="/contact">客æä¸å¿</a> 906 907 </li> 908 909 910 911 912 913 <li class="qk-pos--rel qk-pd--0"> 914 915 <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="https://lin.ee/uJUthbh"><a href="https://lin.ee/1l7octV">
915<img src="https://scdn.line-apps.com/n/line_add_friends/btn/zh-Hant.png" alt="å å ¥å¥½å" height="36" border="0"></a></a> 916 917 </li> 918 919 920 921 922 923 <li class="qk-pos--rel qk-pd--0"> 924 925 <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/常è¦åé¡-faq">常è¦åé¡ FAQ</a> 926 927 </li> 928 929 930
931<script> 932 $('button a').on('click', function(e) {e.stopPropagation()}); 933</script>
933 934 935<!-- cyb_snippet components/side_menu/menu end --> 936 937 938 939 940 <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> 941 <li class="qk-pos--rel qk-pd--0"> 942 <div class="customer-logined-menu qk-display--il_bk qk-w--100 qk-text--left" style="display: none"> 943 <a href="/account/index" class="qk-text--nav_menu_text qk-fw--bold qk-fs--body">æç帳æ¶</a> 944 </div> 945 </li> 946 <li class="qk-pos--rel qk-pd--0"> 947 <div class="customer-logined-menu qk-display--il_bk qk-w--100 qk-text--left" style="display: none"> 948 <a href="/account/orders" class="qk-text--nav_menu_text qk-fw--bold qk-fs--body">è¨å®æ¥è©¢</a> 949 </div> 950 </li> 951 <li class="qk-pos--rel qk-pd--0"> 952 <div class="customer-logined-menu qk-display--il_bk qk-w--100 qk-text--left" style="display: none"> 953 <a href="/account/logout" class="qk-text--nav_menu_text qk-fw--bold qk-fs--body">æå¡ç»åº</a> 954 </div> 955 </li> 956 <li class="qk-pos--rel qk-pd--0"> 957 <a href="/account/login"> 958 <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 "> 959 <span class="qk-text--nav_menu_bg qk-fw--500 qk-fs--body"> 960 æå¡ç»å ¥ 961 </span> 962 </div> 963 </a> 964 </li> 965 <li class="qk-pos--rel qk-pd--0"> 966 <a href="/account/signup"> 967 <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"> 968 <span class="qk-text--nav_menu_text qk-fs--body qk-fw--500"> 969 è¨»åæ°æå¡ 970 </span> 971 </div> 972 </a> 973 </li> 974 975 976 977 978 979</ul> 980 981<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/sidebar-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 982
983<script> 984 $(document).ready(function(){ 985 // å´éé¸å® 986 if ($('.drawer').length){ 987 $('.drawer').drawer(); 988 $('.bt-toggle').click(function(){ 989 setTimeout(function(){ 990 $('.drawer')[0].iScroll.refresh() 991 },500) 992 }) 993 } 994 }); 995</script>
995 996 997 998<!-- cyb_snippet side_menu end --> 999 1000 </div> 1001 </nav> 1002 <!-- Bottombar --> 1003 1004 1005 </span> 1006 1007<div id="index-popular-tags"></div> 1008 1009<style id="timer_color"> 1010 :root { 1011 1012 --timer_text: #c39d6f; 1013 1014 1015 1016 --timer_bg: #2b2b6e; 1017 1018 } 1019</style> 1020
1021<script> 1022 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":"åé¡å
1022
§å®¹","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天å
è²»éè³
1022æï¼å«ä¾åæ¥ï¼ãéæè²¨æè«ä¿æåå
è£ååç宿´ï¼å
å«è³¼è²·ååï¼éä»¶ï¼è´åçï¼ã\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":"è¬è¬æ¨çå¯
1022¶è²´æè¦","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":"éµéåè"} 1023 $(document).ready(function(){ 1024 if(window.location.pathname != '' && window.location.pathname != '/' ){ 1025 document.getElementById('index-popular-tags').style.display = 'none' 1026 } 1027 // åæ¸è¨æ 1028 1029 1030 function adjustContentTop() { 1031 1032 const isNavbarTransparent = false; 1033 let headerHeight = $("#header").outerHeight(); 1034 if (isNavbarTransparent && $('#template').width() >= 992) { 1035 headerHeight -= $('.computer_nav').height(); 1036 } 1037 const floatFilterHeight = $('#float-filter').innerHeight() || 0; 1038 $("body").css({ 1039 "padding-top": (headerHeight - floatFilterHeight) + "px", 1040 }); 1041 } 1042 1043 window.adjustContentTop = adjustContentTop; 1044 1045 // navbarè¨å®éæ 1046 1047 1048 // Call it first once DOM is ready to prevent CLS 1049 adjustContentTop(); 1050 1051 // å»¶é²åå§åï¼çå¾ app banner åå§å宿 1052 $(window).on("resize", adjustContentTop); 1053 1054 // ä½¿ç¨ setTimeout ç¢ºä¿ banner çæ å·²ç¶ç¢ºå® 1055 $(window).on("load", function() { 1056 setTimeout(function() { 1057 adjustContentTop(); 1058 }, 200); // 給 banner è¶³å¤ æéåå§å 1059 }); 1060 1061 $('img.header_banner').on('load', adjustContentTop); 1062 1063 window.renderNavbarSection('.main_nav', { 1064 navbarCollections: [{"title":"é¦é åå","url":"/collections/frontpage","products":[{"title":"æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨","url":"/products/aquavitality"},{"title":"å½ååª éç¯ä¿å¥å¼å¼é ï½ç´è¥¿èç¶ è²½è²ã»è¡èç³èºé¹½é ¸é¹½ã»Bio5 Ultra å¤èè¤åç©ã»ç¬è²é©ç¨","url":"/products/jointcare"},{"title":"ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè»","url":"/products/kelp-care-powder"},{"title":"ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA","url":"/products/å¯µç©æµ®æ¯æ¢³-給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶spa"},{"title":"ãU\u0026YABY è±ç°é´¨ãæç¼è²çè«éç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·","url":"/products/è±ç°é´¨æç¼è²çè«éç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·"},{"title":"ãU\u0026YABY è±ç°é´¨ãæç¼è²çèè¹ç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·","url":"/products/uyaby-è±ç°é´¨uyaby-è±ç°é´¨æç¼è²çèè¹ç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·"},{"title":"ãU\u0026YABY è±ç°é´¨ãççç©å · æç¼è²å°é»é´¨ éæ°£ä¸ææ²»ç¶²å¸ 坿©æ´èå¬ä¸è®å½¢ 寵ç©ç©å ·æ¨è¦","url":"/products/uyaby-è±ç°é´¨ççç©å ·-æç¼è²å°é»é´¨-éæ°£ä¸ææ²»ç¶²å¸-坿©æ´èå¬ä¸è®å½¢-寵ç©ç©å ·æ¨è¦"}]},{"title":"æ¯å©ä¿å¥","url":"/collections/強奿¯å©å","products":[{"title":"ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè»","url":"/products/kelp-care-powder"},{"title":"å½ååª éç¯ä¿å¥å¼å¼é ï½ç´è¥¿èç¶ è²½è²ã»è¡èç³èºé¹½é ¸é¹½ã»Bio5 Ultra å¤èè¤åç©ã»ç¬è²é©ç¨","url":"/products/jointcare"},{"title":"æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨","url":"/products/aquavitality"}]},{"title":"æ¯å¯µç©å ·","url":"/collections/æ¯å¯µç©å ·","products":[{"title":"ãU\u0026YABY è±ç°é´¨ãæç¼è²çèè¹ç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·","url":"/products/uyaby-è±ç°é´¨uyaby-è±ç°é´¨æç¼è²çèè¹ç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·"},{"title":"ãU\u0026YABY è±ç°é´¨ãæç¼è²çè«éç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·","url":"/products/è±ç°é´¨æç¼è²çè«éç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·"},{"title":"ãU\u0026YABY è±ç°é´¨ãççç©å · æç¼è²å°é»é´¨ éæ°£ä¸ææ²»ç¶²å¸ 坿©æ´èå¬ä¸è®å½¢ 寵ç©ç©å ·æ¨è¦","url":"/products/uyaby-è±ç°é´¨ççç©å ·-æç¼è²å°é»é´¨-éæ°£ä¸ææ²»ç¶²å¸-坿©æ´èå¬ä¸è®å½¢-寵ç©ç©å ·æ¨è¦"},{"title":"ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA","url":"/products/å¯µç©æµ®æ¯æ¢³-給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶spa"}]},{"title":"å¨å¹´æ ¶éæåé¥","url":"/collections/å¨å¹´æ ¶éæåé¥","products":[]},{"title":"æ¯æ¯è»å´é¸å¥½ç©","url":"/collections/selected","products":[{"title":"ãæ¯æ¯è»å´é¸å¥½ç©ãä¸åªé¤è 寵ç©å°ç¨å± å®¶å°æ¿æ¸ æ½æ¶² 1000mlã»ç«ç°è±é¦ï¼ç¬è²å®¶åºé©ç¨ï¼","url":"/products/floor-cleaner-1000ml"},{"title":"ãæ¯æ¯è»å´é¸å¥½ç©ãä¸åªé¤è å¯µç©æ·çæ¸ æ½æ¶² 100ml (ç¬è²éç¨)","url":"/products/tear-stain-cleaner"},{"title":"ãæ¯æ¯è»å´é¸å¥½ç©ãä¸åªé¤è 寵ç©ç¬ææèé¤èå´é§ 300mlï¼ç¬è²éç¨ï¼","url":"/products/odor-eliminator-spray-300ml"}]}], 1065 navbarItems: [{"id":1671289,"title":"é¦é ","url":"/","item_type":"frontpage","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1671290,"title":"åå ","url":"/collections/all","item_type":"collections_all","subtitle":null,"icon_image_url":null,"menuItems":null}
1065,{"id":1671292,"title":"åçæ äº ","url":"/pages/about-us","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1681766,"title":"æ¯å©ä¿å¥è³è¨","url":"/blogs/news","item_type":"blog","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1687890,"title":"æ¯å©ç¸åª½æéº¼èªª","url":"/blogs/æ¯åéç®±-stories","item_type":"blog","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1671293,"title":"客æä¸å¿","url":"/contact","item_type":"contact","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1698902,"title":"\u003ca href=\"https://lin.ee/1l7octV\"\u003e\u003cimg src=\"https://scdn.line-apps.com/n/line_add_friends/btn/zh-Hant.png\" alt=\"å å ¥å¥½å\" height=\"36\" border=\"0\"\u003e\u003c/a\u003e","url":"https://lin.ee/uJUthbh","item_type":"http","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":2052510,"title":"常è¦åé¡ FAQ","url":"/pages/常è¦åé¡-faq","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null}], 1066 settings: { 1067 menuDisplayStyle: "three_dimension_menu", 1068 pcLogoImgUrl: "//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4MDQ4MjgxXzEwMHgxMDDlrpjntrJMT0dPLnBuZy5wbmciXV0.png?sha=753d829eb2d61394", 1069 mobileLogoImgUrl: "//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzc4MDQ4MjgxXzEwMHgxMDDlrpjntrJMT0dPLnBuZy5wbmciXV0.png?sha=753d829eb2d61394", 1070 navbarDisplayStyle: "rowCenterNav", 1071 } 1072 } 1073 ); 1074 1075 1076 // for link menu 1077 const linkMenuElement = document.querySelector('.link-nav'); 1078 const data = [] 1079 data.forEach((item) => { 1080 const wrapper = document.createElement('a'); 1081 const link = document.createElement('ul'); 1082 1083 wrapper.href = item.url; 1084 link.textContent = item.title; 1085 link.classList.add('link-item'); 1086 1087 wrapper.appendChild(link); 1088 linkMenuElement.appendChild(wrapper); 1089 }); 1090 1091 // for safe-area space on iOS devices 1092 const userAgent = navigator.userAgent; 1093 const isIOS = /iPad|iPhone|iPod/.test(userAgent) && !window.MSStream; 1094 const isLiff = /Line\/[\d.]+/i.test(userAgent); 1095 const $mobileBottomBar = $('#mobile-bottom-bar'); 1096 1097 if ($mobileBottomBar.length && isIOS && isLiff) { 1098 $mobileBottomBar.addClass('is-ios-liff'); 1099 } 1100 }); 1101 document.addEventListener('DOMContentLoaded', function() { 1102 window.getCartAmount = function() { 1103 return parseInt($('.global-cart-count').html()); 1104 }; 1105 }); 1106</script>
1106 1107
1108<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/navbar-3a2e378145f8a165.js' type='text/javascript'></script>
vendor: 1 bytes, line 1108
1108
1109<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/currencies-3a2e378145f8a165.js' type='text/javascript'></script>
1109 1110<!-- cyb_snippet i18n_modal start --> 1111 1112 1113<!-- cyb_snippet i18n_modal end --> 1114<!-- cyb_snippet _load_fonts start -->
1115<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/load_fonts-3a2e378145f8a165.js' type='text/javascript'></script>
vendor: 1 bytes, line 1115
1115
1116<script> 1117 document.addEventListener('DOMContentLoaded', function() { 1118 window.loadFontSetting("{\"ja\":{\"value\":\"Noto Sans JP\"},\"zh-TW\":{\"value\":\"Montserrat\"},\"en\":{\"value\":\"Noto Sans TC\"},\"zh-CN\":{\"value\":\"Noto Sans TC\"}}") 1119 }) 1120</script>
1120 1121 1122<!-- cyb_snippet _load_fonts end --> 1123<!-- cyb_snippet _custom_icon start -->
1124<script src='//cdn-general.cybassets.com/frontend/shop/navIcon-3a2e378145f8a165.js' type='text/javascript'></script>
1124 1125
1126<script> 1127 (function() { 1128 const iconUrlMap = new Map([ 1129 ['custom_icon_type_home', null], 1130 ['custom_icon_type_tracking_items', null], 1131 ['custom_icon_type_account', null], 1132 ['custom_icon_type_cart', null], 1133 ['custom_icon_type_search', null], 1134 ['custom_icon_type_menu', null] 1135 ]); 1136 const elements = document.querySelectorAll('[data-icon-type]'); 1137 elements.forEach((element, index) => { 1138 const iconAttributes = element.getAttribute('data-icon-type'); 1139 1140 const uniqueId = `icon_${iconAttributes}_${index}_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`; 1141 element.id = uniqueId; 1142 window.renderNavCustomIcon(`#${uniqueId}`, { 1143 navIconStyle: "icon_type_default", 1144 customIconUrl: iconUrlMap.get(iconAttributes) || '', 1145 iconAttributes: iconAttributes, 1146 currentTemplate: "product", 1147 }); 1148 }); 1149 })(); 1150</script>
1150 1151 1152<!-- cyb_snippet _custom_icon end --> 1153 1154 1155 1156 1157 1158
1158<script src='//cdn-general.cybassets.com/frontend/shop/announcementBar-3a2e378145f8a165.js' type='text/javascript'></script>
1158 1159 1160 1161 1162 1163 1164
1164<script> 1165 $(document).ready(function() { 1166 window.renderAnnouncementBar('#announcement-bar', { 1167 sectionId: "announcement_bar", 1168 isIndex: false, 1169 }); 1170 }); 1171 </script>
1171 1172 1173 1174 1175 1176 1177 1178 <!-- template --> 1179 <div id="template" style="flex:1 0 auto; background-color: var(--theme_bg);"> 1180 <!-- cyb_snippet breadcrumb start --> 1181 1182<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/breadcrumb-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 1183 1184 1185<div id="site_path" class="qk-bd_b--default qk-bd--product_border"> 1186 <!-- mobile: toggle button (hidden on PC) --> 1187 <div class="qk-container qk-hidden--pc"> 1188 <div class="breadcrumb qk-bg--theme_bg qk-pd_x--0 qk-mg--0 qk-fs--breadcrumb"> 1189 <button 1190 class="bt-toggle qk-bg--theme_bg qk-pd_x--0 qk-w--100 qk-text--left qk-bd--none qk-pos--rel collapsed" 1191 data-toggle="collapse" 1192 data-target=".breadcrumb-content" 1193 > 1194 <a href="/" class="qk-text--text"> 1195 <i class="fas fa-home"></i> 1196 </a> 1197 </button> 1198 </div> 1199 </div> 1200 <!-- breadcrumb nav: single DOM, PC always visible, mobile as collapse dropdown --> 1201 <div class="breadcrumb-content qk-bg--theme_bg collapse"> 1202 <div class="qk-container"> 1203 <!-- cyb_snippet breadcrumb_nav start --> 1204<!-- 主é¡çå麵å å± --> 1205<nav aria-label="breadcrumb"> 1206 <ol 1207 class="breadcrumb qk-bg--theme_bg qk-pd_x--0 qk-mg--0 qk-fs--breadcrumb" 1208 itemscope 1209 itemtype="http://schema.org/BreadcrumbList" 1210 > 1211 1212 <li 1213 class="breadcrumb-item 1214 1215 " 1216 itemprop="itemListElement" 1217 itemscope itemtype="http://schema.org/ListItem"> 1218 <!-- home --> 1219 1220 <a href="/" class="qk-text--text" itemprop="item"> 1221 <i class="fas fa-home"></i> 1222 <span class="qk-display--none" itemprop="name">é¦é </span> 1223 </a> 1224 <!-- account --> 1225 1226 <meta itemprop="position" content="1"/> 1227 </li> 1228 1229 <li 1230 class="breadcrumb-item 1231 1232 " 1233 itemprop="itemListElement" 1234 itemscope itemtype="http://schema.org/ListItem"> 1235 <!-- home --> 1236 1237 1238 <a href="#" class="qk-text--accent" itemprop="item" style="cursor: initial; text-decoration: none;"> 1239 <span itemprop="name">è èä¿å¥</span> 1240 1241 , 1242 1243 </a> 1244 1245 1246 <span class="qk-text--text" data-breadcrumb-links> 1247 <a href='/collections/強奿¯å©å' class='qk-text--text' itemprop='item'><span itemprop='name'>æ¯å©ä¿å¥</span></a>, <a href='/collections/frontpage' class='qk-text--text' itemprop='item'><span itemprop='name'>é¦é åå</span></a> 1248 </span> 1249 1250 <!-- product --> 1251 1252 <meta itemprop="position" content="2"/> 1253 </li> 1254 1255 <li 1256 class="breadcrumb-item 1257 1258 active " 1259 itemprop="itemListElement" 1260 itemscope itemtype="http://schema.org/ListItem"> 1261 <!-- home --> 1262 1263 <a href="/products/aquavitality" class="qk-text--text" itemprop="item"> 1264 <span itemprop="name">æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨</span> 1265 </a> 1266 <!-- search --> 1267 1268 <meta itemprop="position" content="3"/> 1269 </li> 1270 1271 </ol> 1272</nav>
1273<script> 1274 $(document).ready(function () { 1275 if (!window.liquidHelper || !window.liquidHelper.hasBreadcrumbReferrerEnabled) return; 1276 1277 var $collections = $('[data-breadcrumb-links]'); 1278 if (!$collections.length) return; 1279 1280 var refMatch = document.referrer.match(/\/collections\/([^/?#]+)/); 1281 if (!refMatch || refMatch[1] === 'all') return; 1282 1283 var referrerHandle = decodeURIComponent(refMatch[1]); 1284 1285 function getCollectionHandle(url) { 1286 if (!url) return null; 1287 try { 1288 var pathname = new URL(url, location.origin).pathname; 1289 var parts = pathname.split('/'); 1290 var idx = parts.indexOf('collections'); 1291 if (idx === -1 || !parts[idx + 1]) return null; 1292 return decodeURIComponent(parts[idx + 1]); 1293 } catch (e) { 1294 return null; 1295 } 1296 } 1297 1298 var $link = $collections.find('a').filter(function () { 1299 return getCollectionHandle(this.href) === referrerHandle; 1300 }); 1301 1302 if ($link.length) { 1303 $collections.siblings('a.qk-text--accent[href="#"]').remove(); 1304 $collections.empty().append($link); 1305 } 1306 }); 1307</script>
1307 1308 1309<!-- cyb_snippet breadcrumb_nav end --> 1310 </div> 1311 </div> 1312</div> 1313 1314 1315<!-- cyb_snippet breadcrumb end --> 1316 1317<div id="img"></div> 1318 1319 1320 1321 1322
1323<script> 1324 var gallery_img = undefined; 1325 document.addEventListener("DOMContentLoaded", function(){ 1326 gallery_img = renderGallery( 1327 '#img', 1328 { 1329 urls: ["//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzBfZGExNTY3OWQ3OWY2Y2I5YjQ0MDIucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=705eee093d078269","//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzFfZDY3YWRhYzM0MjY4YTdhZjhkYWUucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=d2699ef75719175b","//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3NTkyMTY4OTJfZTkyMTJkYzNhNTgyMzYzMmRhMjUucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=48bcfaf58aede485","//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3NTkyMTQyMTVfZGQ0MDBlOThmNDhmY2I4N2ZmODAucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=348c12c7cd4f42c2","//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTg5NzVfMTQyM2M4ZGI0MGI0MTQwNTZiM2QucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=46b0903187e3b823","//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3ODQ4ODIwMjhfZjFlMzQ0MTg1MzQ0ODg3YzRkYmUucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=ec2715e42ca27196","//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3ODQ4ODIwMjhfNzhkZWVlYTYyM2RjOTRmMjcyZDgucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=67f344fd58417373","//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3ODQ4ODIwMjhfZjMwZWM2YzYxMTQ3YjE0ZjQ1Y2QucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=5ab884d96f8fd86a"], 1330 onSwiperGalleryChange: function (payload) { 1331 var eventPayload = Object.assign({ galleryName: "img" }, payload); 1332 $(document).trigger('swiper-gallery-change', [eventPayload]); 1333 }, 1334 }, 1335 ); 1336 }); 1337</script>
1337 1338 1339<div id="product" class="product"> 1340 <div class="qk-container"> 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350<div id="product_info" class="product_info qk-display--grid" data-purchase-eligibility='{"required":false,"eligible":true,"status":"eligible"}' data-hide-price="false" data-sales-mode-purchasable="true"> 1351 <!-- product image start --> 1352 <div id="variant_photos" class="variant_photos"> 1353 1354 1355 1356 1357 <variant-photos-block 1358 :product-photos-json="'[{\'id\':36736794,\'imageUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzBfZGExNTY3OWQ3OWY2Y2I5YjQ0MDIucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=2759fe676ba53b4b\',\'imageMaxUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzBfZGExNTY3OWQ3OWY2Y2I5YjQ0MDIucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=705eee093d078269\'}, {\'id\':36736795,\'imageUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzFfZDY3YWRhYzM0MjY4YTdhZjhkYWUucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=5ab4601ce4ddd132\',\'imageMaxUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzFfZDY3YWRhYzM0MjY4YTdhZjhkYWUucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=d2699ef75719175b\'}, {\'id\':30710691,\'imageUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3NTkyMTY4OTJfZTkyMTJkYzNhNTgyMzYzMmRhMjUucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=91a643f3f899789c\',\'imageMaxUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3NTkyMTY4OTJfZTkyMTJkYzNhNTgyMzYzMmRhMjUucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=48bcfaf58aede485\'}, {\'id\':30709624,\'imageUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3NTkyMTQyMTVfZGQ0MDBlOThmNDhmY2I4N2ZmODAucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=6d9c2e30168c021b\',\'imageMaxUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3NTkyMTQyMTVfZGQ0MDBlOThmNDhmY2I4N2ZmODAucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=348c12c7cd4f42c2\'}, {\'id\':36737235,\'imageUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTg5NzVfMTQyM2M4ZGI0MGI0MTQwNTZiM2QucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=591133d1c0cb827c\',\'imageMaxUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTg5NzVfMTQyM2M4ZGI0MGI0MTQwNTZiM2QucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=46b0903187e3b823\'}, {\'id\':37980049,\'imageUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3ODQ4ODIwMjhfZjFlMzQ0MTg1MzQ0ODg3YzRkYmUucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=bf127af6602ffa5b\',\'imageMaxUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3ODQ4ODIwMjhfZjFlMzQ0MTg1MzQ0ODg3YzRkYmUucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=ec2715e42ca27196\'}, {\'id\':37980050,\'imageUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3ODQ4ODIwMjhfNzhkZWVlYTYyM2RjOTRmMjcyZDgucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=2dad9774303e9dcf\',\'imageMaxUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3ODQ4ODIwMjhfNzhkZWVlYTYyM2RjOTRmMjcyZDgucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=67f344fd58417373\'}, {\'id\':37980051,\'imageUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3ODQ4ODIwMjhfZjMwZWM2YzYxMTQ3YjE0ZjQ1Y2QucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=705c480f65aeec03\',\'imageMaxUrl\':\'//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3ODQ4ODIwMjhfZjMwZWM2YzYxMTQ3YjE0ZjQ1Y2QucG5nIl0sWyJwIiwidGh1bWIiLCIyMDQ4eDIwNDgiXV0.png?sha=5ab884d96f8fd86a\'}]'" 1359 :display-product-images-color=false 1360 :product-id="59699979" 1361 product-title="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" 1362 1363 :product-video={"id":17462,"url":"//v.cyberbiz.tw/s/33062/a388ec55735f3bc0749487fe35752c30.mp4?t=1
1363763011739"} 1364 video-display-location="before" 1365 1366 /> 1367 </div> 1368 <!-- product image end --> 1369 <!-- product content start --> 1370 <div id="product_content" class="product_content qk-display--flex" data-tracking-variant-ids="null"> 1371 1372 <!-- æ¨é¡ --> 1373 <div class="product_title"> 1374 <h1 class="qk-text--heading qk-fs--hd1 qk-fw--bold qk-mg--0">æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨</h1> 1375 </div> 1376 1377 <!-- ç°¡è¿° --> 1378 1379 <div class="product_brief qk-text--text qk-fs--body"> 1380 çµåèè¶èèåç©ãå°å©åçç±½èåç²èè²å ¬è±ï¼å¹«å©æå¶ç´°èéèæ³å°¿éãæ¹åæå°¿ä¸é ãæ¸è¼è èè² æãè»è³ªå¼é ç´æ¥é¤µé£ï¼å°¤å ¶é©åææ³å°¿ä¿å¥éæ±æä¸é«é½¡çç¬è²ã 1381 </div> 1382 1383 <!-- å» å,æ¨èª --> 1384 <div class="product_vendor_slogan qk-display--il_bk qk-align--center"> 1385 1386 <span class="product_vendor qk-text--heading qk-fs--breadcrumb qk-text--center qk-display--il_bk qk-pd_x--05 qk-mg_r--05 qk-bd_x--default qk-bd--product_border">æ¯æ¯è»</span> 1387 1388 1389 <span class="product_slogan qk-text--heading qk-fs--body">è®æ¥å¸¸ç §é¡§ï¼å¾æºé å®è·æ³å°¿å¥åº·ã»è²åªççé½é©ç¨</span> 1390 1391 </div> 1392 <!-- ååå®å¹ --> 1393 1394 1395 1396 <div 1397 class="product_price" 1398 id="price_title" 1399 data-discount-price-name="" 1400 data-discount-price-suggestion-name=""> 1401 <!-- 广 ¼title --> 1402 1403 1404 1405 1406 <!-- åå广 ¼ --> 1407 <div class="qk-display--il_bk"> 1408 <span class="qk-text--discount_price price qk-fs--hd1 qk-fw--bold qk-display--il_bk qk-vert--mid"><span class="money_tag" data-currency-from="TWD" data-amount="490.0">NT$490</span></span> 1409 </div> 1410 <del class="qk-text--text qk-fs--body qk-pd_l--05 qk-display--il_bk qk-vert--mid"><span class="money_tag" data-currency-from="TWD" data-amount="750.0">NT$750</span></del> 1411 1412 <!--æå¡å¯è¦å¹--> 1413 1414 </div> 1415 1416 <!-- ååsku --> 1417 1418 <div class="product_sku qk-text--heading qk-fs--body"> 1419 <span>ååç·¨è: 1420 </span> 1421 <span class="val"></span> 1422 </div> 1423 1424 <!-- ä¾è²¨çæ³ --> 1425 1426 <div class="product_inventory_policy qk-text--heading qk-fs--body"> 1427 <span>ä¾è²¨çæ³: 1428 </span> 1429 <span class="val">å°æåº«å</span> 1430 </div> 1431 1432 1433 <!-- å忬¾å¼ --> 1434 <div id="variant_options" class="variant_options"> 1435 <variant-options-block 1436 :product-api-url="'/products/aquavitality'" 1437 :sku="sku" 1438 :auto-select-variant-by-sku="false" 1439 :hide-other-variants-by-sku="false" 1440 :hide-single-variant-options="false" 1441 :sales-mode-purchasable="true" 1442 default-price="NT$490" 1443 default-compare-price="NT$750" 1444 :default-discounted="true" 1445 @set-choose="getSelectedDatas" 1446 @get-option-image="getCurrentImage"></variant-options-block> 1447 </div> 1448 1449 <div id="product-tags"></div> 1450 1451 <!-- product discounts_list start --> 1452 <div class="product_discounts_list force-show-scrollbar hide qk-bd--default qk-bd--product_border qk-pd--1 qk-of_y--auto qk-of_x--hidden "> 1453 <div class="list_block custom-scrollbar qk-of_x--hidden"> 1454 <p class="qk-text--heading qk-fs--body qk-mg_b--05">æ¤åååèçåªæ æ´»å</p> 1455 1456 1457 <div class="discount-list"> 1458 <span class="discount-label qk-fs--breadcrumb qk-bd--default qk-bd--accent qk-bg--white qk-display--il_bk qk-text--accent">宿å®é¡</span> 1459 <a class="discount-title qk-text--accent qk-fs--body" href="/sales/æ·¨æ 坶宿">æ·¨æ 寶æ³å°¿ä¿å¥å¼å¼é </a> 1460 </div> 1461 1462 1463 </div> 1464 </div> 1465 <!-- product discounts_list end --> 1466 1467 <!-- è¦æ ¼,æ¸é --> 1468 1469 <div class="product_variant_quantity"> 1470 <span class="product_quantity"> 1471 <div 1472 class="btn-group" 1473 role="group" 1474 aria-label="First group"> 1475 <button class="btn add-down qk-bd--product_border" type="button"></button> 1476 <input 1477 class="btn item-quantity qk-text--heading qk-bd--product_border" 1478 type="text" 1479 name="quantity" 1480 value="1" 1481 data-old-value="1"> 1482 <button class="btn add-up qk-bd--product_border" type="button"></button> 1483 </div> 1484 </span> 1485 </div> 1486 1487 <!-- 購買æé --> 1488 <div class="product_button qk-display--flex qk-hidden--mobile"> 1489 <!-- cyb_snippet _product_info_button start --> 1490<button class="btn addToCart btn_to_cart qk-btn qk-text--button qk-bd--button qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button" 1491 data-brand="æ¯æ¯è»" 1492 data-id="59699979" 1493 data-category="è èä¿å¥" 1494 data-list="å®ç¢å細覽" 1495 data-name="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" 1496 data-quantity="1" 1497 data-position="å ¨é " 1498 1499 data-ga-custom-dimension="" 1500 data-ga-custom-value="" 1501 data-sku="">å å ¥è³¼ç©è»</button> 1502<button class="btn addToCart btn-quick_buy qk-btn qk-btn--primary qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button" data-buy="quick_buy" 1503 data-brand="æ¯æ¯è»" 1504 data-id="59699979" 1505 data-category="è èä¿å¥" 1506 data-list="å®ç¢å細覽" 1507 data-name="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" 1508 data-quantity="1" 1509 data-position="å ¨é " 1510 1511 data-ga-custom-dimension="" 1512 data-ga-custom-value="" 1513 data-sku=""><span>ç«å³è³¼è²·</span></button> 1514 1515<!-- cyb_snippet _product_info_button end --> 1516 <!-- cyb_snippet _product_info_status_button start --> 1517<button class="btn btn_not_sale hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button"> 1518 å°æªéè³£ 1519</button> 1520<button class="btn btn_login_to_view hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button"> 1521 ç»å ¥æ¥çè³æ ¼ 1522</button> 1523<button class="btn btn_not_eligible hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button"> 1524 è³¼è²·è³æ ¼ä¸ç¬¦ 1525</button> 1526<!-- cyb_snippet _product_info_status_button end --> 1527 1528 <button 1529 id="buy-message" 1530 class="btn btn_msg hidden qk-btn qk-btn--primary qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" 1531 type="button" 1532 data-toggle="modal" 1533 data-target="#messagebuy-Modal"> 1534 è¯çµ¡åºå®¶ 1535 </button> 1536 1537 <button class="btn btn_soldout hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button"> 1538 å·²å®å® 1539 </button> 1540 <button 1541 class="btn buy-together hidden qk-btn qk-text--button qk-bd--button qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" 1542 type="button" 1543 data-brand="æ¯æ¯è»" 1544 data-id="59699979" 1545 data-category="è èä¿å¥" 1546 data-list="å®ç¢å細覽" 1547 data-name="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" 1548 data-quantity="1" 1549 data-position="å ¨é " 1550 1551 data-ga-custom-dimension="" 1552 data-ga-custom-value="" 1553 data-sku="">åæå è³¼ç©è»</button> 1554 <button 1555 class="btn buy-together hidden qk-btn qk-btn--primary qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" 1556 type="button" 1557 data-buy="quick_buy" 1558 data-brand="æ¯æ¯è»" 1559 data-id="59699979" 1560 data-category="è èä¿å¥" 1561 data-list="å®ç¢å細覽" 1562 data-name="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" 1563 data-quantity="1" 1564 data-position="å ¨é " 1565 1566 data-ga-custom-dimension="" 1567 data-ga-custom-value="" 1568 data-sku="">åæè³¼è²·</button> 1569 </div> 1570 1571 <div class="product_button_mobile qk-display--flex qk-align--center qk-hidden--pc">
1572 <span class="product_love_mobile qk-display--il_bk"> 1573 <input 1574 type="hidden" 1575 class="product-variant-id" 1576 value="72436717" 1577 data-sku="" 1578 data-price="490.0" 1579 data-compare_at_price="750.0" 1580 data-variant="" 1581 data-inventory_quantity="999"> 1582 <a 1583 class="btn_love scupio-add-wishlist qk-text--text qk-fs--body qk-cursor--pointer" 1584 data-itemid="" 1585 1586 > 1587 <div data-icon-type="custom_icon_type_tracking_items" ></div> 1588 1589 </a> 1590 </span> 1591 1592 <div class="cart qk-text--center qk-pd_x--05 qk-pd_y--0"> 1593 <a href="/cart" class="qk-display--il_flex qk-flex--row qk-justify--center qk-align--center qk-vert--mid qk-pos--rel"> 1594 <div data-icon-type="custom_icon_type_cart" ></div> 1595 1596 <span 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" style="display: none;">0</span> 1597 </a> 1598 </div> 1599 <!-- cyb_snippet _product_info_button_mobile start --> 1600<button 1601 class="btn addToCart_mobile btn_to_cart_mobile open_product_modal qk-btn qk-flex--1 qk-fs--title qk-text-truncate qk-bd--button qk-text--button" 1602 data-handle="aquavitality"> 1603 å å ¥è³¼ç©è»</button> 1604<button 1605 class="btn addToCart_mobile btn_quick_buy_mobile open_quick_buy_modal qk-btn qk-btn--primary qk-flex--1 qk-fs--title qk-text-truncate" 1606 data-handle="aquavitality"> 1607 ç«å³è³¼è²·</button> 1608 1609<!-- cyb_snippet _product_info_button_mobile end --> 1610 <!-- cyb_snippet _product_info_status_button start --> 1611<button class="btn btn_not_sale hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button"> 1612 å°æªéè³£ 1613</button> 1614<button class="btn btn_login_to_view hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button"> 1615 ç»å ¥æ¥çè³æ ¼ 1616</button> 1617<button class="btn btn_not_eligible hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button"> 1618 è³¼è²·è³æ ¼ä¸ç¬¦ 1619</button> 1620<!-- cyb_snippet _product_info_status_button end --> 1621 1622 <button 1623 class="btn btn_msg_mobile qk-btn--primary hidden qk-flex--1 qk-btn qk-fs--title" 1624 type="button" 1625 data-toggle="modal" 1626 data-target="#messagebuy-Modal"> 1627 è¯çµ¡åºå®¶ 1628 </button> 1629 1630 <button class="btn btn_soldout hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-flex--1 qk-fs--title" type="button"> 1631 å·²å®å® 1632 </button> 1633 <button 1634 class="btn buy-together hidden qk-btn qk-flex--1 qk-fs--title qk-bd--button qk-text--button" 1635 type="button" 1636 data-brand="æ¯æ¯è»" 1637 data-id="59699979" 1638 data-category="è èä¿å¥" 1639 data-list="å®ç¢å細覽" 1640 data-name="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" 1641 data-quantity="1" 1642 data-position="å ¨é " 1643 1644 data-sku="">åæå è³¼ç©è»</button> 1645 <button 1646 class="btn buy-together hidden qk-btn qk-btn--primary qk-flex--1 qk-fs--title" 1647 type="button" 1648 data-buy="quick_buy" 1649 data-brand="æ¯æ¯è»" 1650 data-id="59699979" 1651 data-category="è èä¿å¥" 1652 data-list="å®ç¢å細覽" 1653 data-name="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" 1654 data-quantity="1" 1655 data-position="å ¨é " 1656 1657 data-sku="">åæè³¼è²·</button> 1658 1659 </div> 1660 1661 1662 1663 1664 1665 <!-- å å ¥ææ,é·å®æ¸é,ç´ å©ææµ --> 1666 <div class="product_others qk-display--flex qk-flex--wrap qk-align--center"> 1667 <span class="product_love qk-display--il_bk qk-hidden--phone"> 1668 <input 1669 type="hidden" 1670 class="product-variant-id" 1671 value="72436717" 1672 data-sku="" 1673 data-price="490.0" 1674 data-compare_at_price="750.0" 1675 data-variant="" 1676 data-inventory_quantity="999"> 1677 <a 1678 class="btn_love scupio-add-wishlist qk-text--text qk-fs--body qk-bd--default qk-bd--product_border qk-cursor--pointer qk-display--flex qk-align--center" 1679 data-itemid="" 1680 1681 > 1682 <svg 1683 width="15" 1684 height="15"
1685 viewBox="0 0 24 24" 1686 fill="none" 1687 xmlns="http://www.w3.org/2000/svg"> 1688 <path 1689 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" 1690 stroke="currentColor" 1691 stroke-width="2" 1692 stroke-linecap="round" 1693 stroke-linejoin="round" /> 1694 </svg> 1695 å å ¥ææ 1696 </a> 1697 </span> 1698 1699 <span 1700 class="product_bonus qk-text--text qk-fs--body qk-display--il_bk" 1701 1702 hidden 1703 > 1704 æ¤åå ã æé« ãå¯ä»¥ææµç´ å© 1705 <span class="val">0</span> 1706 é» 1707 1708 (ç´çæ¼ <span class="money_tag" data-currency-from="TWD" data-amount="0">NT$0</span> ) 1709 </span> 1710 </div> 1711 </div> 1712 <!-- product content end --> 1713</div> 1714<div class="add-buy-products-container"> 1715 <!-- cyb_snippet add_buy_products start --> 1716 1717 1718 1719 1720<!-- cyb_snippet add_buy_products end --> 1721 1722</div> 1723
1724<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/cart-3a2e378145f8a165.js' type='text/javascript'></script>
vendor: 1 bytes, line 1724
1724
1725<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/product_variant-3a2e378145f8a165.js' type='text/javascript'></script>
1725 1726<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/product-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' />
1727<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/product_info-3a2e378145f8a165.js' type='text/javascript'></script>
1727 1728 1729<!-- cyb_snippet new_addcart_modal start --> 1730<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/vue_product_modal-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 1731 1732<div id="new-addcart-modal" class="container"> 1733 <transition name="modal"> 1734 <product-modal 1735 v-if="showProductModal" 1736 :only-description="onlyDescription" 1737 :product-url="popProductUrl" 1738 :color="color" 1739 :is-collection="isCollection" 1740 :is-show-description="isShowDescription" 1741 :is-quick-buy="isQuickBuy" 1742 :selected-variant-id="selectedVariantId" 1743 :categories="categories" 1744 :call-back="checkoutAddToCartCallback" 1745 ref="productModal" 1746 > 1747 </product-modal> 1748 </transition> 1749</div> 1750 1751<!-- cyb_snippet components/product_modal/product_modal start -->
1752<script type="text/x-template" id="product-modal"> 1753 <div class="modal-mask qk-h--100 qk-w--100 qk-l--0 qk-t--0 qk-pos--fixed" @click="closeModal"> 1754 <div class="modal-content qk-bd--none qk-center qk-bg--theme_bg" :class="{'only-description': onlyDescription}" @click.stop> 1755 <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> 1756 <div class="modal-body custom-scrollbar qk-w--100"> 1757 <div v-if="!isLoading"> 1758 <div id="checkout-product" class="row"> 1759 <div class="col-sm-6 col-xs-4"> 1760 <photo-swiper 1761 :mediaItems="swiperItems" 1762 :current-image-index="currentImageIndex" 1763 :current-variant="currentVariant" 1764 :video-after-image="videoAfterImage" 1765 ></photo-swiper> 1766 </div> 1767 <div class="col-sm-6 col-xs-8"> 1768 <h4 class="qk-fs--hd2 qk-fw--bold qk-text--heading qk-mg--0" v-html="product.title"></h4> 1769 <p class="product_brief qk-text--text qk-fs--body" v-html="product.brief"></p> 1770 <p class="product_slogan qk-text--heading qk-fs--body" v-html="product.slogan"></p> 1771 <div class="swiper_thumbnails" style="margin-bottom: 10px;"> 1772 <swiper-thumbnails 1773 :mediaItems="swiperItems" 1774 :current-image-index="currentImageIndex" 1775 :title="product.title" 1776 @update-current-image-index="(thumbnailIndex) => { currentImageIndex = thumbnailIndex }" 1777 ></swiper-thumbnails> 1778 </div> 1779 1780 <div v-if="!hidePrice" style="margin-bottom: 10px;"> 1781 1782 <span class="price-title qk-fs--body qk-fw--500 qk-text--heading">${ priceTitleTag }</span> 1783 1784 <div> 1785 <span v-html="variantPrice" class="variant-price qk-fs--hd1 qk-fw--bold" :class="[isDiscountPrice ? 'qk-text--discount_price' : 'qk-text--price']"></span> 1786 <del v-html="marketPrice" class="variant-del-price qk-fs--body qk-fw--500 qk-text--text"></del> 1787 </div> 1788 </div> 1789 <div v-if="!onlyDescription" class="controls"> 1790 <div class="variant-quantity qk-display--flex qk-flex--column"> 1791 <div v-if="hasVariant" class="product-variant-options"> 1792 <div v-for="(option, index) in optionInfo" class="product-variant-option" :class="{'product-variant-option--hidden': shouldHideSingleVariantOptions}"> 1793 <div class="advance variant-select-option" v-if="styledShopMenu==='dropDownType'"> 1794 1795 <label>${option.name}</label> 1796 <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> 1797 <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}`)"> 1798 <option value="null" class="select_option-hidden">è«é¸æ${option.name}</option> 1799 <option :style="{ visibility : isMobileSize ? 'hidden' : 'visible' }" v-for="(types) in option.types" :disabled="!types.isValid" :value="types.name">${types.name}</option> 1800 </select> 1801 <span class="select_placeholder-color" v-if="currentOption[`option${index + 1}`] === null" v-show="isMobileSize" @click="onClickSelectModal(option,`option${index + 1}`)">è«é¸æ${option.name}</span>
1802 <span v-else :value="currentOption[`option${index + 1}`]" v-show="isMobileSize" @click="onClickSelectModal(option,`option${index + 1}`)" v-html="currentOption[`option${index + 1}`]"></span> 1803 </div> 1804 <advance-option v-else :option-key="'option' + (index + 1)" :option="option" :current-option="currentOption" :toggle-current-option="toggleCurrentOption"/> 1805 </div> 1806 </div> 1807 <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)"> 1808 <div class="list_block custom-scrollbar qk-of_x--hidden"> 1809 <h4 class="qk-text--heading qk-fs--body">æ¤åååèçåªæ æ´»å 1810 </h4> 1811 <template v-if="displayPeriodicSalesPages"> 1812 <div v-for="salesPage in product.showableSalesPages" class="discount-list"> 1813 <span class="discount-label qk-fs--breadcrumb qk-bd--default qk-bd--accent qk-bg--white qk-display--il_bk qk-text--accent">宿å®é¡ 1814 </span> 1815 <a class="discount-title qk-text--accent qk-fs--body" :href="salesPage.path">${ salesPage.title }</a> 1816 </div> 1817 </template> 1818 <template v-for="discounts in discountsList"> 1819 <div v-for="discount in discounts" class="discount-list"> 1820 <a v-if="discount.url" :href="discount.url" class="discount-title qk-text--accent qk-fs--body"> 1821 ${ discount.title } 1822 </a> 1823 <span v-else class="discount-title qk-text--accent qk-fs--body">${ discount.title }</span> 1824 </div> 1825 </template> 1826 </div> 1827 </div> 1828 <div v-if="showPurchaseControls" class="product-quantity qk-bd--product_border" v-show="!isMobileSize"> 1829 <div class="btn-group qk-w--100" role="group" aria-label="First group"> 1830 <button class="btn add-down qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityDecrease">ï¼</button> 1831 <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"> 1832 <button class="btn add-up qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityIncrease">ï¼</button> 1833 </div> 1834 </div> 1835 </div> 1836 <div v-if="showPurchaseControls" class="add-button-wrapper"> 1837 <!-- cyb_snippet _product_modal_button start --> 1838<button 1839 class="btn btn-default add-button qk-cursor--pointer qk-w--100 qk-btn--primary" 1840 :class="{selected: isChoose, adding: adding || isHideAddCartBtn, secondary: isSecondaryBtn, 'qk-btn--disabled': isHideAddCartBtn && isNewNnCollection, 'qk-bd--none': isHideAddCartBtn && isNewNnCollection}" 1841 type="button" 1842 :disabled="isHideAddCartBtn" 1843 @click="addProduct" 1844> 1845 ${ addCartText } 1846</button> 1847 1848<!-- cyb_snippet _product_modal_button end --> 1849 </div> 1850 <div class="product-others qk-fs--body"> 1851 <span class="product-love"> 1852 <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"> 1853 <svg 1854 width="15" 1855 height="15"
1856 viewBox="0 0 24 24" 1857 fill="none" 1858 xmlns="http://www.w3.org/2000/svg"> 1859 <path 1860 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" 1861 stroke="currentColor" 1862 stroke-width="2" 1863 stroke-linecap="round" 1864 stroke-linejoin="round" /> 1865 </svg> 1866 å å ¥ææ 1867 </a> 1868 </span> 1869 <span class="product_sold qk-text--text" v-if="false"> 1870 <span>å·²é·å®ï¼ 1871 ${ product.totalSold } 1872 ä»¶ 1873 </span> 1874 </span> 1875 <span class="product_bonus qk-text--text" v-if="false"> 1876 æ¤åå ã æé« ãå¯ä»¥ææµç´ å© 1877 <span class="val qk-fw--600 qk-fs--hd2" v-if="currentVariant">${currentVariant.maxUsableBonus}</span> 1878 <span class="val qk-fw--600 qk-fs--hd2" v-else>${maxUsableBonus}</span> 1879 é» 1880 <span v-html="bonusToPrice"/> 1881 </span> 1882 </div> 1883 <div class='product_limit_buy qk-fs--body' v-show="product.minBuy > 0 || product.limitBuy > 0"> 1884 ${limitBuyText} 1885 </div> 1886 </div> 1887 </div> 1888 </div> 1889 <div v-if="isShowDescription" class="row"> 1890 <div class="col-sm-12"> 1891 1892 <div v-if="product.bodyHtml"> 1893 <h5 class="section-heading qk-bd--heading qk-fs--hd2 qk-text--heading"> 1894 ååä»ç´¹ 1895 </h5> 1896 <div class="ckeditor"> 1897 <div v-html="product.bodyHtml"></div> 1898 </div> 1899 </div> 1900 1901 1902 <div v-if="otherDescriptions['product_description_section_spec']"> 1903 <h5 class="section-heading qk-bd--heading qk-fs--hd2 qk-text--heading"> 1904 è¦æ ¼èªªæ 1905 </h5> 1906 <div class="ckeditor"> 1907 <div v-html="otherDescriptions['product_description_section_spec']"></div> 1908 </div> 1909 </div> 1910 1911 1912 <div v-if="otherDescriptions['product_description_section_shipping']"> 1913 <h5 class="section-heading qk-bd--heading qk-fs--hd2 qk-text--heading"> 1914 ééæ¹å¼ 1915 </h5> 1916 <div class="ckeditor"> 1917 <div v-html="otherDescriptions['product_description_section_shipping']"></div> 1918 </div> 1919 </div> 1920 1921 </div> 1922 </div> 1923 </div> 1924 <div v-show="isLoading" style="text-align: center; padding-bottom: 20px;"> 1925 <i class="fas fa-spinner fa-spin fa-fw fa-2x"></i> 1926 </div> 1927 </div> 1928 <!-- cyb_snippet _product_modal_button_mobile start --> 1929 <div 1930 v-if="showPurchaseControls" 1931 v-show="isMobileSize" 1932 class="mobile_footer" 1933 :class="{'mobile_footer-z': variantSize > 1 }"> 1934 <div class="product-quantity"> 1935 <div class="btn-group qk-w--100" role="group" aria-label="First group"> 1936 <button class="btn add-down qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityDecrease">ï¼</button> 1937 <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"> 1938 <button class="btn add-up qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityIncrease">ï¼</button> 1939 </div> 1940 </div> 1941 <button 1942 v-if="!isLoading && !onlyDescription" 1943 class="btn btn-mobile add-button qk-btn qk-btn--primary qk-btn--lg" 1944 :class="{selected: isChoose, adding: adding || isHideAddCartBtn, 'qk-btn--disabled': isHideAddCartBtn && isNewNnCollection, 'qk-bd--none': isHideAddCartBtn && isNewNnCollection}" 1945 type="button" 1946 :disabled="isHideAddCartBtn" 1947 @click="addProduct"> 1948 ${ addCartText } 1949 </button> 1950</div> 1951<div 1952 class="mobile-modal" 1953 :class="{ 'modal-open': isModalSelectShow && isMobileSize }"> 1954 <div class="mobile_modal-content"> 1955 <div class="modal_close-button"> 1956 <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> 1957 </div> 1958 1959 <p>è«é¸æ${modalOption.name}</p> 1960 <div class="modal_select-templete qk-display--flex qk-of_y--auto qk-w--100"> 1961 <div class="options-container"> 1962 <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> 1963 </div> 1964 </div> 1965 <div v-if="variantSize > 1" class="modal_select_footer qk-display--flex"> 1966 <button type="button" class="modal_cancel qk-bd--default qk-btn--secondary qk-bd--button qk-text--button" @click="onChangeModalSelect(false,false)">åæ¶</button> 1967 <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> 1968 </div> 1969 </div> 1970</div> 1971 1972<!-- cyb_snippet _product_modal_button_mobile end --> 1973 </div> 1974 </div> 1975</script>
1975 1976 1977<!-- cyb_snippet components/product_modal/color_image_option start -->
1978<script id="color-image-option" type="text/x-template"> 1979 <div class="color-image qk-display--flex qk-flex--wrap qk-align--center"> 1980 <div class="title">é¡è²</div> 1981 <div 1982 v-for="(imageColor, index) in imageColors" 1983 :class="{ 1984 'focus': !currentOption[optionKey] === option.types[index].name && currentImageIndex === index, 1985 'selected': currentOption[optionKey] === option.types[index].name, 1986 'disabled': !option.types[index].isValid 1987 }" 1988 class="image-option img-flex qk-bd--default qk-bd--transparent qk-display--block qk-pos--rel" 1989 @mouseleave="setCurrentImageIndex(index)" 1990 @mouseover="getOptionImageIndex(index)" 1991 @click="setOption(optionKey, index)" 1992 > 1993 <img v-if="imageColor !== 'noColorImage'" :src="imageColor.large" alt="image"> 1994 <img v-else src="/assets/no-image-large.png" alt="image"> 1995 </div> 1996 </div> 1997</script>
1997 1998
1999<script type="text/javascript"> 2000 $(document).ready(function() { 2001 window.themeHelper.productModalComponents['color-image-option'] = { 2002 template: '#color-image-option', 2003 delimiters: ['${', '}'], 2004 props: { 2005 optionKey: String, 2006 option: Object, 2007 product: Object, 2008 imageColors: Array, 2009 isChoose: Boolean, 2010 currentImageIndex: Number, 2011 setCurrentImageIndex: Function, 2012 getOptionImageIndex: Function, 2013 currentOption: Object, 2014 toggleCurrentOption: Function, 2015 }, 2016 methods: { 2017 setOption: function(optionKey, index) { 2018 const type = this.option.types[index]; 2019 if(type.isValid){ 2020 this.toggleCurrentOption(optionKey, type.name); 2021 } 2022 } 2023 } 2024 }; 2025 }); 2026</script>
2026 2027 2028<!-- cyb_snippet components/product_modal/color_image_option end --> 2029<!-- cyb_snippet components/product_modal/advance_option start -->
2030<script id="advance-option" type="text/x-template"> 2031 <div class="advance"> 2032 <div class="title qk-text--heading qk-fs--body">${option.name}</div> 2033 <div 2034 v-for="type in option.types" 2035 :class="{ 2036 'selected': currentOption[optionKey] === type.name, 2037 'disabled': !type.isValid 2038 }" 2039 @click="setOption(optionKey, type)" 2040 class="option qk-btn qk-bd--button qk-text--button qk-pd_x--1" 2041 > 2042 ${type.name} 2043 </div> 2044 </div> 2045</script>
2045 2046
2047<script type="text/javascript"> 2048 $(document).ready(function() { 2049 window.themeHelper.productModalComponents['advance-option'] = { 2050 template: '#advance-option', 2051 delimiters: ['${', '}'], 2052 props: { 2053 optionKey: String, 2054 option: Object, 2055 product: Object, 2056 currentOption: Object, 2057 toggleCurrentOption: Function, 2058 }, 2059 methods: { 2060 setOption: function(optionKey, type) { 2061 if(type.isValid){ 2062 this.toggleCurrentOption(optionKey, type.name); 2063 } 2064 } 2065 } 2066 }; 2067 }); 2068</script>
2068 2069 2070<!-- cyb_snippet components/product_modal/advance_option end --> 2071 2072<!-- cyb_snippet components/product_modal/photo_swiper start --> 2073 2074
2075<script id="photo-swiper" type="text/x-template"> 2076 <div ref="photoSwiper" id="photo_swiper" class="photos swiper swiper-container"> 2077 <div class="swiper-wrapper"> 2078 <template v-if="hasImage"> 2079 <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 default_scale"> 2080 <video-player v-if="item.url" :video="item" 2081 :video-poster=" !!mediaItems[firstImageIndex] ? mediaItems[firstImageIndex].large : '//cdn-general.cybassets.com/img_loading.svg' " 2082 > 2083 </video-player> 2084 <img v-else class="qk-center" :src="item.large" alt="image"/> 2085 </div> 2086 </template> 2087 <div v-else class="photo swiper-slide qk-align--center qk-display--flex qk-justify--center qk-vert--text_top default_scale"> 2088 <img src="//cdn-general.cybassets.com/assets/no-image-large-2b95ea56c455be9ce081d81c14eded925df68bf8fa38809e46f6af8fcdd5f9bc.png" alt="image" /> 2089 </div> 2090 </div> 2091 <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> 2092 <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> 2093 2094 <div class="photo-pagination qk-bd--default qk-bd--body qk-text--center qk-text--body qk-fs--breadcrumb qk-visible-sm"> 2095 <span class="current-index qk-text--default_dark">${currentImageIndex +1 }</span><span class="pagination-slash">/</span> 2096 <span>${mediaItems.length}</span> 2097 </div> 2098 </div> 2099</script>
2099 2100
2101<script> 2102 $(document).ready(function () { 2103 window.themeHelper.productModalComponents['photo-swiper'] = { 2104 template: '#photo-swiper', 2105 delimiters: ['${', '}'], 2106 props: { 2107 mediaItems: Array, 2108 currentImageIndex: Number, 2109 currentVariant: Object, 2110 videoAfterImage: Boolean, 2111 }, 2112 data: function () { 2113 return { 2114 swiper: {}, 2115 swiperOption: { 2116 preventInteractionOnTransition: true, 2117 rewind: true, 2118 spaceBetween: 5, 2119 slidesPerView: 1, 2120 navigation: { 2121 nextEl: '.photo-next', 2122 prevEl: '.photo-prev' 2123 } 2124 }, 2125 showBtn: true, 2126 isVariantReposition: false, 2127 } 2128 }, 2129 mounted: function() { 2130 this.swiper = new Swiper('#photo_swiper', this.swiperOption); 2131 this.swiper.on('slideChange', this.slideOnChange); 2132 }, 2133 watch: { 2134 currentImageIndex: function() { 2135 this.slideToIndex(); 2136 }, 2137 currentVariant: { 2138 immediate: true, 2139 handler: function() { 2140 this.showBtn = this.mediaItems.length > 1; 2141 this.isVariantReposition = true; 2142 this.$nextTick(() => { 2143 if (this.swiper) { 2144 this.swiper.update(); 2145 this.swiper.slideToLoop(this.initialItemIndex) 2146 this.slideOnChange(); 2147 this.isVariantReposition = false; 2148 } 2149 }); 2150 }, 2151 }, 2152 }, 2153 computed: { 2154 hasImage: function() { 2155 return this.mediaItems.length > 0; 2156 }, 2157 hasVideo: function() { 2158 return this.mediaItems.findIndex(item => !!item.url) !== -1; 2159 }, 2160 variantPhotos: function() { 2161 if (this.currentVariant?.photos?.length) { 2162 return this.currentVariant.photos; 2163 } else { 2164 return null; 2165 } 2166 }, 2167 initialItemIndex: function() { 2168 if (this.hasVideo && !this.videoAfterImage) { 2169 // Focus on photo if "variant with photos" selected, video otherwise 2170 return this.variantPhotos?.length ? 1 : 0; 2171 } else { 2172 // Focus on first photo 2173 return 0; 2174 } 2175 }, 2176 }, 2177 methods: { 2178 slideOnChange: function() { 2179 themeHelper.EventBus.$emit('photoOnChange', this.swiper.realIndex, this.isVariantReposition); 2180 }, 2181 slideToIndex: function() { 2182 if(this.swiper.realIndex != this.currentImageIndex) { 2183 this.swiper.slideToLoop(this.currentImageIndex); 2184 this.swiper.update(); 2185 } 2186 }, 2187 } 2188 }; 2189 }); 2190</script>
2190 2191 2192 2193<!-- cyb_snippet components/product_modal/video_player start -->
2194<script id="video-player" type="text/x-template"> 2195 <div class="videoPlayer__wrapper" @click="handleVideoClick"> 2196 <video 2197 id='modal-video' 2198 class="videoPlayer__video qk-cursor--pointer qk-center" 2199 :poster="videoPoster" 2200 loop defaultMuted muted playsinline webkit-playsinline autoplay 2201 > 2202 <source :src="videoUrl" type="video/mp4"> 2203 <p>ä½ çç覽å¨ä¸æ¯æ´ HTML 5 video</p> 2204 </video> 2205 <button id="modal-video-button" class="videoPlayer__pauseButton"></button> 2206 </div> 2207</script>
2207 2208
2209<script> 2210 $(document).ready(function () { 2211 window.themeHelper.productModalComponents['video-player'] = { 2212 template: '#video-player', 2213 delimiters: ['${', '}'], 2214 props: { 2215 video: Object, 2216 videoPoster: String, 2217 }, 2218 data: function() { 2219 return { 2220 videoElement: null, 2221 buttonElement: null, 2222 }; 2223 }, 2224 mounted: function() { 2225 this.videoElement = $('#modal-video')[0]; 2226 this.buttonElement = $('#modal-video-button'); 2227 this.setVideoVolumeZero(); 2228 this.videoElement.addEventListener('canplay', (event) => { 2229 this.sendGtag('play'); 2230 }, { once: true }); 2231 }, 2232 computed: { 2233 videoUrl: function() { 2234 return this.video.url; 2235 } 2236 }, 2237 methods: { 2238 sendGtag: function(action) { 2239 window.productVideoView && productVideoView(action); 2240 }, 2241 setVideoVolumeZero: function() { 2242 this.videoElement.volume = 0; 2243 }, 2244 handleVideoClick: function() { 2245 if (this.videoElement.paused){ 2246 this.videoElement.play(); 2247 this.sendGtag('play'); 2248 } else { 2249 this.videoElement.pause(); 2250 this.sendGtag('paused'); 2251 } 2252 this.handleVideoButtonDisplay(this.buttonElement, this.videoElement); 2253 }, 2254 handleVideoButtonDisplay: function(button, video) { 2255 button.toggleClass('videoPlayer__playButton', video.paused); 2256 button.toggleClass('videoPlayer__pauseButton', !video.paused); 2257 }, 2258 } 2259 }; 2260 }); 2261</script>
2261 2262 2263<!-- cyb_snippet components/product_modal/video_player end --> 2264 2265<!-- cyb_snippet components/product_modal/photo_swiper end --> 2266<!-- cyb_snippet components/product_modal/swiper_thumbnails start -->
2267<script id="swiper-thumbnails" type="text/x-template"> 2268 <div 2269 v-for="(thumbnail, index) in allThumbnails" 2270 :key="index" 2271 class="product-thumbnail img-flex qk-of--hidden qk-display--il_bk qk-cursor--pointer qk-bd--default qk-bd--transparent default_scale" 2272 :class="{ focus: index === currentImageIndex }" 2273 @mouseover="updateCurrentImageIndex(index)" 2274 > 2275 <template v-if="thumbnail.isVideo"> 2276 <video class="qk-w--100 qk-h--100" :src="thumbnail.url" defaultMuted playsinline></video> 2277 <button class="videoPlayer__playButton"></button> 2278 </template> 2279 <img v-else :src="thumbnail.url" :alt="title" class="qk-w--100 qk-h--100"> 2280 </div> 2281</script>
2281 2282
2283<script type="text/javascript"> 2284 $(document).ready(function () { 2285 window.themeHelper.productModalComponents['swiper-thumbnails'] = { 2286 template: '#swiper-thumbnails', 2287 delimiters: ['${', '}'], 2288 props: { 2289 title: String, 2290 mediaItems: Array, 2291 currentImageIndex: Number, 2292 }, 2293 emits: ['updateCurrentImageIndex'], 2294 methods: { 2295 updateCurrentImageIndex: function(thumbnailIndex) { 2296 if (thumbnailIndex !== this.currentImageIndex ) { 2297 this.$emit('updateCurrentImageIndex', thumbnailIndex); 2298 } 2299 }, 2300 }, 2301 mounted() { 2302 // can be removed after replacing video thumbnail with img 2303 const thumbnailVideo = $('.product-thumbnail video')[0]; 2304 if (!!thumbnailVideo) { 2305 thumbnailVideo.volume = 0; 2306 const promise = thumbnailVideo.play(); 2307 promise.then(() => { 2308 thumbnailVideo.pause(); 2309 }) 2310 } 2311 }, 2312 computed: { 2313 allThumbnails: function() { 2314 return this.mediaItems.map(item => ({ 2315 isVideo: !!item.url, 2316 url: item.url || item.medium 2317 })); 2318 }, 2319 }, 2320 watch: { 2321 allThumbnails: { 2322 handler(){ 2323 this.updateCurrentImageIndex(this.currentImageIndex); 2324 } 2325 } 2326 } 2327 }; 2328 }); 2329</script>
2329 2330 2331<!-- cyb_snippet components/product_modal/swiper_thumbnails end --> 2332 2333 2334<!-- cyb_snippet _product_modal_js start -->
2335<script type="text/javascript"> 2336 $(document).ready(function() { 2337 var categoryLevels = []; 2338 var productCategoryLevels = ["è èä¿å¥,æ¯å©ä¿å¥,é¦é åå"]; 2339 var pageMainProductId = 59699979; 2340 window.themeHelper.productModalComponents['product-modal'] = { 2341 template: '#product-modal', 2342 delimiters: [ 2343 '${', '}' 2344 ], 2345 props: { 2346 onlyDescription: Boolean, 2347 cartItems: Array, 2348 groupId: Number, 2349 productUrl: String, 2350 color: String, // unused 2351 collectionId: Number, 2352 categories: Array, 2353 // 夿·æ¯å¦æè²ç¥¨å±é 2354 isCollection: { 2355 type: Boolean, 2356 required: false, 2357 default: false, 2358 }, 2359 // 夿·å å ¥è³¼ç©è»çæ¹æ³ 2360 isNnCollection: Boolean, 2361 isNewNnCollection: Boolean, 2362 isBundleDiscount: Boolean, 2363 2364 // 夿·æ¯å¦é¡¯ç¤ºååæè¿° 2365 isShowDescription: { 2366 type: Boolean, 2367 default: true 2368 }, 2369 2370 // 夿·æ¯å¦çºç«å³è³¼è²· 2371 isQuickBuy: { 2372 type: Boolean, 2373 default: false 2374 }, 2375 selectedVariantId: Number, 2376 callBack: Function 2377 }, 2378 data: function() { 2379 return { 2380 styledShopMenu: "buttonType", 2381 selectOption: '', 2382 selectCurrentStr:'', 2383 isModalSelectShow: false, 2384 modalOption: {}, 2385 adding: false, 2386 currentImageIndex: 0, 2387 _navState: { variantId: null, photoIndex: 0 }, 2388 currentOption: { 2389 option1: null, 2390 option2: null, 2391 option3: null 2392 }, 2393 currentVariant: null, 2394 variantNotifications: null, 2395 currentVariantIndex: null, 2396 product: {}, 2397 isChoose: false, 2398 isLoading: true, 2399 isEmptyClickable: liquidHelper.isEmptyClickable, 2400 quantity: 1, 2401 maxUsableBonus: 0, 2402 isDiscountPrice: false, 2403 displayProductDiscountsList: true, 2404 displayPeriodicSalesPages:true, 2405 discountsList: null, 2406 hasVideoPlugin: true, 2407 videoDisplayLocation: "before", 2408 hasStockNotificationPlugin: false, 2409 isDisplayPriceRange: null, 2410 hasVariantPriceRangePlugin: true, 2411 hasHideSingleVariantOptionsPlugin: false, 2412 } 2413 }, 2414 mounted: function() { 2415 this.getProductDetail(); 2416 $('.custom-scrollbar').addCustomScrollbar(); 2417 themeHelper.EventBus.$on('photoOnChange', this.photoOnChange); 2418 }, 2419 beforeUnmount: function() { 2420 themeHelper.EventBus.$off('photoOnChange', this.photoOnChange); 2421 }, 2422 computed: { 2423 photoUrls: function() { 2424 return this.product.photoUrls.length > 0 2425 ? this.product.photoUrls 2426 : [this.featuredImage]; 2427 }, 2428 photoUrlsMap: function() { 2429 var map = {}; 2430 var urls = this.product.photoUrls; 2431 this.product.photos.forEach(function(photo, index) { 2432 map[photo.photo.id] = urls[index]; 2433 }); 2434 2435 return map; 2436 }, 2437 featuredImage: function() { 2438 return this.product.featuredImage; 2439 }, 2440 swiperPhotos: function() { 2441 if (!this.photoUrls.length) { 2442 return [this.featuredImage]; 2443 } 2444 2445 if (this.currentVariant && this.currentVariant.photos.length) { 2446 var map = this.photoUrlsMap; 2447 return this.currentVariant.photos.map(function(p) { 2448 return map[p.id]; 2449 }); 2450 } 2451 2452 return this.photoUrls; 2453 }, 2454 productVideo: function() { 2455 return this.product.video; 2456 }, 2457 videoAfterImage: function() { 2458 return this.videoDisplayLocation === 'after'; 2459 }, 2460 swiperItems: function() { 2461 const media = [...this.swiperPhotos]; 2462 if ( 2463 this.hasVideoPlugin && this.productVideo.url 2464 ) { 2465 this.videoAfterImage 2466 ? media.push(this.productVideo) 2467 : media.unshift(this.productVideo); 2468 } 2469 return media; 2470 }, 2471 firstImageIndex: function() { 2472 return this.hasVideoPlugin && this.productVideo.url && !this.videoAfterImage 2473 ? 1 2474 : 0 2475 }, 2476 otherDescriptions: function() { 2477 var descriptions = {}; 2478 this.product.otherDescriptions.forEach(function(od) { 2479 descriptions[od.settingName] = od.bodyHtml; 2480 }) 2481 return descriptions 2482 }, 2483 variantOptions: function() { 2484 return themeHelper.variantOptions(this.product); 2485 }, 2486 firstValidVariant: function() { 2487 var self = this; 2488 var result = this.product.variants.find(function(variant) { 2489 // å¢å product modal è¯çµ¡åºå®¶ property 2490 variant.imgUrl = ""; 2491 variant.productTitle = ""; 2492 2493 return variant.available; 2494 }); 2495 2496 return result 2497 ? result 2498 : null; 2499 }, 2500 selectedValidVariant: function() { 2501 var self = this; 2502 var result = this.variantOptions.find(function(variant) { 2503 return variant.id === self.selectedVariantId; 2504 }); 2505 2506 return result 2507 ? result 2508 : null; 2509 }, 2510 totalInventoryQuantity: function(product) { 2511 return themeHelper.totalInventoryQuantity(this.product) 2512 }, 2513 addCartText: function() { 2514 var variants = parseInt("0"); 2515 let isRegisteredNotification = this.currentVariant && this.variantNotifications && this.variantNotifications[this.currentVariant.id] 2516 if (this.isNnCollection || this.isBundleDiscount) { 2517 if (this.currentVariant && !themeHelper.variantIsAvailable(this.currentVariant)) { 2518 if (this.currentVariant.inventoryPolicy === 'continue') { 2519 if (this.isNnCollection) { 2520 return this.isChoose && !this.isNewNnCollection 2521 ? 'å·²é è³¼' 2522 : 'é è³¼åå'; 2523 } 2524 } else { 2525 return 'å·²å®å®'; 2526 } 2527 } 2528 if (this.totalInventoryQuantity === 0) { 2529 return 'å·²å®å®'; 2530 } 2531 return this.isChoose && !this.isNewNnCollection 2532 ? 'å·²é¸è³¼' 2533 : 'é¸è³¼'; 2534 } else { 2535 if (this.isQuickBuy) { 2536 if (this.currentVariant && !themeHelper.variantIsAvailable(this.currentVariant)) { 2537 if (this.currentVariant.inventoryPolicy === 'continue'){ 2538 return 'ç«å³é è³¼' 2539 } 2540 return this.hasStockNotificationPlugin 2541 ? (isRegisteredNotification 2542 ? 'å·²ç»è¨è£è²¨éç¥' 2543 : 'å·²å®å®ï¼è²¨å°éç¥æ') 2544 : 'è¯çµ¡åºå®¶' 2545 } 2546 return 'ç«å³è³¼è²·'; 2547 } else { 2548 if (this.currentVariant) { 2549 if (!themeHelper.variantIsAvailable(this.currentVariant)) { 2550 if (this.currentVariant.inventoryPolicy === 'continue'){ 2551 return 'é è³¼åå' 2552 } 2553 return this.hasStockNotificationPlugin 2554 ? (isRegisteredNotification 2555 ? 'å·²ç»è¨è£è²¨éç¥' 2556 : 'å·²å®å®ï¼è²¨å°éç¥æ') 2557 : 'è¯çµ¡åºå®¶' 2558 } 2559 } else { 2560 if (this.totalInventoryQuantity === 0) { 2561 return 'å·²å®å®'; 2562 } 2563 } 2564 return 'å å ¥è³¼ç©è»'; 2565 } 2566 } 2567 }, 2568 cartItem: function() { 2569 if (!this.currentVariant) { 2570 return null 2571 } 2572 return { 2573 id: this.currentVariant.id, 2574 groupId: this.groupId, 2575 productId: this.product.id, 2576 title: this.product.title, 2577 photo: this.currentVariant.imgUrl || this.featuredImage.large, 2578 quantity: this.quantity, 2579 price: this.currentVariant.price, 2580 variant: this.currentVariant, 2581 product: this.product 2582 } 2583 }, 2584 options: function() { 2585 return this.product.options; 2586 }, 2587 optionTypes: function() { 2588 2589 // å æ ¹æè¨å®çvariantsä¾æåº 2590 var self = this; 2591 2592 var option1 = []; 2593 var option2 = []; 2594 var option3 = [];
2595 this.product.variants.forEach(function(item) { 2596 if (item.option1 !== null) { 2597 option1.push(item.option1); 2598 } 2599 if (item.option2 !== null) { 2600 option2.push(item.option2); 2601 } 2602 if (item.option3 !== null) { 2603 option3.push(item.option3); 2604 } 2605 }) 2606 var filteredOptionTypes = []; 2607 this.product.optionTypes.forEach(function(item, index) { 2608 filteredOptionTypes.push(self.getUniqueVariant(eval('option' + ( 2609 index + 1 2610 ))).join(',')); 2611 }); 2612 return filteredOptionTypes; 2613 }, 2614 optionInfo: function() { 2615 var self = this; 2616 2617 return self.options.map(function(option, index) { 2618 return { 2619 name: option, 2620 types: self.getOptions('option' + ( 2621 index + 1 2622 ), self.optionTypes[index].split(',')) 2623 } 2624 }); 2625 }, 2626 hasVariant: function() { 2627 return this.product.options.length > 0; 2628 }, 2629 shouldHideSingleVariantOptions: function() { 2630 return this.hasHideSingleVariantOptionsPlugin && 2631 this.product.variants && 2632 this.product.variants.length <= 1; 2633 }, 2634 variantSize: function() { 2635 if(this.product.options){ 2636 return this.product.options.length; 2637 } 2638 }, 2639 firstVariant: function() { 2640 return this.product.variants[0]; 2641 }, 2642 firstCheapestVariant: function() { 2643 return this.product.variants.find((v)=> (v.price === this.priceStats.minPrice)); 2644 }, 2645 priceStats: function() { 2646 return this.product.variants.reduce(function(acc, variant) { 2647 return { 2648 minPrice: variant.price < acc.minPrice ? variant.price : acc.minPrice, 2649 maxPrice: variant.price > acc.maxPrice ? variant.price : acc.maxPrice, 2650 }; 2651 }, { 2652 minPrice: this.firstVariant.price, 2653 maxPrice: this.firstVariant.price, 2654 }); 2655 }, 2656 hidePrice: function() { 2657 return this.product && this.product.hidePrice === true; 2658 }, 2659 salesModePurchasable: function() { 2660 return !(this.product && this.product.salesModePurchasable === false); 2661 }, 2662 // - 任鏿æ£ï¼ç´ é ç¶ ï¼ã鏿ãåªæ¯å é²è©¦ç®æ¸ å®ï¼ä¸æç´æ¥ä¸å®ï¼æ åªæèå¹åå 2663 // - å ¶ä»æ å¢ï¼ååé ã群çµé ãå¤å±¤ç´åé¡ãæå°ãé¦é åååå¡ï¼ï¼ä¸å¯è³¼è²·ï¼å«èå¹ï¼å°±æ´çµæ¶æ 2664 showPurchaseControls: function() { 2665 if (this.isNnCollection || this.isBundleDiscount) { 2666 return !this.hidePrice; 2667 } 2668 return this.salesModePurchasable; 2669 }, 2670 variantPrice: function() { 2671 if (this.hidePrice) { 2672 return ''; 2673 } 2674 var from = liquidHelper.defaultCurrency; 2675 if (this.currentVariant) { 2676 return moneySymbol(this.currentVariant.price, from); 2677 } 2678 if (this.product.variants.length === 1) { 2679 return moneySymbol(this.firstVariant.price, from); 2680 } 2681 2682 var minPrice = this.priceStats.minPrice; 2683 var maxPrice = this.priceStats.maxPrice; 2684 2685 if (minPrice !== maxPrice && (!this.hasVariantPriceRangePlugin || this.isDisplayPriceRange)) { 2686 this.isDiscountPrice = false; 2687 return moneySymbol(minPrice, from) + '~' + moneySymbol(maxPrice, from); 2688 } else { 2689 return moneySymbol(minPrice, from); 2690 } 2691 }, 2692 marketPrice: function() { 2693 if (this.hidePrice) { 2694 this.isDiscountPrice = false; 2695 return; 2696 } 2697 var from = liquidHelper.defaultCurrency; 2698 if (this.currentVariant) { 2699 this.isDiscountPrice = false; 2700 if (this.currentVariant.compareAtPrice && this.currentVariant.compareAtPrice > this.currentVariant.price) { 2701 this.isDiscountPrice = true; 2702 return moneySymbol(this.currentVariant.compareAtPrice, from); 2703 } 2704 } else { 2705 if (!_.includes(this.variantPrice, '~')) { 2706 const price = Number(this.variantPrice.replace(/[^0-9.
2706-]/g, "")) 2707 // æªé¸ææ¬¾å¼ä¹ä¸é¡¯ç¤ºåéæï¼é¡¯ç¤ºç¬¬ä¸åæä¾¿å®ç款å¼çå®å¹ 2708 if (this.firstCheapestVariant.compareAtPrice && this.firstCheapestVariant.compareAtPrice > price){ 2709 this.isDiscountPrice = true; 2710 return moneySymbol(this.firstCheapestVariant.compareAtPrice, from); 2711 } 2712 // æªé¸ææ¬¾å¼æè¦æ¹åä¸è¬å¹æ ¼é¡è² 2713 this.isDiscountPrice = false; 2714 } 2715 } 2716 }, 2717 isShowDropdownList: function() { 2718 if (this.product.options.length > 0) { 2719 return true; 2720 } 2721 return this.product.variants.length > 1 2722 }, 2723 priceTitleTag: function() { 2724 return this.marketPrice 2725 ? getDiscountPriceName() 2726 : getDiscountPriceSuggestionName(); 2727 }, 2728 isHideAddCartBtn: function() { 2729 if (this.addCartText === 'å·²å®å®') { 2730 return true; 2731 } 2732 return false; 2733 }, 2734 isSecondaryBtn: function() { 2735 if (this.addCartText === 'è¯çµ¡åºå®¶') { 2736 return true; 2737 } 2738 return false; 2739 }, 2740 variantsMaxUsableBonus: function() { 2741 var variants = this.product.variants; 2742 var maxUsableBonusArray = variants.map(function(item) { 2743 return item.maxUsableBonus 2744 }); 2745 return Math.max.apply(null, maxUsableBonusArray); 2746 }, 2747 bonusToPrice: function() { 2748 const bonus = this.currentVariant 2749 ? this.currentVariant.maxUsableBonus 2750 : this.maxUsableBonus; 2751 const price = Math.floor(bonus / window.liquidHelper.conversionBonus); 2752 const priceWithMoney = window.themeHelper.productDisplayCurrencyBlock(price); 2753 return "(ç´çæ¼ value )".replace('value', priceWithMoney); 2754 }, 2755 isMobileSize: function() { 2756 return window.innerWidth <= 580 2757 }, 2758 limitBuyText: function () { 2759 const minCount = this.product.minBuy; 2760 const maxCount = this.product.limitBuy; 2761 if (minCount > 0 && maxCount > 0) { 2762 return 'æ¤å忝çè¨å®æå°é購買 minCount ä»¶ï¼æå¤å¯è³¼è²· maxCount ä»¶'.replace('minCount', minCount).replace('maxCount', maxCount); 2763 } 2764 if (minCount > 0) { 2765 return 'æ¤å忝çè¨å®æå°é購買 minCount ä»¶'.replace('minCount', minCount); 2766 } 2767 if (maxCount > 0) { 2768 return 'æ¤å忝çè¨å®æå¤å¯è³¼è²· maxCount ä»¶'.replace('maxCount', maxCount); 2769 } 2770 return ''; 2771 } 2772 }, 2773 methods: { 2774 onClickSelectModal: function(objData, selectOptionStr) { 2775 this.isModalSelectShow = true; 2776 this.modalOption = objData; 2777 this.selectOption = selectOptionStr 2778 this.selectCurrentStr = this.currentOption && (String(this.currentOption[selectOptionStr]) || null) 2779 }, 2780 onChangeModalSelect: function(flag, isSelect) { 2781 if(!isSelect){ 2782 this.setOption(this.selectOption,this.selectCurrentStr,this.modalOption.types) 2783 } 2784 this.isModalSelectShow = flag; 2785 }, 2786 setOption: function(optionKey, type, dataArr) { 2787 let flag = true 2788 dataArr.forEach(item => { 2789 if (item.name === type) { 2790 flag = item.isValid 2791 } 2792 }) 2793 if (flag) { 2794 this.toggleCurrentOption(optionKey, type) 2795 } 2796 }, 2797 addToWishListEvent: function() { 2798 try { 2799 if (appMarketAddToWishListEvent) { 2800 var product = this.product; 2801 var currentVariant = this.currentVariant 2802 var element = $(`.btn[data-id=${product.id}]`); 2803 var index; 2804 var listName; 2805 if (element) { 2806 index = element.data('position') 2807 listName = element.data('list') 2808 } 2809 // sku_properties:é¸ä¸æ¬¾å¼ç option pairs(ç¶åèªç³»),é¡åå zip å¼ 2810 var optionValues = [currentVariant.option1, currentVariant.option2, currentVariant.option3]; 2811 var properties = [];
2812 (product.options || []).forEach(function(optionName, i) { 2813 if (optionName && optionValues[i]) { 2814 properties.push({ name: optionName, value: optionValues[i] }); 2815 } 2816 }); 2817 var dataSet = { 2818 name: product.title, 2819 category: product.productType, 2820 categories: (this.categories && this.categories.length) ? this.categories : (categoryLevels.length ? categoryLevels : (product.id === pageMainProductId ? productCategoryLevels : undefined)), 2821 sku: currentVariant.sku, 2822 price: currentVariant.price, 2823 compare_at_price: currentVariant.compareAtPrice, 2824 properties: properties, 2825 quantity: currentVariant.inventoryQuantity, 2826 variant: currentVariant.title, 2827 listName: listName || null, 2828 productId: product.id, 2829 variantId: currentVariant.id, 2830 index: Number(index) || 0, 2831 } 2832 appMarketAddToWishListEvent(dataSet) 2833 } 2834 } catch (e) { 2835 console.error(e) 2836 } 2837 }, 2838 addWishList: function() { 2839 if (this.currentVariant === null) { 2840 window.msg('è«é¸æå忬¾å¼', 'warning').show(); 2841 return; 2842 } 2843 var productVariantId = this.currentVariant.id; 2844 var addToWishListEvent = this.addToWishListEvent 2845 $.ajax({ 2846 method: 'POST', 2847 url: '/tracking_items', 2848 dataType: 'json', 2849 data: { 2850 product_variant_id: productVariantId 2851 }, 2852 success: function(response) { 2853 if (response.message) { 2854 window.msg(response.message, 'success').show(); 2855 addToWishListEvent() 2856 } 2857 2858 if (response.error) { 2859 window.msg(response.error, 'error').show(); 2860 2861 } 2862 if (response.info) { 2863 window.msg(response.info, 'info').show(); 2864 } 2865 if (response.success === false) { 2866 if (window.liquidHelper && window.liquidHelper.language && window.liquidHelper.language.handle) { 2867 window.location = "/" + window.liquidHelper.language.handle + "/account/login"; 2868 } else { 2869 window.location = "/account/login"; 2870 } 2871 } 2872 } 2873 }); 2874 }, 2875 setChoose: function(currentVariant) { 2876 this.maxUsableBonus = 0; 2877 var quantity = 1; 2878 var cartItem = null; 2879 if (!this.isNnCollection && this.cartItems) { 2880 cartItem = this.normalGetChoosenItem(currentVariant); 2881 } 2882 if (this.isNnCollection) { 2883 cartItem = this.nnCollectionGetChoosenItem(currentVariant); 2884 } 2885 this.isChoose = !! cartItem; 2886 if (this.isNewNnCollection) { 2887 return 2888 } 2889 this.quantity = cartItem 2890 ? cartItem.quantity 2891 : this.quantity; 2892 2893 // product modal è¯çµ¡åºå®¶æ å¢ 2894 if (currentVariant) { 2895 var photoIndex = 0; 2896 if (! currentVariant.imgUrl) { 2897 currentVariant.imgUrl = this.swiperPhotos.length > 0 2898 ? (this.swiperPhotos[photoIndex] && this.swiperPhotos[photoIndex].large) 2899 : this.featuredImage.large; 2900 } 2901 currentVariant.productTitle = this.product.title + ' - ' + this.currentVariant.title; 2902 } 2903 }, 2904 normalGetChoosenItem: function(currentVariant) { 2905 return this.cartItems.find(function(cartItem) { 2906 return currentVariant && cartItem.id === currentVariant.id; 2907 }); 2908 }, 2909 nnCollectionGetChoosenItem: function(currentVariant) { 2910 var isSelected = null; 2911 if (! currentVariant) { 2912 return isSelected; 2913 } 2914 if (this.isNewNnCollection) { 2915 var cart = store.get(`SpecialCollectionCart_${this.collectionId}`); 2916 isSelected = cart && cart.find((item) => item.variant_id == currentVariant.id) || null; 2917 } else { 2918 store.each(function(value, key) { 2919 var productId = _.includes(key, 'Pro' + currentVariant.productId); 2920 var variantID = _.includes(key, 'Var' + currentVariant.id); 2921 if (productId && variantID) { 2922 isSelected = store.get(key); 2923 } 2924 }); 2925 } 2926 2927 return isSelected; 2928 }, 2929 // get product detail 2930 getProductDetail: function() { 2931 var self = this; 2932 2933 $.ajax({ 2934 url: self.productUrl + '.json', 2935 type: 'GET', 2936 timeout: 30000, 2937 beforeSend: function() { 2938 self.isLoading = true; 2939 }, 2940 error: function(xhr) { 2941 self.closeModal(); 2942 if (xhr.status === 429) { 2943 window.showAddCartRateLimitModal(5); 2944 return; 2945 } 2946 window.msg('網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç', 'error').show(); 2947 } 2948 }).done(function(data) { 2949 if (data.id) { 2950 var productData = [themeHelper.toCamelCase(data)]; 2951 self.product = themeHelper.priceWithDiscount(productData, liquidHelper.hasPriceWithDiscountPlugin)[0]; 2952 self.maxUsableBonus = self.variantsMaxUsableBonus; 2953 if (self.product.variants.length === 1 || liquidHelper.isFirstVariantSelected || self.selectedVariantId) { 2954 self.currentVariant = self.firstValidVariant; 2955 // 妿已ç¶èªé¸ååï¼åååé 䏿»å å ¥è³¼ç©è»é¡¯ç¤ºèªé¸åå 2956 if (self.selectedVariantId) { 2957 self.currentVariant = self.selectedValidVariant; 2958 } 2959 if (self.currentVariant) { 2960 self.setChoose(self.currentVariant); 2961 self.setDefaultOption(); 2962 } 2963 } 2964 if (self.displayProductDiscountsList) { 2965 self.setUpDiscountsTag(data); 2966 } 2967 self.isLoading = false;
2968 if (self.product && self.product.variants) { 2969 self.product.variants.forEach(function(discountedVariant) { 2970 var rawVariant = data.variants.find(function(v) { return v.id === discountedVariant.id; }); 2971 if (rawVariant) { rawVariant.price = discountedVariant.price; } 2972 }); 2973 } 2974 viewItem && viewItem(data, { collectionId: '', collectionName: null, categories: (self.categories && self.categories.length) ? self.categories : (categoryLevels.length ? categoryLevels : (data.id === pageMainProductId ? productCategoryLevels : undefined)) }); 2975 2976 2977 } else { 2978 window.msg('網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç', 'error').show(); 2979 self.closeModal() 2980 } 2981 }) 2982 }, 2983 // product image btn 2984 photoOnChange: function(photoIndex, isVariantReposition) { 2985 var visiblePhotos = (this.currentVariant && this.currentVariant.photos.length) 2986 ? this.currentVariant.photos 2987 : this.product.photos.map(function(p) { return p.photo; }); 2988 var result = themeHelper.buildNavigateItemImagePayload(this._navState, { 2989 product: this.product, 2990 currentVariant: this.currentVariant, 2991 visiblePhotos: visiblePhotos, 2992 slideIndex: photoIndex, 2993 videoOffset: this.firstImageIndex, 2994 }); 2995 this._navState = result.nextState; 2996 if (result.payload && !isVariantReposition) { 2997 window.navigateItemImage(result.payload); 2998 } 2999 this.currentImageIndex = photoIndex; 3000 }, 3001 toggleCurrentOption: function(key, value) { 3002 this.currentOption[key] = 3003 (this.currentOption[key] === value || value === 'null') ? null : value; 3004 var variantIndex = this.getVariantIndex(); 3005 if (variantIndex !== -1) { 3006 this.currentVariant = this.product.variants[variantIndex]; 3007 } else { 3008 this.currentVariant = null; 3009 } 3010 this.setChoose(this.product.variants[variantIndex]); 3011 if (this.currentOption[key] !== null) { 3012 var optionIndex = parseInt(key.replace('option', '')) - 1; 3013 appStoreSelectItemEvent(this.product, this.product.options[optionIndex], this.currentOption[key], this.currentVariant); 3014 } 3015 }, 3016 toggleNotification: function() { 3017 var self = this; 3018 var variantId = this.currentVariant.id; 3019 3020 $.ajax({ 3021 url: '/toggle_pv_notification', 3022 method: 'POST', 3023 dataType: 'json', 3024 data: { 3025 product_variant_id: variantId 3026 }, 3027 success: function(response) { 3028 self.variantNotifications[variantId] = response.notice; 3029 window.msg(response.message, "success").show(); 3030 }, 3031 error: function(xhr) { 3032 var response = xhr.responseJSON; 3033 var msg = response && response.error || "網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç"; 3034 window.msg(msg, "error").show(); 3035 } 3036 }) 3037 }, 3038 getOptionImageIndex: function(index) { 3039 this.currentImageIndex = index; 3040 }, 3041 quantityDecrease: function() { 3042 if (this.cartItem) { 3043 themeHelper.EventBus.$emit('quantityDecrease', this.cartItem, false); 3044 this.quantity = this.cartItem.quantity 3045 } else { 3046 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 3047 } 3048 }, 3049 quantityIncrease: function() { 3050 if (this.cartItem) { 3051 themeHelper.EventBus.$emit('quantityIncrease', this.cartItem, false); 3052 this.quantity = this.cartItem.quantity 3053 } else { 3054 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 3055 } 3056 }, 3057 quantityChange: function(el) { 3058 if (this.cartItem) { 3059 themeHelper.EventBus.$emit('quantityChange', parseInt(el.target.value), this.cartItem, false); 3060 this.quantity = this.cartItem.quantity; 3061 el.target.value = this.cartItem.quantity; 3062 } else { 3063 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 3064 } 3065 }, 3066 addProduct: function() { 3067 if (this.addCartText === 'è¯çµ¡åºå®¶') { 3068 $('#messagebuy-Modal').data('variant', this.currentVariant); 3069 $('#messagebuy-Modal').modal('show'); 3070 $('#messagebuy-Modal').css("background-color", "rgba(0, 0, 0, .6)"); 3071 } else if ( 3072 this.addCartText === 'å·²ç»è¨è£è²¨éç¥' || 3073 this.addCartText === 'å·²å®å®ï¼è²¨å°éç¥æ' 3074 ) { 3075 this.toggleNotification(); 3076 } else { 3077 if (this.cartItem) { 3078 try { 3079 if (this.isChoose) { 3080 themeHelper.EventBus.$emit('updateStore', 'update', this.cartItem, this.callBack) 3081 } else { 3082 themeHelper.EventBus.$emit('updateStore', 'add', this.cartItem, this.callBack) 3083 } 3084 3085 this.adding = true; 3086 this.closeModal(); 3087 } catch (e) { 3088 window.msg("å忬¾å¼ç°å¸¸", 'error').show(); 3089 } 3090 } else { 3091 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 3092 } 3093 } 3094 }, 3095 closeModal: function() { 3096 themeHelper.EventBus.$emit('closeProductModal'); 3097 }, 3098 setDefaultOption: function() { 3099 var self = this; 3100 Object.keys(self.currentOption).map(function(optionKey) { 3101 self.currentOption[optionKey] = self.currentVariant[optionKey]; 3102 }); 3103 }, 3104 getVariantIndex: function() { 3105 var self = this; 3106 return self.product.variants.findIndex(function(variant, index) { 3107 var isVariant = true;
3108 Object.keys(self.currentOption).forEach(function(option) { 3109 if (variant[option] !== self.currentOption[option]) { 3110 isVariant = false; 3111 } 3112 }); 3113 return isVariant; 3114 }); 3115 }, 3116 3117 // 篩é¸éè¤åé 3118 getUniqueVariant: function(variants) { 3119 return variants.filter(function(value, index, self) { 3120 return self.indexOf(value) === index; 3121 }); 3122 }, 3123 groupBy(xs, key) { 3124 return xs.reduce(function(rv, x) { 3125 (rv[x[key]] = rv[x[key]] || []).push(x); 3126 return rv; 3127 }, {}); 3128 }, 3129 setUpDiscountsTag(data) { 3130 var self = this; 3131 var languagePrefix = '/' + ((window.shopScriptHelper && window.shopScriptHelper.i18nLocale) || 'zh-TW'); 3132 $.ajax({ 3133 url: languagePrefix + self.productUrl + '/discounts_list', 3134 method: 'GET', 3135 success: function(result) { 3136 if (result.length > 0) { 3137 var discounts_list = self.groupBy(result, 'campaign_type'); 3138 self.discountsList = discounts_list; 3139 } else { 3140 self.discountsList = null; 3141 } 3142 } 3143 }); 3144 }, 3145 getOptions: function(optionKey, optionTypes) { 3146 var self = this; 3147 return optionTypes.map(function(optionType, index) { 3148 var isValid = true; 3149 3150 // é¸åºå å«ç®åtypeçvariant 3151 var matchVariants = self.product.variants.filter(function(variant) { 3152 return variant[optionKey] === optionType; 3153 }); 3154 3155 // 篩é¸å·²å¾é¸type 3156 Object.keys(self.currentOption).forEach(function(currentOptionKey) { 3157 if (currentOptionKey !== optionKey) { 3158 matchVariants = matchVariants.filter(function(variant) { 3159 if (self.currentOption[currentOptionKey]) { 3160 return variant[currentOptionKey] === self.currentOption[currentOptionKey] 3161 } else { 3162 return true; 3163 } 3164 }); 3165 } 3166 }); 3167 if (matchVariants.length === 0) { 3168 isValid = false; 3169 } 3170 if (! self.isEmptyClickable) { 3171 isValid = false; 3172 matchVariants.find(function(item) { 3173 if (item.inventoryQuantity === null || item.inventoryQuantity > 0 || item.inventoryPolicy === 'continue') { 3174 isValid = true; 3175 } 3176 }); 3177 } 3178 return {name: optionType, isValid: isValid} 3179 }); 3180 } 3181 } 3182 }; 3183 }); 3184</script>
3184 3185 3186<!-- cyb_snippet _product_modal_js end --> 3187 3188<!-- cyb_snippet components/product_modal/product_modal end --> 3189 3190<!-- cyb_snippet messagebuy_modal start --> 3191 3192<div class="modal" id="messagebuy-Modal" tabindex="-1" role="dialog" aria-hidden="true"> 3193 <div class="modal-dialog modal-dialog-centered" role="document"> 3194 <div class="modal-content"> 3195 <div class="modal-header"> 3196 <p class="modal-title qk-fw--500" style="font-size: 1.25rem;">åå庫åä¸è¶³çè¨</p> 3197 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 3198 <span aria-hidden="true">×</span> 3199 </button> 3200 </div> 3201 <div class="modal-body"> 3202 <form class="form-horizontal" id="message-form"> 3203 <input type="hidden" name="authenticity_token" id="authenticity_token" value="1pXahflF86x6KRuaiMGt8pU9Vc4ijmB80wTRnCd_HlcwHYjMxQi0T6qSgzWAo3bNm4IBlnRCK3I-wYk-UF5qpQ" autocomplete="off" /> 3204 <div class="product_link img-flex"> 3205 <img src="" alt="product img" class="product_img" width="300" height="300"> 3206 </div> 3207 <p class="product_name qk-fw--500 qk-mg_t--05 qk-mg_b--05" style="font-size: 1.25rem;"></p> 3208 <div class="form-group"> 3209 <input type="email" class="form-control" id="contact_us_email" name="contact[email]" placeholder="Email" data-error="é䏿¯ææçemail" required> 3210 <input type="email" class="form-control" id="repeat-email" name="content[email]" placeholder="Email"> 3211 <div class="help-block with-errors"></div> 3212 </div> 3213 <div class="form-group"> 3214 <textarea type="text" class="form-control" id="message_body" name="contact[body]" placeholder="çè¨çµ¦åºå®¶" data-error="è«ç䏿³å°æå說ç話åï¼" rows="4" required></textarea> 3215 <div class="help-block with-errors"></div> 3216 </div> 3217 3218 <button type="submit" class="qk-btn qk-btn--primary qk-btn--lg qk-w--100 btn-submit-message">éåº</button> 3219 3220 </form> 3221 </div> 3222 </div> 3223 </div> 3224</div> 3225
3226<script> 3227 $(document).ready(function(){ 3228 // setting modal 3229 var product_title, product_img, variant, variant_name, variant_sku, variant_price 3230 3231 $('#repeat-email').hide(); 3232 3233 $('#messagebuy-Modal').on('show.bs.modal', function(){ 3234 var currentVariant = $('#messagebuy-Modal').data('variant'); 3235 3236 if (currentVariant) { 3237 // product modal è¯çµ¡åºå®¶ 3238 $('#messagebuy-Modal').find('.product_name').html(currentVariant.productTitle); 3239 $('#messagebuy-Modal').find('.product_img').attr('src', currentVariant.imgUrl); 3240 product_title = currentVariant.productTitle; 3241 variant_sku = currentVariant.sku; 3242 variant_name = currentVariant.title; 3243 variant_price = parseInt(currentVariant.price); 3244 } else { 3245 product_title = $('#product .product_info .product_title').text() 3246 // æ¯å¦é¡¯ç¤ºè²ç¥¨ 3247 var isDisplayImagesColor = "false"; 3248 if (isDisplayImagesColor === "true") { 3249 product_img = $('#photo_with_images_color').attr('src'); 3250 } else { 3251 product_img = $('#product .product_info .thumb .active img').attr('src') 3252 } 3253 variant = $('#product .product_variant').find(':selected') 3254 variant_name = $(variant).data('name'); 3255 variant_sku = variant.data('sku'); 3256 variant_price = variant.data('price'); 3257 $('#messagebuy-Modal').find('.product_name').text(product_title) 3258 $('#messagebuy-Modal').find('.product_img').attr('src', product_img) 3259 } 3260 }) 3261 3262 $('#message-form').on('submit', function (e) { 3263 e.preventDefault() 3264 3265 var robot_check = $('#repeat-email').val(); 3266 if(robot_check) 3267 return; 3268 3269 var csrf_token = $('meta[name=csrf-token]').attr('content'); 3270 var message_email = $('#message-form input[name="contact[email]"]').val(); 3271 var message_body = $('#message-form textarea[name="contact[body]"]').val(); 3272 var variant_info = "\n (å忍é¡:" + product_title + " ,(ååsku:" + variant_sku + " ,å忍£å¼:" + variant_name + " ,åå广 ¼:" + variant_price + ')'; 3273 if(!variant_sku || !variant_name || !variant_price){ 3274 variant_info = "\n (å忍é¡:" + product_title + ", æªé¸æåå ï¼" 3275 } 3276 message_body += variant_info 3277 3278 var headers = {}; 3279 if (csrf_token && csrf_token !== '') { 3280 headers['X-CSRF-TOKEN'] = csrf_token; 3281 } 3282 3283 $.ajax({ 3284 method: 'POST', 3285 url: '/contact', 3286 headers: headers, 3287 data: { 3288 contact: { email: message_email, body: message_body }, 3289 'g-recaptcha-response': $('.g-recaptcha').data('g-recaptcha-response'), 3290 }, 3291 dataType: 'json' 3292 }).done(function(){ 3293 $('#message-form input[name="contact[email]"]').val(''); 3294 $('#message-form textarea[name="contact[body]"]').val(''); 3295 3296 window.msg("éåºæå", 'success').show() 3297 $('#messagebuy-Modal').modal('hide'); 3298 themeHelper.EventBus.$emit('closeProductModal'); 3299 }).fail(function(){ 3300 window.msg("è«ç¨å¾å試", 'error').show(); 3301 }); 3302 }) 3303 }) 3304</script>
3304 3305 3306 3307<!-- cyb_snippet messagebuy_modal end --> 3308<!-- cyb_snippet components/rate_limit_modal start --> 3309<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/rate_limit_modal-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 3310 3311<div class="modal fade" id="rate-limit-modal" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static" data-keyboard="false"> 3312 <div class="modal-dialog modal-dialog-centered" role="document"> 3313 <div class="modal-content"> 3314 <div class="modal-body"> 3315 <div class="qk-text--default_dark rate-limit-text"> 3316 <p id="rate-limit-title">ç®åæ¶è³¼äººæ½®ç¾å¤ï¼è«èå¿çå</p> 3317 <p class="qk-fs--body qk-fw--500 rate-limit-message"> 3318 <span class="qk-text--error" id="rate-limit-countdown"></span> 3319 <span id="rate-limit-desc"></span> 3320 </p> 3321 <p class="qk-fs--body qk-fw--500 rate-limit-message" id="rate-limit-warn">è¥é¢éæ¤é é¢ï¼å¯è½æå»¶é·çå¾ æéã</p> 3322 </div> 3323 <button id="rate-limit-btn" class="btn qk-btn qk-btn--primary" disabled>éæ°é²å ¥ååé </button> 3324 </div> 3325 </div> 3326 </div> 3327</div> 3328
3329<script> 3330 window.showRateLimitModal = function(countdownSec) { 3331 var countdown = countdownSec || 5; 3332 var $modal = $('#rate-limit-modal'); 3333 var $btn = $modal.find('#rate-limit-btn'); 3334 var $countdownEl = $modal.find('#rate-limit-countdown'); 3335 3336 $btn.show(); 3337 $modal.find('#rate-limit-desc').text(language["product_rate_limit_desc"]); 3338 $countdownEl.text(countdown); 3339 $btn.prop('disabled', true); 3340 $modal.modal('show'); 3341 3342 var timer = setInterval(function() { 3343 countdown--; 3344 $countdownEl.text(countdown); 3345 if (countdown <= 0) { 3346 clearInterval(timer); 3347 $btn.prop('disabled', false); 3348 } 3349 }, 1000); 3350 3351 $btn.off('click').on('click', function() { 3352 location.reload(); 3353 }); 3354 } 3355 3356 window.showAddCartRateLimitModal = function(countdownSec) { 3357 var countdown = countdownSec || 5; 3358 var $modal = $('#rate-limit-modal'); 3359 var $countdownEl = $modal.find('#rate-limit-countdown'); 3360 3361 $modal.find('#rate-limit-btn').hide(); 3362 $modal.find('#rate-limit-desc').text(language["addcart_rate_limit_desc"]); 3363 $countdownEl.text(countdown); 3364 $modal.modal('show'); 3365 3366 var timer = setInterval(function() { 3367 countdown--; 3368 $countdownEl.text(countdown); 3369 if (countdown <= 0) { 3370 clearInterval(timer); 3371 $modal.modal('hide'); 3372 } 3373 }, 1000); 3374 } 3375</script>
3375 3376 3377<!-- cyb_snippet components/rate_limit_modal end --> 3378
3379<script> 3380 $(document).ready(function() { 3381 const shouldSkipQuantityCheck = false; 3382 const newAddCartModalApp = new window.themeHelper.LiquidVueHandler({ 3383 componentNames: Object.keys(window.themeHelper.productModalComponents), 3384 mountSelector: '#new-addcart-modal', 3385 autoMount: false, 3386 }); 3387 3388 newAddCartModalApp.createApp({ 3389 el: '#new-addcart-modal', 3390 delimiters: ['${', '}'], 3391 data() { 3392 return { 3393 collectionId: 0, 3394 categories: [], 3395 color: '', // unused 3396 isCollection: true, 3397 productQuantity: 0, 3398 onlyDescription: false, 3399 showProductModal: false, 3400 popProductUrl: '', 3401 loading: false, 3402 }; 3403 }, 3404 mounted: function() { 3405 themeHelper.EventBus.$on('closeProductModal',this.closeProductModal); 3406 themeHelper.EventBus.$on('updateStore', this.addProduct); 3407 themeHelper.EventBus.$on('quantityDecrease', this.quantityDecrease); 3408 themeHelper.EventBus.$on('quantityIncrease', this.quantityIncrease); 3409 themeHelper.EventBus.$on('quantityChange', this.quantityChange); 3410 }, 3411 methods: { 3412 addProduct: function(actionType, productData, checkoutAddToCartCallback){ 3413 var self = this; 3414 var pageViewId = window.CYBERBIZ && window.CYBERBIZ.dis && window.CYBERBIZ.dis.pageViewId; 3415 $.ajax({ 3416 method: 'POST', 3417 url: '/cart/add', 3418 headers: pageViewId ? { 'X-Cyb-Page-View-Id': pageViewId } : {}, 3419 data: { 3420 id: productData.id, 3421 quantity: productData.quantity, 3422 }, 3423 dataType: 'json', 3424 beforeSend: function() { 3425 self.loading = true; 3426 themeHelper.ajaxLoadingMsg('loading'); 3427 $('.shopcart').dropdown('hide') 3428 $('.global-cart-count').hide(); 3429 $('.global-cart-loading').show(); 3430 $('.global-cart-loading').html('<i class="fa fa-spinner fa-pulse" style="vertical-align: middle;"></i>'); 3431 }, 3432 error: function(xhr) { 3433 $('.global-cart-loading').hide(); 3434 $('.global-cart-count').show(); 3435 self.loading = false; 3436 if (xhr.status === 429) { 3437 themeHelper.ajaxLoadingMsg('hide', 0); 3438 self.closeProductModal(); 3439 window.showAddCartRateLimitModal(5); 3440 return; 3441 } 3442 themeHelper.ajaxLoadingMsg('fail', 2000); 3443 } 3444 }).done(function(data, status, request){ 3445 // product modal ç«å³è³¼è²·æé 3446 window.sendAddToCartEvent && sendAddToCartEvent({ 3447 price: productData.price, 3448 quantity: productData.quantity, 3449 id: productData.product.id, 3450 name: productData.product.title, 3451 category: productData.product.productType, 3452 brand: productData.product.vendor, 3453 qc: productData.variant.qc, 3454 variant: { 3455 id: productData.variant.id, 3456 title: productData.variant.title, 3457 sku: productData.variant.sku, 3458 price: productData.variant.price, 3459 qc: productData.variant.qc, 3460 }, 3461 position: "ååå½åºè¦çª", 3462 request, 3463 }) 3464 if (self.isQuickBuy) { 3465 if (window.liquidHelper && window.liquidHelper.language && window.liquidHelper.language.handle) { 3466 window.location = "/" + window.liquidHelper.language.handle + "/cart"; 3467 } else { 3468 window.location = "/cart"; 3469 } 3470 } else { 3471 themeHelper.ajaxLoadingMsg('success'); 3472 pullNavCart(); 3473 $('.shopcart').dropdown('show') 3474 $('.global-cart-loading').hide(); 3475 self.loading = false; 3476 } 3477 if(typeof checkoutAddToCartCallback === 'function'){ 3478 var callbackData = { 3479 id: productData.id, 3480 quantity: productData.quantity, 3481 title: productData.product ? productData.product.title : productData.title || '' 3482 }; 3483 checkoutAddToCartCallback(callbackData) 3484 } 3485 peh.emit('product:add_to_cart', [{ 3486 variantId: productData.id, 3487 quantity: productData.quantity 3488 }], self.collectionId); 3489 }).fail(function(e){ 3490 if (e.status === 429) { 3491 return; 3492 } 3493 let err_msg = e.responseJSON.err_msg; 3494 err_msg && err_msg.length > 0 ? 3495 window.msg(e.responseJSON.err_msg, 'warning').show(): 3496 window.msg("å å ¥è³¼ç©è»æèª¤ï¼è«éæ°å試", 'warning').show(); 3497 }) 3498 }, 3499 quantityDecrease: function(cartItem, isAdded){ 3500 if (cartItem.quantity > 1) { 3501 cartItem.quantity -= 1; 3502 } else { 3503 window.msg("æ¸éä¸å¾çºä½æ¼ 1", 'warning').show(); 3504 } 3505 }, 3506 quantityIncrease: function(cartItem, isAdded){ 3507 const limitQuantity = cartItem.variant.inventoryQuantity; 3508 const limitBuy = cartItem.product.limitBuy 3509 if (limitBuy && cartItem.quantity >= limitBuy) { 3510 product_limit_buy = "æ¤ååéè³¼ limitBuy ä»¶".replace('limitBuy', limitBuy) 3511 window.msg(product_limit_buy, 'warning').show(); 3512 return; 3513 } else if (cartItem.quantity >= liquidHelper.cartQuantityLimit) { 3514 window.msg("æ¸éè¶ é購買ä¸é", 'warning').show(); 3515 } else if ( cartItem.quantity < limitQuantity || limitQuantity === null || 3516 cartItem.variant.inventoryPolicy == "continue" || shouldSkipQuantityCheck) { 3517 cartItem.quantity += 1; 3518 } else { 3519 this.showInventoryMessage(limitQuantity); 3520 } 3521 },
3522 quantityChange: function(quantity, cartItem, isAdded){ 3523 const limitBuy = cartItem.product.limitBuy 3524 var limitQuantity = cartItem.variant.inventoryQuantity; 3525 var inventoryPolicy = cartItem.variant.inventoryPolicy; 3526 if (Number.isInteger(quantity)) { 3527 if (quantity >= 1) { 3528 if (limitBuy && quantity >= limitBuy) { 3529 product_limit_buy = "æ¤ååéè³¼ limitBuy ä»¶".replace('limitBuy', limitBuy) 3530 window.msg(product_limit_buy, 'warning').show(); 3531 } else if (quantity > liquidHelper.cartQuantityLimit) { 3532 window.msg("æ¸éè¶ é購買ä¸é", 'warning').show(); 3533 } else if (quantity <= limitQuantity || limitQuantity === null || inventoryPolicy == "continue" || shouldSkipQuantityCheck) { 3534 cartItem.quantity = quantity; 3535 } else { 3536 cartItem.quantity = limitQuantity; 3537 this.showInventoryMessage(limitQuantity); 3538 } 3539 } else { 3540 window.msg("æ¸éä¸å¾çºä½æ¼ 1", 'warning').show(); 3541 } 3542 } else { 3543 window.msg("æ¸éè¼¸å ¥é¯èª¤", 'warning').show(); 3544 } 3545 }, 3546 popModal: function(productUrl, collectionId, color, isCollection, isShowDescription, isQuickBuy, variantId, checkoutAddToCartCallback, categories){ 3547 this.showProductModal = true; 3548 this.collectionId = collectionId; 3549 this.categories = categories || []; 3550 this.popProductUrl = productUrl; 3551 this.color = color || ''; // unused 3552 this.isCollection = isCollection || false; 3553 this.isShowDescription = isShowDescription != false; 3554 this.isQuickBuy = isQuickBuy || false; 3555 this.selectedVariantId = parseInt(variantId) || undefined; 3556 this.checkoutAddToCartCallback = checkoutAddToCartCallback; 3557 document.body.style.overflow = "hidden"; 3558 }, 3559 closeProductModal: function() { 3560 this.showProductModal = false; 3561 document.body.style.overflow = ""; 3562 }, 3563 showInventoryMessage: function(inventoryQuantity) { 3564 const stockMessage = "åå庫åå©é¤ count ä»¶".replace('count', inventoryQuantity || 0); 3565 window.msg(stockMessage, 'warning').show(); 3566 }, 3567 } 3568 }); 3569 3570 for (const componentName in window.themeHelper.productModalComponents) { 3571 newAddCartModalApp.component( 3572 componentName, 3573 window.themeHelper.productModalComponents[componentName], 3574 ); 3575 } 3576 3577 window.new_addcart_modal = newAddCartModalApp.mount(); 3578 }); 3579</script>
3579 3580 3581<!-- cyb_snippet new_addcart_modal end --> 3582<!-- cyb_snippet components/variant_options/variant_photos_block start -->
3583<script type="text/x-template" id="variant-photos-block"> 3584 <div class="product_photos qk-w--100"> 3585 <!-- æè²ç¥¨ --> 3586 <div class="product_photo img-flex qk-text--center" v-if="displayProductImagesColor"> 3587 <img id="photo_with_images_color" class="img-lazy" :src="imgLoadingImage" data-src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzBfZGExNTY3OWQ3OWY2Y2I5YjQ0MDIucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=2759fe676ba53b4b" alt="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" width="450" height="450"> 3588 </div> 3589 <!-- æ²è²ç¥¨ --> 3590 <div class="swiper swiper-container product_img_swiper" v-else> 3591 <ul class="swiper-wrapper qk-pd--0 qk-mg--0"> 3592 <video-display 3593 v-if="shouldShowVideo && !videoAfterImage" 3594 :poster="!!showPhotos.length ? showPhotos[0].imageUrl : imgLoadingImage" 3595 :videoUrl="videoUrl" 3596 ></video-display> 3597 <li class="swiper-slide product_photo img-flex qk-text--center qk-of--hidden default_scale" 3598 v-for="photo in showPhotos" 3599 :key="photo.id" 3600 > 3601 <img 3602 :data-src="photo.imageUrl" 3603 width="450" 3604 height="450" 3605 class="swiper-lazy" 3606 alt="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" 3607 @click="onEnlargePhotos()" 3608 /> 3609 <div class="swiper-lazy-preloader"></div> 3610 </li> 3611 <li v-if="showDefault" class="swiper-slide product_photo img-flex qk-text--center qk-of--hidden default_scale"> 3612 <img :src="imgLoadingImage" data-src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzBfZGExNTY3OWQ3OWY2Y2I5YjQ0MDIucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=2759fe676ba53b4b" alt="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" width="450" height="450" class="swiper-lazy"> 3613 </li> 3614 <video-display 3615 v-if="shouldShowVideo && videoAfterImage" 3616 :poster="!!showPhotos.length ? showPhotos[0].imageUrl : imgLoadingImage" 3617 :videoUrl="videoUrl" 3618 ></video-display> 3619 </ul> 3620 <!-- Add Arrows --> 3621 <div class="photo-swiper-next qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v1 qk-swiper_btn--next qk-hidden--mobile"></div> 3622 <div class="photo-swiper-prev qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v1 qk-swiper_btn--prev qk-hidden--mobile"></div> 3623 <div class="photo-pagination qk-bd--default qk-bd--body qk-text--center qk-text--body qk-fs--breadcrumb qk-visible-sm"> 3624 <span class="current-index qk-text--default_dark">${activePhotoIndex + 1}</span><span class="pagination-slash">/</span> 3625 <span>${shouldShowVideo ? (showPhotos.length ? showPhotos.length + 1 : 2) : showPhotos.length || 1}</span> 3626 </div> 3627 </div> 3628 <!-- åçé 碼 --> 3629 <div v-if="showThumbnails" class="thumb qk-of--auto qk-hidden--phone"> 3630 <ul class="thumb-container qk-display--il_flex"> 3631 <video-thumbnail 3632 v-if="shouldShowVideo && !videoAfterImage" 3633 :active="isVideoActive" 3634 :video-url="videoUrl" 3635 @click="onClickThumbnail(videoIndex)" 3636 ></video-thumbnail> 3637 <li class="img-flex qk-bd--default qk-bd--border qk-cursor--pointer qk-of--hidden qk-display--il_flex" 3638 :class="{active: (shouldShowVideo && !videoAfterImage ? index + 1 : index) === activePhotoIndex}" 3639 v-for="(photo, index) in showPhotos" 3640 :key="photo.id" 3641 @click="onClickThumbnail(shouldShowVideo && !videoAfterImage ? index + 1 : index)" 3642 > 3643 <img class="img-lazy" :src="imgLoadingImage" :data-src="photo.imageUrl" alt="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" width="50" height="50"> 3644 </li> 3645 <li v-if="showDefault" 3646 class="img-flex qk-bd--default qk-bd--border qk-of--hidden qk-display--il_flex" 3647 :class="{active: (shouldShowVideo && !videoAfterImage ? 1 : 0) === activePhotoIndex}" 3648 > 3649 <img class="img-lazy" :src="imgLoadingImage" data-src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU5Njk5OTc5LzE3Nzk4NTc0MzBfZGExNTY3OWQ3OWY2Y2I5YjQ0MDIucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=2759fe676ba53b4b" alt="æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨" width="50" height="50"> 3650 </li> 3651 <video-thumbnail 3652 v-if="shouldShowVideo && videoAfterImage" 3653 :active="isVideoActive" 3654 :video-url="videoUrl" 3655 @click="onClickThumbnail(videoIndex)" 3656 ></video-thumbnail> 3657 </ul> 3658 </div> 3659 </div> 3660</script>
3660 3661
3662<script type="text/javascript"> 3663 $(document).ready(function() { 3664 var autoSelectVariantBySku = false; 3665 3666 themeHelper.variantPhotosBlock.component('variant-photos-block', { 3667 template: '#variant-photos-block', 3668 delimiters: ['${', '}'], 3669 data: function() { 3670 return { 3671 variantPhotos: null, 3672 productPhotosMap: {}, 3673 productPhotos: [], 3674 manualSelectedVariant: false, 3675 activePhotoIndex: 0, 3676 _navState: { variantId: null, photoIndex: 0 }, 3677 suppressNavigateEvent: false, 3678 currentVariantForEvent: null, 3679 swiperPhotos: null, 3680 swiperGalleryChangeHandler: null, 3681 showDefault: true, 3682 videoUrl: '', 3683 videoAfterImage: false, 3684 imgLoadingImage:"//cdn-general.cybassets.com/img_loading.svg", 3685 thumbScrollHandler: null, 3686 thumbScrollTimeout: null, 3687 showThumbnails: false, 3688 } 3689 }, 3690 props: { 3691 displayProductImagesColor: Boolean, 3692 productPhotosJson: String, 3693 productVideo: Object, 3694 videoDisplayLocation: String, 3695 productId: [String, Number], 3696 productTitle: String, 3697 }, 3698 mounted: async function() { 3699 this.productPhotos = JSON.parse(this.productPhotosJson.replace(/'/g, '"')); 3700 this.productPhotosMap = 3701 this.productPhotos.reduce((acc, cur) => { 3702 acc[cur.id] = cur; 3703 return acc; 3704 }, {}); 3705 this.videoUrl = !!this.productVideo && this.productVideo.url; 3706 this.showDefault = !this.showPhotos.length; 3707 this.videoAfterImage = this.videoDisplayLocation === 'after'; 3708 themeHelper.EventBus.$on('updatePhotos', this.onUpdatePhotos); 3709 this.swiperGalleryChangeHandler = (_event, payload) => this.onSwiperGalleryChange(payload); 3710 $(document).on('swiper-gallery-change', this.swiperGalleryChangeHandler); 3711 3712 var sku = window.getURLParameter('sku'); 3713 3714 if (sku && autoSelectVariantBySku) { 3715 themeHelper.EventBus.$on('skuReady', this.onSkuReady); 3716 } else { 3717 this.showThumbnails = true; 3718 await this.initPhotosUI(); 3719 } 3720 }, 3721 beforeUnmount: function() { 3722 this.removeThumbScrollListener(); 3723 if (this.swiperGalleryChangeHandler) { 3724 $(document).off('swiper-gallery-change', this.swiperGalleryChangeHandler); 3725 } 3726 }, 3727 methods: { 3728 navigateItemImagePayload: function(state, slideIndex, videoOffset) { 3729 return themeHelper.buildNavigateItemImagePayload(state, { 3730 product: { id: this.productId, title: this.productTitle }, 3731 currentVariant: this.currentVariantForEvent, 3732 visiblePhotos: this.showPhotos, 3733 slideIndex: slideIndex, 3734 videoOffset: videoOffset, 3735 }); 3736 }, 3737 initPhotosUI: async function() { 3738 await this.$nextTick(); 3739 this.initSwiper(); 3740 3741 this._navState = this.navigateItemImagePayload(this._navState, this.initialItemIndex, this.videoOffset).nextState; 3742 3743 // åå§åç¸®åæ»¾åç£è½ 3744 this.initThumbScrollListener(); 3745 3746 const videoElement = $('.product_video.swiper-slide-active video')[0]; 3747 if (videoElement) { 3748 videoElement.addEventListener('canplay', (event) => { 3749 this.sendGtag('play'); 3750 }, { once: true }); 3751 } 3752 }, 3753 onSkuReady: async function() { 3754 await this.initPhotosUI(); 3755 this.showThumbnails = true; 3756 await this.$nextTick(); 3757 imgLazyLoad.update(); 3758 themeHelper.EventBus.$emit('skuPhotosReady'); 3759 }, 3760 initThumbScrollListener: function() { 3761 const thumbScrollContainer = this.$el.querySelector('.thumb'); 3762 3763 if (thumbScrollContainer) { 3764 this.removeThumbScrollListener(); 3765 this.thumbScrollHandler = () => { 3766 clearTimeout(this.thumbScrollTimeout); 3767 this.thumbScrollTimeout = setTimeout(() => { 3768 if (window.imgLazyLoad) { 3769 imgLazyLoad.update(); 3770 } 3771 }, 100); 3772 };
3773 thumbScrollContainer.addEventListener('scroll', this.thumbScrollHandler); 3774 } 3775 }, 3776 removeThumbScrollListener: function() { 3777 const thumbScrollContainer = this.$el.querySelector('.thumb'); 3778 3779 if (thumbScrollContainer && this.thumbScrollHandler) { 3780 thumbScrollContainer.removeEventListener('scroll', this.thumbScrollHandler); 3781 clearTimeout(this.thumbScrollTimeout); 3782 this.thumbScrollHandler = null; 3783 } 3784 }, 3785 sendGtag: function(action){ 3786 window.productVideoView && productVideoView(action); 3787 }, 3788 handleVideoClick: function() { 3789 const video = $('.product_video.swiper-slide-active video')[0]; 3790 const button = $('.product_video.swiper-slide-active button'); 3791 if (video.paused){ 3792 video.play(); 3793 this.sendGtag('play'); 3794 } else { 3795 video.pause(); 3796 this.sendGtag('paused'); 3797 } 3798 this.handleVideoButtonDisplay(button, video); 3799 }, 3800 handleVideoButtonDisplay: function(button, video) { 3801 button.toggleClass('videoPlayer__playButton', video.paused); 3802 button.toggleClass('videoPlayer__pauseButton', !video.paused); 3803 }, 3804 onUpdatePhotos: async function(currentVariant) { 3805 this.suppressNavigateEvent = true; 3806 this.currentVariantForEvent = currentVariant && currentVariant.variant 3807 ? { id: currentVariant.variant.id, sku: currentVariant.variant.sku } 3808 : null; 3809 if (this.swiperPhotos) { 3810 this.swiperPhotos.destroy(true, true); 3811 } 3812 $('.product_img_swiper .swiper-slide-duplicate').remove(); 3813 $('.product_img_swiper .swiper-lazy-loading').removeClass('swiper-lazy-loading'); 3814 this.manualSelectedVariant = currentVariant ? currentVariant.withSpecificVariant : false; 3815 if (currentVariant && currentVariant.photos.length) { 3816 this.variantPhotos = currentVariant.photos.map(p => this.productPhotosMap[p.id]); 3817 } else { 3818 this.variantPhotos = null; 3819 } 3820 3821 this.activePhotoIndex = this.initialItemIndex; 3822 3823 this._navState = this.navigateItemImagePayload(this._navState, this.activePhotoIndex, this.videoOffset).nextState; 3824 await this.$nextTick(); 3825 imgLazyLoad.update(); 3826 this.initSwiper(); 3827 this.suppressNavigateEvent = false; 3828 }, 3829 onEnlargePhotos: function() { 3830 gallery_img.updateImgs(this.maxPhotos); 3831 gallery_img.toggleGallery(true, { 3832 index: this.swiperPhotos.realIndex - this.videoOffset 3833 }); 3834 }, 3835 onSwiperGalleryChange: function(payload) { 3836 if (!payload || payload.galleryName !== 'img') return; 3837 3838 var result = this.navigateItemImagePayload( 3839 { 3840 variantId: this.currentVariantForEvent ? this.currentVariantForEvent.id : null, 3841 photoIndex: payload.fromIndex, 3842 }, 3843 payload.toIndex, 3844 0 3845 ); 3846 3847 if (result.payload && !this.suppressNavigateEvent) { 3848 window.navigateItemImage(result.payload); 3849 } 3850 }, 3851 onClickThumbnail: function(index) { 3852 this.activePhotoIndex = index; 3853 this.swiperPhotos.slideTo(index + 1, 500); 3854 }, 3855 setVideosVolumeZero: function() { 3856 // video duplication because of swiper loop mode 3857 const videos = $('.product_video video'); 3858 videos.each((_index, el)=> { 3859 el.volume = 0; 3860 }); 3861 }, 3862 initSwiper: function() { 3863 var self = this; 3864 this.swiperPhotos = new Swiper('.product_img_swiper', { 3865 preloadImages: false, 3866 lazy: { 3867 loadPrevNext: true, 3868 }, 3869 loop: true, 3870 navigation: { 3871 nextEl: '.photo-swiper-next', 3872 prevEl: '.photo-swiper-prev', 3873 }, 3874 initialSlide: this.initialItemIndex, 3875 }); 3876 if (self.videoUrl) { 3877 self.setVideosVolumeZero(); 3878 } 3879 this.swiperPhotos.on('touchEnd', function () { 3880 setTimeout(function() { 3881 self.activePhotoIndex = self.swiperPhotos.realIndex; 3882 }, 300); 3883 }); 3884 this.swiperPhotos.on('activeIndexChange', function() { 3885 self.activePhotoIndex = self.swiperPhotos.realIndex; 3886 }); 3887 this.swiperPhotos.on('click', function () { 3888 if (self.isVideoActive) { 3889 self.handleVideoClick() 3890 } 3891 }); 3892 this.swiperPhotos.on('transitionEnd', function () { 3893 if (self.isVideoActive) { 3894 const video = $('.product_video.swiper-slide-active video')[0]; 3895 const button = $('.product_video.swiper-slide-active button'); 3896 self.handleVideoButtonDisplay(button, video); 3897 } 3898 }); 3899 } 3900 }, 3901 computed: { 3902 shouldShowVideo: function() { 3903 return !!this.videoUrl; 3904 }, 3905 initialItemIndex: function() { 3906 if (this.shouldShowVideo && !this.videoAfterImage) { 3907 // Focus on photo if "variant with photos" selected, video otherwise 3908 return (this.manualSelectedVariant && !!this.variantPhotos?.length) ? 1 : 0; 3909 } else { 3910 // Focus on first photo 3911 return 0; 3912 } 3913 }, 3914 isVideoActive: function() { 3915 return this.shouldShowVideo && this.activePhotoIndex === this.videoIndex; 3916 }, 3917 showPhotos: function() { 3918 return this.variantPhotos || this.productPhotos; 3919 }, 3920 maxPhotos: function() { 3921 return this.showPhotos.map(p => p.imageMaxUrl); 3922 }, 3923 videoIndex: function(){ 3924 return this.videoAfterImage 3925 ? this.manualSelectedVariant && !!this.variantPhotos?.length 3926 ? this.variantPhotos?.length 3927 : this.showPhotos.length || 1 3928 : 0 3929 }, 3930 videoOffset: function() { 3931 return (this.shouldShowVideo && !this.videoAfterImage) ? 1 : 0; 3932 }, 3933 }, 3934 watch: { 3935 activePhotoIndex: function(newIndex) { 3936 var result = this.navigateItemImagePayload(this._navState, newIndex, this.videoOffset); 3937 this._navState = result.nextState; 3938 if (result.payload && !this.suppressNavigateEvent) { 3939 window.navigateItemImage(result.payload); 3940 } 3941 }, 3942 } 3943 }); 3944 }) 3945</script>
3945 3946 3947<!-- cyb_snippet components/variant_options/video_display start -->
3948<script type="text/x-template" id="video-display"> 3949 <li 3950 class="swiper-slide product_video img-flex qk-text--center qk-of--hidden default_scale"> 3951 <div class="videoPlayer__wrapper qk-of--hidden"> 3952 <video 3953 class="videoPlayer__video qk-cursor--pointer" 3954 :poster="poster" 3955 loop defaultMuted muted playsinline webkit-playsinline autoplay 3956 > 3957 <source :src="videoUrl" type="video/mp4"> 3958 <p>ä½ çç覽å¨ä¸æ¯æ´ HTML 5 video</p> 3959 </video> 3960 <button class="videoPlayer__pauseButton"></button> 3961 </div> 3962 </li> 3963</script>
3963 3964
3965<script type="text/javascript"> 3966 $(document).ready(function() { 3967 themeHelper.variantPhotosBlock.component('video-display', { 3968 template: '#video-display', 3969 delimiters: ['${', '}'], 3970 data: function() { 3971 return { 3972 imgLoadingImage:"//cdn-general.cybassets.com/img_loading.svg", 3973 } 3974 }, 3975 props: { 3976 poster: String, 3977 showPhotos: Object, 3978 videoUrl: String, 3979 }, 3980 }); 3981 }) 3982</script>
3982 3983 3984<!-- cyb_snippet components/variant_options/video_display end --> 3985<!-- cyb_snippet components/variant_options/video_thumbnail start -->
3986<script type="text/x-template" id="video-thumbnail"> 3987 <li 3988 :class="{active}" 3989 class="img-flex qk-bd--default qk-bd--border qk-cursor--pointer qk-of--hidden qk-display--il_flex" 3990 @click="click" 3991 > 3992 <video width="50" height="50"> 3993 <source :src="videoUrl" type="video/mp4"> 3994 </video> 3995 <button class="videoPlayer__playButton"></button> 3996 </li> 3997</script>
3997 3998
3999<script type="text/javascript"> 4000 $(document).ready(function() { 4001 themeHelper.variantPhotosBlock.component('video-thumbnail', { 4002 template: '#video-thumbnail', 4003 delimiters: ['${', '}'], 4004 props: { 4005 active: Boolean, 4006 click: Function, 4007 videoUrl: String, 4008 }, 4009 }); 4010 }) 4011</script>
4011 4012 4013<!-- cyb_snippet components/variant_options/video_thumbnail end --> 4014 4015<!-- cyb_snippet components/variant_options/variant_photos_block end --> 4016<!-- cyb_snippet components/variant_options/variant_options_block start -->
4017<script type="text/x-template" id="variant-options-block"> 4018 <div> 4019 <div v-for="(option, index) in optionInfo" class="product-variant-option" :class="{'product-variant-option--hidden': shouldHideSingleVariantOptions}"> 4020 <p></p> 4021 <color-option 4022 v-if="isImageColor && option.name === 'é¡è²'" 4023 :option-key="'option' + (index + 1)" 4024 :option="option" 4025 :image-colors="imageColors" 4026 :current-image-index="currentImageIndex" 4027 :set-current-image-index="setCurrentImageIndex" 4028 :get-option-image-index="getOptionImageIndex" 4029 :current-option="currentOption" 4030 /> 4031 <div class="advance variant-select-option" v-else-if="styledShopMenu==='dropDownType'"> 4032 4033 <label>${option.name}</label> 4034 <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> 4035 <select v-show="!isMobileSize" class="qk-bg--theme_bg" :class="{'select_placeholder-color': currentOption[`option${index + 1}`] === null}" :value="String(currentOption[`option${index + 1}`])" @change="setOption(`option${index + 1}`, $event.target.value, option.types )" > 4036 <option value="null" class="select_option-hidden">è«é¸æ${option.name}</option> 4037 <option v-for="(types) in option.types" :disabled="!types.isValid" :value="types.name">${types.name}</option> 4038 </select> 4039 <span class="select_placeholder-color" v-if="currentOption[`option${index + 1}`] === null" v-show="isMobileSize" @click="onClickSelectModal(option,`option${index + 1}`)">è«é¸æ${option.name}</span> 4040 <span v-else :value="currentOption[`option${index + 1}`]" v-show="isMobileSize" @click="onClickSelectModal(option,`option${index + 1}`)" v-html="currentOption[`option${index + 1}`]"></span> 4041 </div> 4042 <advance-variant-option 4043 v-else 4044 :option-key="'option' + (index + 1)" 4045 :option="option" 4046 :current-option="currentOption" 4047 /> 4048 </div> 4049 <div class="mobile-modal" :class="{ 'modal-open': isModalSelectShow && isMobileSize }"> 4050 <div class="mobile_modal-content"> 4051 4052 <div class="modal_close-button"> 4053 <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> 4054 </div> 4055 <p>è«é¸æ${modalOption.name}</p> 4056 <div class="modal_select-templete qk-display--flex qk-of_y--auto qk-w--100"> 4057 <div class="options-container"> 4058 <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> 4059 </div> 4060 </div> 4061 <div v-if="isCartEnabled && salesModePurchasable" class="modal_select_footer qk-display--flex qk-hidden--pc"> 4062 <div v-show="variantSize === 1" class="qk-display--flex qk-w--100"> 4063 <div class="product_variant_quantity"> 4064 <span class="product_quantity"> 4065 <div v-if="isModalSelectShow && isMobileSize" class="btn-group" role="group" aria-label="First group"> 4066 <button class="btn add-down qk-bd--product_border" type="button" @click="quantityChange(false)" ></button> 4067 <input class="btn item-quantity qk-text--heading qk-bd--product_border" type="text" name="quantity" value="1" data-old-value="1"> 4068 <button class="btn add-up qk-bd--product_border" type="button" @click="quantityChange(true)"></button> 4069 </div> 4070 </span> 4071 </div> 4072 <button 4073 class="btn addToCart_mobile btn_to_cart_mobile open_product_modal qk-btn qk-btn--secondary qk-flex--1 qk-fs--breadcrumb qk-text-truncate" 4074 data-handle="aquavitality"> 4075 å å ¥è³¼ç©è»</button> 4076 </div> 4077 <div v-show="variantSize > 1" class="qk-display--flex qk-w--100"> 4078 <button type="button" class="modal_cancel qk-w--50 qk-bd--default qk-btn--secondary qk-bd--button qk-text--button" @click="onChangeModalSelect(false,false)">åæ¶</button> 4079 <button type="button" class="qk-btn qk-w--50 qk-btn--primary qk-btn--lg qk-fs--body qk-bd--button qk-test--button_text" @click="onChangeModalSelect(false,true)">宿</button> 4080 </div> 4081 </div> 4082 </div> 4083 </div> 4084 </div> 4085</script>
4085 4086 4087<!-- cyb_snippet components/variant_options/color_image_option start -->
4088<script id="color-option" type="text/x-template"> 4089 <div class="option color_option"> 4090 <span class="title qk-text--heading">ååé¡è²:</span> 4091 <label 4092 v-for="(imageColor, index) in imageColors" 4093 :class="{ 4094 'image-option': true, 4095 'selected': selectedClass(index), 4096 'disabled': disabledClass(index), 4097 }" 4098 @mouseleave="setCurrentImageIndex(index)" 4099 @mouseover="getOptionImageIndex(index)" 4100 @click="setOption(optionKey, index)" 4101 class="qk-bd--default qk-bd--border" 4102 > 4103 <span class="img-flex qk-display--il_bk"> 4104 <img v-if="imageColor !== 'noColorImage'" :src="imageColor.large" alt="image"> 4105 <img v-else src="/assets/no-image-large.png" alt="image"> 4106 </span> 4107 </label> 4108 </div> 4109</script>
4109 4110
4111<script type="text/javascript"> 4112 $(document).ready(function () { 4113 themeHelper.variantOptionsBlock.component('color-option', { 4114 template: '#color-option', 4115 delimiters: ['${', '}'], 4116 props: { 4117 optionKey: String, 4118 option: Object, 4119 imageColors: Array, 4120 setCurrentImageIndex: Function, 4121 getOptionImageIndex: Function, 4122 currentOption: Object, 4123 }, 4124 methods: { 4125 setOption: function(optionKey, index) { 4126 var type = this.option.types[index]; 4127 if (type.isValid) { 4128 themeHelper.EventBus.$emit('toggleCurrentOption', optionKey, type.name); 4129 } 4130 }, 4131 selectedClass: function(index) { 4132 return this.currentOption[this.optionKey] === this.option.types[index].name; 4133 }, 4134 disabledClass: function(index) { 4135 return !this.option.types[index].isValid; 4136 }, 4137 }, 4138 }); 4139 }); 4140</script>
4140 4141 4142<!-- cyb_snippet components/variant_options/color_image_option end --> 4143<!-- cyb_snippet components/variant_options/advance_option start -->
4144<script id="advance-variant-option" type="text/x-template"> 4145 <div class="advance"> 4146 <div class="option_title qk-text--heading">${option.name}</div> 4147 <label 4148 v-for="type in option.types" 4149 :class="{ 4150 'selected': selectedClass(type), 4151 'disabled': disabledClass(type), 4152 }" 4153 @click="setOption(optionKey, type)" 4154 class="option qk-btn qk-btn--md qk-bd--button qk-text--button qk-text--center qk-pd_x--1" 4155 > 4156 <span class="text">${type.name}</span> 4157 </label> 4158 </div> 4159</script>
4159 4160
4161<script type="text/javascript"> 4162 $(document).ready(function() { 4163 themeHelper.variantOptionsBlock.component('advance-variant-option', { 4164 template: '#advance-variant-option', 4165 delimiters: ['${', '}'], 4166 props: { 4167 optionKey: String, 4168 option: Object, 4169 currentOption: Object, 4170 }, 4171 methods: { 4172 setOption: function(optionKey, type) { 4173 if(type.isValid){ 4174 themeHelper.EventBus.$emit('toggleCurrentOption', optionKey, type.name); 4175 } 4176 }, 4177 selectedClass: function(type) { 4178 return this.currentOption[this.optionKey] === type.name; 4179 }, 4180 disabledClass: function(type) { 4181 return !type.isValid; 4182 }, 4183 } 4184 }); 4185 }); 4186</script>
4186 4187 4188<!-- cyb_snippet components/variant_options/advance_option end --> 4189 4190 4191<!-- cyb_snippet _variant_options_block_js start -->
4192<script type="text/javascript"> 4193 $(document).ready(function() { 4194 themeHelper.variantOptionsBlock.component('variant-options-block', { 4195 template: '#variant-options-block', 4196 delimiters: ['${', '}'], 4197 props: { 4198 productApiUrl: String, 4199 sku: String, 4200 autoSelectVariantBySku: Boolean, 4201 hideOtherVariantsBySku: Boolean, 4202 hideSingleVariantOptions: Boolean, 4203 salesModePurchasable: Boolean, 4204 defaultPrice: String, 4205 defaultComparePrice: String, 4206 defaultDiscounted: Boolean, 4207 }, 4208 data: function() { 4209 return { 4210 styledShopMenu: "buttonType", 4211 currentImageIndex: 0, 4212 isModalSelectShow: false, 4213 selectOption: '', 4214 selectCurrentStr:'', 4215 modalOption: {}, 4216 currentOption: { 4217 option1: null, 4218 option2: null, 4219 option3: null, 4220 }, 4221 currentVariant: null, 4222 product: {}, 4223 isLoading: true, 4224 isImageColorsUsed: liquidHelper.isImageColorsUsed, 4225 isEmptyClickable: liquidHelper.isEmptyClickable, 4226 hasPriceWithDiscountPlugin: liquidHelper.hasPriceWithDiscountPlugin, 4227 isCartEnabled: liquidHelper.isCartEnabled, 4228 } 4229 }, 4230 mounted: function() { 4231 this.getProductDetail(); 4232 themeHelper.EventBus.$on('toggleCurrentOption',this.toggleCurrentOption); 4233 }, 4234 computed: { 4235 imageColors: function() { 4236 //è²ç¥¨ä¸å®æå° 4237 var self = this; 4238 var images = this.photoUrls.slice(0); 4239 var imageColorNum = this.colorOption.length; 4240 for(var i = imageColorNum; i < imageColorNum * 2; i++) { 4241 if(!images[i]) { 4242 images.push('noColorImage'); 4243 } 4244 } 4245 return images.slice(imageColorNum, imageColorNum * 2); 4246 }, 4247 photoUrls: function() { 4248 return this.product.photoUrls.length > 0 ? this.product.photoUrls : [this.featuredImage]; 4249 }, 4250 featuredImage: function() { 4251 return this.product.featuredImage; 4252 }, 4253 swiperPhotos: function() { 4254 if(this.isImageColor) { 4255 return this.photoUrls.slice(0, this.colorOption.length); 4256 } 4257 return this.photoUrls.length > 0 ? this.photoUrls : [this.featuredImage]; 4258 }, 4259 firstValidVariant: function() { 4260 var self = this; 4261 var result = this.product.variants.find(function(variant) { 4262 return variant.available; 4263 }); 4264 4265 return result ? result : null; 4266 }, 4267 shouldHideOtherVariants: function() { 4268 return this.hideOtherVariantsBySku && 4269 this.sku && 4270 this.currentVariant && 4271 this.currentVariant.sku === this.sku; 4272 }, 4273 shouldHideSingleVariantOptions: function() { 4274 return this.hideSingleVariantOptions && 4275 this.product.variants && 4276 this.product.variants.length <= 1; 4277 }, 4278 options: function() { 4279 return this.product.options; 4280 }, 4281 optionTypes: function() { 4282 // å æ ¹æè¨å®çvariantsä¾æåº 4283 var self = this; 4284 4285 var option1 = []; 4286 var option2 = []; 4287 var option3 = [];
4288 this.product.variants.forEach(function(item) { 4289 if (item.option1 !== null) option1.push(item.option1); 4290 if (item.option2 !== null) option2.push(item.option2); 4291 if (item.option3 !== null) option3.push(item.option3); 4292 }) 4293 4294 var filteredOptionTypes = []; 4295 this.product.optionTypes.forEach(function(item, index) { 4296 filteredOptionTypes.push(self.getUniqueVariant(eval('option' + (index + 1))).join(',')); 4297 }); 4298 4299 return filteredOptionTypes; 4300 }, 4301 optionInfo: function() { 4302 var self = this; 4303 4304 if (self.options) { 4305 return self.options.map(function(option, index) { 4306 return { 4307 name: option, 4308 types: self.getOptions('option' + (index + 1), self.optionTypes[index].split(',')) 4309 } 4310 }); 4311 } 4312 }, 4313 colorOptionIndex: function() { 4314 return this.options.findIndex(function(option) { 4315 return option === 'é¡è²'; 4316 }); 4317 }, 4318 colorOption: function() { 4319 var optionIndex = this.colorOptionIndex 4320 return optionIndex === -1 ? null : this.optionTypes[optionIndex].split(','); 4321 }, 4322 isImageColor: function() { 4323 return this.isImageColorsUsed && _.includes(this.product.options, 'é¡è²'); 4324 }, 4325 isMobileSize: function() { 4326 return window.innerWidth <= 580 4327 }, 4328 variantSize: function() { 4329 if(this.product.options){ 4330 return this.product.options.length; 4331 } 4332 }, 4333 isAutoSelectVariantBySku: function() { 4334 return this.sku && this.autoSelectVariantBySku; 4335 }, 4336 }, 4337 methods: { 4338 onClickSelectModal: function(objData, selectOptionStr) { 4339 this.isModalSelectShow = true; 4340 this.modalOption = objData; 4341 this.selectOption = selectOptionStr 4342 }, 4343 onChangeModalSelect: function(flag, isSelect) { 4344 if(!isSelect){ 4345 this.setOption(this.selectOption,this.selectCurrentStr,this.modalOption.types) 4346 } 4347 this.isModalSelectShow = flag; 4348 }, 4349 setOption: function(optionKey, type, dataArr) { 4350 let flag = true 4351 dataArr.forEach(item => { 4352 if (item.name === type) { 4353 flag = item.isValid 4354 } 4355 }) 4356 if (flag) { 4357 this.toggleCurrentOption(optionKey, type) 4358 } 4359 }, 4360 setChoose: function(currentVariant) { 4361 var currentVariantData = {}; 4362 if (currentVariant) { 4363 currentVariantData = { 4364 id: this.currentVariant.id, 4365 bonus: this.currentVariant.maxUsableBonus, 4366 name: this.currentVariant.title, 4367 inventoryPolicy: this.currentVariant.inventoryPolicy, 4368 compareAtPrice: this.currentVariant.compareAtPrice, 4369 imgUrl: this.currentVariant.imgUrl, 4370 inventoryQuantity: this.currentVariant.inventoryQuantity, 4371 option1: this.currentVariant.option1, 4372 option2: this.currentVariant.option2, 4373 option3: this.currentVariant.option3, 4374 price: this.currentVariant.price, 4375 productId: this.currentVariant.productId, 4376 sku: this.currentVariant.sku, 4377 qc: this.currentVariant.qc, 4378 hidePrice: this.product.hidePrice === true, 4379 }; 4380 } else { 4381 currentVariantData = { 4382 price: this.defaultPrice, 4383 compareAtPrice: this.defaultComparePrice, 4384 isDiscounted: this.defaultDiscounted, 4385 hidePrice: this.product.hidePrice === true, 4386 } 4387 } 4388 const isUpcomingProduct = this.isSellTimeAfterNow(this.product.sellFrom); 4389 this.$emit('set-choose', currentVariantData, isUpcomingProduct); 4390 }, 4391 onError: function() { 4392 window.msg("", 'error').show(); 4393 }, 4394 showRateLimitPopup: function() { 4395 showRateLimitModal(5); 4396 }, 4397 4398 // get product detail 4399 getProductDetail: function() { 4400 var self = this; 4401 $.ajax({ 4402 url: self.productApiUrl + '.json', 4403 type: 'GET', 4404 timeout: 30000, 4405 beforeSend: function() { 4406 self.isLoading = true; 4407 }, 4408 error: function(xhr){ 4409 if (xhr.status === 429) { 4410 self.isLoading = false;
4411 self.showRateLimitPopup(); 4412 } else { 4413 self.onError(); 4414 } 4415 } 4416 }).done(function(data){ 4417 if (!data.id) { 4418 self.onError(); 4419 return; 4420 } 4421 4422 var productData = [themeHelper.toCamelCase(data)]; 4423 self.product = themeHelper.priceWithDiscount(productData, self.hasPriceWithDiscountPlugin)[0]; 4424 4425 var shouldSkipAutoSelected = false; 4426 4427 if (self.isAutoSelectVariantBySku) { 4428 var skuVariant = self.product.variants.find(function(variant) { 4429 return variant.sku === self.sku; 4430 }); 4431 4432 if (skuVariant) { 4433 if (self.isEmptyClickable || 4434 skuVariant.inventoryPolicy === "continue" || 4435 skuVariant.inventoryQuantity > 0) { 4436 self.applyVariant(skuVariant, true); 4437 themeHelper.EventBus.$emit('skuReady'); 4438 self.isLoading = false; 4439 return; 4440 } else { 4441 // è¥ sku åå¨ä½ä¸å¯è³¼è²·ï¼åè·³é第ä¸å款å¼é¸æ 4442 shouldSkipAutoSelected = true; 4443 } 4444 } else { 4445 // è¥ sku ä¸åå¨ï¼åè·³é第ä¸å款å¼é¸æ 4446 shouldSkipAutoSelected = true; 4447 } 4448 themeHelper.EventBus.$emit('skuReady'); 4449 } 4450 4451 if ( 4452 !shouldSkipAutoSelected && ( 4453 self.product.variants.length === 1 || 4454 liquidHelper.isFirstVariantSelected 4455 )) { 4456 var variant = self.product.variants.length === 1 ? self.product.variants[0] : self.firstValidVariant; 4457 if (!variant) { 4458 self.isLoading = false; 4459 return; 4460 } 4461 4462 if ( 4463 !self.isEmptyClickable && 4464 variant.inventoryPolicy === "deny" && 4465 variant.inventoryQuantity === 0 4466 ) { 4467 self.isLoading = false; 4468 return; 4469 } 4470 4471 self.applyVariant(variant, false); 4472 if (self.isImageColorsUsed) { // è¥æé¡¯ç¤ºè²ç¥¨ä¸æé é¸ç¬¬ä¸å款å¼çæ´æåç 4473 var firstValidColorIndex = self.colorOption.findIndex(function(item) { 4474 return item === variant.option1 4475 }); 4476 self.$emit('get-option-image', self.photoUrls[firstValidColorIndex].grande); 4477 } 4478 } 4479 4480 self.isLoading = false; 4481 }) 4482 }, 4483 applyVariant: function(variant, waitPhotosReady) { 4484 var self = this; 4485 this.currentVariant = variant; 4486 this.setChoose(variant); 4487 this.setDefaultOption(); 4488 4489 if (waitPhotosReady) { 4490 themeHelper.EventBus.$on('skuPhotosReady', function () { 4491 if (variant.photos && variant.photos.length > 0) { 4492 self.setVariantPhotos(); 4493 } 4494 }); 4495 } else { 4496 this.setVariantPhotos(); 4497 } 4498 }, 4499 toggleCurrentOption: function(key, value) { 4500 if (this.product.variants.length === 1) { 4501 return; 4502 } 4503 4504 if (this.shouldHideOtherVariants) { 4505 return; 4506 } 4507 4508 this.currentOption[key] = 4509 (this.currentOption[key] === value || value === 'null') ? null : value; 4510 var variantIndex = this.getVariantIndex(); 4511 if(variantIndex !== -1) { 4512 this.currentVariant = this.product.variants[variantIndex]; 4513 } else { 4514 this.currentVariant = null; 4515 } 4516 this.setChoose(this.product.variants[variantIndex]); 4517 if (this.currentOption[key] !== null) { 4518 var optionIndex = parseInt(key.replace('option', '')) - 1; 4519 appStoreSelectItemEvent(this.product, this.product.options[optionIndex], this.currentOption[key], this.currentVariant); 4520 } 4521 if (Object.values(this.currentOption).every(v => v === null) || this.currentVariant) { 4522 this.setVariantPhotos(); 4523 } 4524 }, 4525 setCurrentImageIndex: function(index) {
4526 this.currentImageIndex = this.getSelectedColorIndex(); 4527 if (this.currentImageIndex > -1) { 4528 var currentImageIndex = this.currentImageIndex; 4529 } else { 4530 var currentImageIndex = 0; 4531 } 4532 4533 this.$emit('get-option-image', this.photoUrls[currentImageIndex].grande); 4534 }, 4535 getOptionImageIndex: function(index) { 4536 this.currentImageIndex = index; 4537 this.$emit('get-option-image', this.photoUrls[index].grande); 4538 }, 4539 setDefaultOption: function() { 4540 var self = this; 4541 Object.keys(self.currentOption).forEach(function(optionKey) { 4542 self.currentOption[optionKey] = self.currentVariant[optionKey]; 4543 }); 4544 }, 4545 getVariantIndex: function() { 4546 var self = this; 4547 return self.product.variants.findIndex(function(variant, index) { 4548 var isVariant = true; 4549 Object.keys(self.currentOption).forEach(function(option) { 4550 if(variant[option] !== self.currentOption[option]){ 4551 isVariant = false; 4552 } 4553 }); 4554 return isVariant; 4555 }); 4556 }, 4557 // 篩é¸éè¤åé 4558 getUniqueVariant: function(variants) { 4559 return variants.filter(function(value, index, self) { 4560 return self.indexOf(value) === index; 4561 }); 4562 }, 4563 // åå¾å·²é¸åçcolor index 4564 getSelectedColorIndex: function() { 4565 var self = this; 4566 var optionIndex = _.indexOf(self.options, 'é¡è²') + 1; 4567 var color = self.currentOption['option' + optionIndex]; 4568 4569 return _.indexOf(self.colorOption, color); 4570 }, 4571 getOptions: function(optionKey, optionTypes) { 4572 var self = this; 4573 4574 // éé sku é é¸ä¸æå°æç variantï¼ååªé¡¯ç¤ºè©² variant ç option 4575 if (this.shouldHideOtherVariants) { 4576 var currentOptionValue = this.currentVariant[optionKey]; 4577 var isValid = true; 4578 4579 if (!this.isEmptyClickable) { 4580 isValid = this.currentVariant.inventoryQuantity === null || 4581 this.currentVariant.inventoryQuantity > 0 || 4582 this.currentVariant.inventoryPolicy === 'continue'; 4583 } 4584 4585 return [{ 4586 name: currentOptionValue, 4587 isValid: isValid 4588 }]; 4589 } 4590 4591 return optionTypes.map(function(optionType, index) { 4592 var isValid = true; 4593 4594 // é¸åºå å«ç®åtypeçvariant 4595 var matchVariants = self.product.variants.filter(function(variant) { 4596 return variant[optionKey] === optionType; 4597 }); 4598 // 篩é¸å·²å¾é¸type 4599 Object.keys(self.currentOption).forEach(function(currentOptionKey) { 4600 if(currentOptionKey !== optionKey){ 4601 matchVariants = matchVariants.filter(function(variant) { 4602 if(self.currentOption[currentOptionKey]) { 4603 return variant[currentOptionKey] === self.currentOption[currentOptionKey] 4604 } else { 4605 return true; 4606 } 4607 }); 4608 } 4609 }); 4610 // ç¡variant代表æ¤typeä¸å¯é¸ 4611 if(matchVariants.length === 0) { 4612 isValid = false; 4613 } 4614 4615 if (!self.isEmptyClickable) { 4616 isValid = false; 4617 matchVariants.find(function(item) { 4618 if (item.inventoryQuantity === null || item.inventoryQuantity > 0 || item.inventoryPolicy === 'continue') { 4619 isValid = true; 4620 } 4621 }); 4622 } 4623 4624 return { 4625 name: optionType, 4626 isValid: isValid 4627 } 4628 }); 4629 }, 4630 getVariantPhotos: function() { 4631 if (!this.currentVariant) { 4632 return null; 4633 } 4634 4635 if (!this.currentVariant.photos || this.currentVariant.photos.length === 0) { 4636 return { 4637 withSpecificVariant: !!this.currentVariant.option1, 4638 photos: [], 4639 variant: { 4640 id: this.currentVariant.id, 4641 sku: this.currentVariant.sku 4642 }, 4643 }; 4644 } 4645 4646 var sortedPhotos = this.currentVariant.photos.sort(function(prev, next) { 4647 return prev.position - next.position; 4648 }); 4649 4650 return { 4651 withSpecificVariant: !!this.currentVariant.option1, 4652 photos: sortedPhotos, 4653 variant: { 4654 id: this.currentVariant.id, 4655 sku: this.currentVariant.sku 4656 }, 4657 }; 4658 }, 4659 setVariantPhotos: function() { 4660 themeHelper.EventBus.$emit('updatePhotos', this.getVariantPhotos()); 4661 },
4662 cartQuantityCheck({quantity, limitQuantity, cartLimit, inventoryPolicy}){ 4663 if(quantity < 1){ 4664 return 'less_then_1'; 4665 } 4666 if(quantity > limitQuantity && limitQuantity !== null && inventoryPolicy !== "continue") { 4667 return 'over_product_quantity'; 4668 } 4669 if(quantity > cartLimit){ 4670 return 'over_cart_limit'; 4671 } 4672 if(isNaN(quantity)){ 4673 return 'not_a_number'; 4674 } 4675 return ''; 4676 }, 4677 changeQuantity({elType, errType, quantity, addToCart, quantityInput, limitQuantity, cartLimit}){ 4678 if(errType === ''){ 4679 if(elType === 'btn'){ 4680 quantityInput.val(quantity); 4681 quantityInput.trigger('change'); 4682 } 4683 var old = quantityInput.data("old-value"); 4684 if(quantity === old){ 4685 quantityInput.data("old-value", quantity); 4686 } 4687 // for GA 4688 addToCart.data("quantity", quantity); 4689 } else { 4690 var old_value = quantityInput.data("old-value"); 4691 if(elType === 'input'){ 4692 switch(errType){ 4693 case 'less_then_1': 4694 quantityInput.val(1); 4695 break; 4696 case 'over_product_quantity': 4697 quantityInput.val(limitQuantity); 4698 break; 4699 case 'over_cart_limit': 4700 quantityInput.val(cartLimit); 4701 break; 4702 default: 4703 quantityInput.val(old_value); 4704 break; 4705 } 4706 } 4707 this.cartQuantityMessage(errType) 4708 } 4709 }, 4710 cartQuantityMessage(errType) { 4711 switch(errType){ 4712 case 'less_then_1': 4713 window.msg(language["less_then_one"], 'warning').show(); 4714 break; 4715 case 'over_product_quantity': 4716 window.msg(language["over_product_quantity"], 'warning').show(); 4717 break; 4718 case 'over_cart_limit': 4719 window.msg(language["over_cart_limit"], 'warning').show(); 4720 break; 4721 case 'not_a_number': 4722 window.msg(language["please_enter_number"], 'warning').show(); 4723 break; 4724 default: 4725 break; 4726 } 4727 }, 4728 quantityChange(isPluSquantity){ 4729 if (!this.findVariant()) { 4730 return; 4731 } 4732 let errType = ''; 4733 let el = $('#product'); 4734 let cartLimit = this.getCartQuantityLimit(el); 4735 let limitQuantity = selectedVariant.inventoryQuantity; 4736 let inventoryPolicy = selectedVariant.inventoryPolicy; 4737 let quantityInput = el.find(".product_quantity input"); 4738 let quantity = parseInt($(quantityInput).val()); 4739 let addToCart = el.find('.addToCart'); 4740 isPluSquantity ? quantity += 1: quantity -= 1 4741 errType = this.cartQuantityCheck({quantity, limitQuantity, cartLimit, inventoryPolicy}); 4742 this.changeQuantity({ elType: 'btn', errType, quantity, addToCart, quantityInput, limitQuantity, cartLimit}); 4743 }, 4744 findVariant() { 4745 if (typeof selectedVariant === 'undefined' || !$.isNumeric(selectedVariant.id)) { 4746 window.msg(language["please_choose_product"], 'info').show(); 4747 return false; 4748 } else { 4749 return true; 4750 } 4751 }, 4752 getCartQuantityLimit(el) { 4753 return el.data('cart_quantity_limit'); 4754 }, 4755 isSellTimeAfterNow(sellTime) { 4756 if (!sellTime) return false; 4757 const saleTime = new Date(sellTime); 4758 const now = new Date(); 4759 return saleTime > now; 4760 }, 4761 } 4762 }); 4763 }); 4764</script>
4764 4765 4766<!-- cyb_snippet _variant_options_block_js end --> 4767 4768<!-- cyb_snippet components/variant_options/variant_options_block end --> 4769<!-- cyb_snippet _custom_icon start -->
4770<script src='//cdn-general.cybassets.com/frontend/shop/navIcon-3a2e378145f8a165.js' type='text/javascript'></script>
4770 4771
4772<script> 4773 (function() { 4774 const iconUrlMap = new Map([ 4775 ['custom_icon_type_home', null], 4776 ['custom_icon_type_tracking_items', null], 4777 ['custom_icon_type_account', null], 4778 ['custom_icon_type_cart', null], 4779 ['custom_icon_type_search', null], 4780 ['custom_icon_type_menu', null] 4781 ]); 4782 const elements = document.querySelectorAll('[data-icon-type]'); 4783 elements.forEach((element, index) => { 4784 const iconAttributes = element.getAttribute('data-icon-type'); 4785 4786 const uniqueId = `icon_${iconAttributes}_${index}_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`; 4787 element.id = uniqueId; 4788 window.renderNavCustomIcon(`#${uniqueId}`, { 4789 navIconStyle: "icon_type_default", 4790 customIconUrl: iconUrlMap.get(iconAttributes) || '', 4791 iconAttributes: iconAttributes, 4792 currentTemplate: "product", 4793 }); 4794 }); 4795 })(); 4796</script>
4796 4797 4798<!-- cyb_snippet _custom_icon end --> 4799
4800<script> 4801 // è¨å®æ¬¾å¼è³è¨/顯示款å¼è³è¨ 4802 function getURLParameter(name) { 4803 return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search) || [null, ''])[1].replace(/\+/g, '%20')) || null; 4804 } 4805 // sku_properties:忬¾å¼ç option pairs(ç¶åèªç³»,å¾ç«¯ drop 已翻è¯),äºä»¶ç¨ variantId æ¥è¡¨ 4806 var variantProperties = { 4807 "72436717": [] 4808 }; 4809 function addToWishListEvent(id, data) { 4810 try { 4811 if (appMarketAddToWishListEvent && data) { 4812 var dataSet = { 4813 name: "æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨", 4814 category: "è èä¿å¥", 4815 categories: ["è èä¿å¥,æ¯å©ä¿å¥,é¦é åå"], 4816 sku: data.sku, 4817 price: data.price, 4818 compare_at_price: data.compare_at_price, 4819 properties: variantProperties[id] || [], 4820 quantity: data.inventory_quantity, 4821 variant: data.variant, 4822 listName: "å®ç¢å細覽" || null, 4823 productId: 59699979, 4824 variantId: id, 4825 } 4826 appMarketAddToWishListEvent(dataSet) 4827 } 4828 } catch (e) { 4829 console.error(e); 4830 } 4831 } 4832 function removeFromWishListEvent(id, data) { 4833 try { 4834 if (appMarketRemoveFromWishListEvent && data) { 4835 var dataSet = { 4836 name: "æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨", 4837 category: "è èä¿å¥", 4838 categories: ["è èä¿å¥,æ¯å©ä¿å¥,é¦é åå"], 4839 sku: data.sku, 4840 price: data.price, 4841 compare_at_price: data.compare_at_price, 4842 properties: variantProperties[id] || [], 4843 quantity: data.inventory_quantity, 4844 variant: data.variant, 4845 listName: "å®ç¢å細覽" || null, 4846 productId: 59699979, 4847 variantId: id, 4848 } 4849 appMarketRemoveFromWishListEvent(dataSet) 4850 } 4851 } catch (e) { 4852 console.error(e); 4853 } 4854 } 4855 function isSellTimeAfterNow(sellTime) { 4856 if (!sellTime) return false; 4857 const saleTime = new Date(sellTime); 4858 const now = new Date(); 4859 return saleTime > now; 4860 } 4861 $(document).ready(function() { 4862 var ProductInfoObject = new ProductInfo() 4863 ProductInfoObject.init({ 4864 additionalPrice: "å è³¼å¹", 4865 sellFrom: "2025-09-30T13:15:00+08:00" , 4866 productId:"59699979", 4867 productTitle: "æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨", 4868 productPreOrder: "é è³¼åå", 4869 productExistingVariantsFirstId: '72436717', 4870 productNotificationEnabled: 'å·²ç»è¨è£è²¨éç¥', 4871 productNotifyMeWhenStockArrives: 'å·²å®å®ï¼è²¨å°éç¥æ', 4872 productOptionsSize: "0", 4873 productPleaseChooseProduct: "è«é¸æå忬¾å¼", 4874 generalInternetError: "網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç", 4875 productVariantsInfo: "72436717,,490.0,999,750.0,deny,0.0,,æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨ - ,cyberbiz,100", 4876 productLimitBuy: null, 4877 purchaseEligibility: {"required":false,"eligible":true,"status":"eligible"}, 4878 salesModePurchasable: true, 4879 }); 4880 // å忬¾å¼ 4881 var isUpcomingProduct = isSellTimeAfterNow("2025-09-30T13:15:00+08:00") && null; 4882 // åå§åï¼å徿¶è²»è ææåé çéç¥è¨å® 4883 var variantNotifications = {}; 4884 4885 // åå§åï¼æª¢æ¥ææååç庫åï¼å¤æ·è³¼ç©è»æéå庫åé¡¯ç¤ºçæ 4886 ProductInfoObject.checkButtonStatus(isUpcomingProduct); 4887 // å å ¥è³¼ç©è» open product modal 4888 ProductInfoObject.initOpenProductModal(); 4889 // ç«å³è³¼è²· mobile product modal 4890 ProductInfoObject.initMobileProductModal() 4891 // è¯çµ¡åå®¶ 4892 ProductInfoObject.initContactTheMerchant() 4893 // 貨å°éç¥ 4894 ProductInfoObject.initGoodsArrivalNotification(); 4895 ProductInfoObject.checkInWishList(window.$('.product-variant-id').val()) 4896 4897 ProductInfoObject.setUpDiscountsTag(); 4898 4899 4900 }) 4901 4902 const userAgent = navigator.userAgent; 4903 const isIOS = /iPad|iPhone|iPod/.test(userAgent) && !window.MSStream; 4904 const isLiff = /Line\/[\d.]+/i.test(userAgent); 4905 const $productButtonMobile = $('.product_button_mobile'); 4906 4907 if ($productButtonMobile.length && isIOS && isLiff) { 4908 $productButtonMobile.addClass('is-ios-liff'); 4909 } 4910</script>
4910 4911 4912 4913<div id="product_description" class="product_description"> 4914 <div class="desc_sections"> 4915 <ul class="qk-bg--theme_bg qk-display--flex qk-mg--0 qk-pd--0 qk-bd--default qk-bd--product_border qk-bd_r--none"> 4916 <!-- ååä»ç´¹ --> 4917 4918 <li class="qk-flex--1"> 4919 <a href="#desc_section_1" class="scroll active qk-text--text qk-fs--title qk-display--il_bk qk-text--center qk-w--100 qk-vert--bottom"> 4920 ååä»ç´¹ 4921 </a> 4922 </li> 4923 4924 <!-- è¦æ ¼èªªæ --> 4925 4926 <li class="qk-flex--1 qk-bd--product_border"> 4927 <a href="#desc_section_2" class="scroll qk-text--text qk-fs--title qk-display--il_bk qk-text--center qk-w--100 qk-vert--bottom"> 4928 <div>è¦æ ¼èªªæ</div> 4929 </a> 4930 </li> 4931 4932 <!-- ééæ¹å¼ --> 4933 4934 <li class="qk-flex--1 qk-bd--product_border"> 4935 <a href="#desc_section_3" class="scroll qk-text--text qk-fs--title qk-display--il_bk qk-text--center qk-w--100 qk-vert--bottom"> 4936 <div>ééæ¹å¼</div> 4937 </a> 4938 </li> 4939 4940 <!-- ç¥¨å¸æ³¨æäºé --> 4941 4942 <!-- å å ¥è³¼ç©è»modal --> 4943 4944 <li class="add-to-cart-container qk-flex--1 qk-bd--product_border"> 4945 <a 4946 href="#" 4947 id="add_to_cart" 4948 class="open_product_modal qk-btn qk-btn--primary qk-btn--lg qk-pos--abs qk-r--0 qk-display--il_bk qk-text--center qk-w--100" 4949 data-id="59699979" 4950 data-handle="aquavitality"> 4951 <div>å å ¥è³¼ç©è»</div> 4952 </a> 4953 <button class="btn btn_not_sale hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-fs--title qk-pos--abs qk-r--0" type="button"> 4954 å°æªéè³£ 4955 </button> 4956 <button class="btn btn_login_to_view hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-fs--title qk-pos--abs qk-r--0" type="button"> 4957 ç»å ¥æ¥çè³æ ¼ 4958 </button> 4959 <button class="btn btn_not_eligible hidden qk-btn qk-btn--soldout qk-btn--lg qk-pd--0 qk-fs--title qk-pos--abs qk-r--0" type="button"> 4960 è³¼è²·è³æ ¼ä¸ç¬¦ 4961 </button> 4962 4963 <a 4964 href="#" 4965 id="message_to_buy" 4966 class="open_messagebuy_modal qk-btn qk-btn--primary qk-btn--lg qk-pos--abs qk-r--0 qk-display--il_bk qk-text--center qk-w--100" 4967 data-toggle="modal" 4968 data-target="#messagebuy-Modal"> 4969 <div>è¯çµ¡åºå®¶</div> 4970 </a> 4971 4972 </li> 4973 4974 </ul> 4975 </div> 4976 <div class="desc_body"> 4977 <div id="ckeditor"> 4978 4979 <div id="desc_section_1" class="desc_section qk-pd_t--2"> 4980 <h5 class="section-heading qk-text--heading qk-fs--hd2 qk-bd_l--default qk-bd--heading qk-pd_l--05">ååä»ç´¹</h5> 4981 <div class="ckeditor qk-mg_t--1"><h2 data-end="142" data-section-id="19sax68" data-start="124"><span style="font-size:24px;"><strong>ð§ æ¯å¤©ä¸é¡ï¼å¾æ¥å¸¸éå§ç §é¡§</strong></span></h2> 4982 4983<p data-end="174" data-start="144"><span style="font-size:16px;"><strong>䏿忰´ã常å乾飼æï¼ä»¥åç齡æ¯å©ï¼é½æ´éè¦å¹³æå¤ä¸é»ç §é¡§ã</strong></span></p> 4984 4985<p data-end="251" data-start="176"><span style="font-size:26px;"><strong data-end="251" data-start="176">é »å°¿ãè¡å°¿ãæå°¿ãå°¿çµç³ ãèè±ç¼ç </strong></span><span style="font-size:18px;"><strong data-end="251" data-start="176">ç°å¸¸çæ³å°¿åé¡ï¼</strong></span><span style="font-size:20px;"><strong data-end="251" data-start="176">å¨è²åªèº«ä¸ä¸¦ä¸å°è¦ï¼</strong></span></p> 4986 4987<p data-end="251" data-start="176"><span style="font-size:14px;"><strong data-end="251" data-start="176">å°¤å ¶</strong></span><span style="font-size:20px;"><strong data-end="251" data-start="176">(</strong></span><span style="font-size:24px;"><strong data-end="251" data-start="176">å ¬è²</strong></span><span style="font-size:20px;"><strong data-end="251" data-start="176">)</strong></span><span style="font-size:14px;"><strong data-end="251" data-start="176">æ´éè¦çææ¥å¸¸æ³å°¿ä¿é¤ã許å¤é£¼ä¸»å¾å¾çå°åºç¾æé¡¯è®åæï¼æéå§éè¦æ¯å©çæ³å°¿å¥åº·ã</strong></span></p> 4988 4989<p data-end="285" data-start="253"><span style="font-size:16px;"><strong>å è¶³ç飲水ãåè¡¡ç飲é£èæ¥å¸¸çé¤è£å ï¼æ¯ç¶ææ³å°¿å¥åº·çéè¦åºç¤ã</strong></span></p> 4990 4991<p data-end="367" data-start="287"><span style="font-size:24px;"><strong>
4991æ·¨æ 寶</strong></span><span style="font-size:16px;"><strong>ç²¾é¸èè¶èèåç©ãå°å©åçç±½èåç²èè²å ¬è±èåç²çå¤å çé¤ï¼æ¡ç¨ 100% ç¡è 製æçè»è³ªå¼é ï¼å¥½å ¥å£ãå¯ç´æ¥é¤µé£ææé£ï¼</strong></span></p> 4992 4993<p><span style="font-size:16px;"><strong>ä¹å¯ä½çºæ¥å¸¸çåµé¶é£ï¼è®æ¯å¤©è£å æ´è¼é¬ï¼éªä¼´æ¯å©é¤ææ¯æ¥ä¿é¤çå¥½ç¿æ £ã</strong></span></p> 4994 4995<p>âââââââââââââââââ<br> 4996<span style="font-size:22px;"><strong>ð¿ é鵿å</strong></span></p> 4997 4998<ul> 4999 <li data-end="540" data-section-id="1ktg72w" data-start="528"> </li> 5000 <li data-end="556" data-section-id="1ziwzf" data-start="541"> </li> 5001 <li data-end="568" data-section-id="10o94v5" data-start="557"> </li> 5002 <li data-end="587" data-section-id="1ys9is9" data-start="569"> </li> 5003 <li data-end="600" data-section-id="naw8mh" data-start="588"> </li> 5004 <li data-end="617" data-section-id="uqc00q" data-start="601"> </li> 5005 <li data-end="640" data-section-id="soyxzl" data-start="618"> </li> 5006</ul> 5007 5008<p>- <span style="font-size:14px;"><strong>èè¶èèåç©ââæå¶ç´°èéèæ³å°¿éï¼é使æé¢¨éªï¼ð ç¶ææ³å°¿éå¥åº·</strong></span>ã</p> 5009 5010<p><br> 5011- <span style="font-size:14px;"><strong>å°å©åçç±½èåç²ââç¶ææ³å°¿ç³»çµ±æ£å¸¸åè½ï¼æ¹åæå°¿ä¸é ï¼ ç¶æé æ¢å¥½çæ ï¼ð ç¶ææ³å°¿ç³»çµ±æ£å¸¸æ©è½</strong></span>ã</p> 5012 5013<p><br> 5014-<span style="font-size:14px;"><strong> è²å ¬è±èåç²ââ天ç¶èæ¬ï¼å¹«å©ä»£è¬å¤é¤æ°´åèå»¢ç©æ¸è¼è èè² æ ï¼ð¼ ç¶ææ£å¸¸ä»£è¬</strong></span>ã</p> 5015 5016<p><br> 5017- <span style="font-size:14px;"><strong>è»æ²¹ç²ï¼å« DHAï¼+ éæ²¹ç²ââOmega-3 å¤©ç¶æç¼çï¼ä¿è·è èçµç¹ï¼ð è£å Omega-3 çé¤</strong></span>ã</p> 5018 5019<p><br> 5020-<span style="font-size:14px;"><strong> Bio5 Ultra å¤èè¡èé£ââç¶æè ¸éå¥åº·èå ¨èº«å ç«åï¼ð§¬ ç¶ææ¶åéå¥åº·</strong></span>ã</p> 5021 5022<p><br> 5023<span style="font-size:14px;"><strong>- BOKASHI å ¨ç¼é µçé¤ç²ââç¶åç¶çç´ ç¤¦ç©è³ªï¼æ¯ææ´é«ä»£è¬ï¼ð¾ è£å å¤å ç¶çç´ è礦ç©è³ª</strong></span>ã</p> 5024 5025<p><br> 5026- <span style="font-size:14px;"><strong>çç£ºé ¸ + æå¯¡ç³ + è¤æ¹ççèââç¶æå¿èèè ¸éèå¢å¹³è¡¡ï¼â¤ï¸ å¤©å¤©ç §é¡§å¿èå¥åº·ï¼ç¶æè ¸éèå¢åè«§Ë</strong></span>ã</p> 5027 5028<p> </p> 5029 5030<p>âââââââââââââââââ<br> 5031ð å»ºè°æ¯æ¥ç¨é</p> 5032 5033<p>é«é 5 kg 以ä¸ãâãæ¯æ¥ 2 ç²<br> 5034é«é 6â10 kgããâãæ¯æ¥ 4 ç²<br> 5035é«é 11â20 kgãâãæ¯æ¥ 6 ç²<br> 5036é«é 20 kg 以ä¸ãâãæ¯æ¥ 8 ç²</p> 5037 5038<p>è»è³ªå¼é ï¼å¯ç´æ¥é¤µé£ææ¥åã<strong>ç¬è²çé©ç¨</strong>ã</p> 5039 5040<p>âââââââââââââââââ<br> 5041â ï¸ ä½¿ç¨åè«æ³¨æ</p> 5042 5043<p>- æ¬åçºå¯µç©é£åï¼éè¥åï¼ä¸å¯æ¿ä»£ä¸»é£<br> 5044- å«ç奶ã大è±ãéé¡ãèµè±ç±½ãäºéº»ä»ç±½åå ¶è£½å<br> 5045- æé«ççæ ®è«å 諮詢ç¸é«å¸«</p> 5046 5047<p>âââââââââââââââââ</p> 5048 5049<h2 data-end="449" data-section-id="1uv5v70" data-start="421">ð¿<span style="font-size:22px;"> æå卿çä¸åªæ¯ç¢åï¼æ´æ¯å¨ææ¯å©çæ¯ä¸å¤©ã</span></h2> 5050 5051<p data-end="471" data-start="451">æ¯ä¸æ¹æ¯æ¯è»ç¢åï¼çç¶éå質æéå¾åºè²¨ã</p> 5052 5053<p data-end="520" data-start="473">å¾åææé¸ãé æ¹è¨è¨å°çç¢è£½ç¨ï¼æåå æå好æ¯ä¸åç´°ç¯ï¼åªçºæä¾å®å¿ãå¼å¾ä¿¡è³´çæ¥å¸¸çé¤è£å ã</p> 5054 5055<p data-end="531" data-start="522"><strong data-end="531" data-start="522">éæè²¨æé</strong></p> 5056 5057<p data-end="577" data-start="533">æ¬åå屬寵ç©é£åï¼çºç¶è·ååå質èé£åå®å ¨ï¼ååç¶æå°å¾æä¸é©ç¨éè³æéæè²¨ï¼æ¬è«è¦è«ã</p> 5058 5059<p style="margin-bottom:11px"> </p> 5060</div> 5061 </div> 5062 5063 5064 <div id="desc_section_2" class="desc_section qk-pd_t--2"> 5065 <h5 class="section-heading qk-text--heading qk-fs--hd2 qk-bd_l--default qk-bd--heading qk-pd_l--05">è¦æ ¼èªªæ</h5> 5066 <div class="ckeditor qk-mg_t--1"><p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span style='font-family:"æ°ç´°æé«",serif'>ååï¼æ·¨æ 寶å¼å¼é </span></span></span></p> 5067 5068<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span style='font-family:"æ°ç´°æé«",serif'>æåï¼é±¸éç²ãç麥ç²ãå ¨è奶ç²ãçæ²¹ãåçç²(åçã麥è½ç³ç²¾ãç米澱ç²)ãéåºæ¹è±æ¼¿ç²ãæ°´ãéåºæ¹å¤§è±åµç£·èãBOKASHIå ¨ç¼é µçé¤ç²ã</span><span style='font-family:"æ°ç´°æé«",serif'>èµè±ç±½æ²¹ãä¹¾çèæ¼¿ãäºéº»ç±½ãé±éãä¹¾çªèææ¸£ãå¤é é µæ¯ãè«æ°´èè¿ç²ãç¢³é ¸é£ãæ°¯åéãé¹½ãDL-èèºé ¸ãæ°¯åè½é¹¼ã礦ç©è³ªã乾海帶ç²ãç¶åç¶çç´ (ç¶çç´ Aãç¶çç´ D<sub>3</sub>ãç¶çç´ Eãè¸é¹¼é ¸ãæ¬å¤é ¸é£ãç¶çç´ B<sub>6</sub>ãç¶çç´ B<sub>2</sub>ãèé ¸ãçç©ç´ ãç¶çç´ B<sub>12</sub>)ãæª¸æª¬é ¸ãä¹³é ¸ãçµ²èèåç©ãçç£ºé ¸ãé µæ¯ç¼é µç©ãè¤æ¹ççè</span><span style='font-family:"æ°ç´°æé«",serif'>ããå¤èè¡èé£è¤åç©ãç¾åç«å±±å²©å¤èãé µæ¯èåç©(å«Î²-è¡èé£)ããè»æ²¹ç²(å«DHA)ã</span><span style='font-family:"æ°ç´°æé«",serif'>ä¹¾ç¥è¡èç³æ¼¿ãDHAè»æ²¹ãè¾ç¯åºä¸äºé ¸éæ¾±ç²ãD-çé²é(çå³å)ãèµè±æ²¹ãæå£è¡é ¸é(ææ°§åå)ãèèªé ¸çæ²¹é ¯ãå¤ç£·é ¸éãç£·é ¸é£ãé¦æãæ··åæ¿ç¸®çè²é(ææ°§åå)ãèµè±åµç£·èãL-æå£è¡é ¸æ£æ«é ¸é ¯(ææ°§åå)</span><span style='font-family:"æ°ç´°æé«",serif'>ã</span><span style='font-family:"æ°ç´°æé«",serif'>ãéæ²¹ç²</span><span style='font-family:"æ°ç´°æé«",serif'>ã</span><span style='font-family:"æ°ç´°æé«",serif'>麥è½ç³æ¼¿ãéæ²¹ãé ªèç½éãèèªé ¸çæ²¹é ¯(æ¤ç©æ§)ãä¹³é ¸ç¡¬èé ¸éãæ··åæ¿ç¸®çè²é(ææ°§åå)</span><span style='font-family:"æ°ç´°æé«",serif'>ã</span><span style='font-family:"æ°ç´°æé«",serif'>ãèè¶èèåç©(èè¶èèåç©ã麥è½ç³ç²¾)ãç¶çç´ E(ç¶çç´ Eãä¹¾ç¥è¡èç³æ¼¿ãè¾ç¯åºä¸äºé ¸éæ¾±ç²ãäºæ°§åç½)ãè²å ¬è±èåç²(è²å ¬è±ã麥è½ç³ç²¾)ãå°å©åçç±½èåç²(åçç±½ã麥è½ç³ç²¾)ãæå¯¡ç³ãé µæ¯èåç©(å«Î²-è¡èé£) </span></span></span></p> 5069 5070<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span style='font-family:"æ°ç´°æé«",serif'>æ·¨éï¼33å ¬å /è¢(ç´30ç²)</span></span></span></p> 5071 5072<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span style='font-family:"æ°ç´°æé«",serif'>é©ç¨å¯µç©ç¨®é¡ï¼ç¬ãè²</span></span></span></p> 5073 5074<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span style='font-family:"æ°ç´°æé«",serif'>é£ç¨æ¹å¼ï¼å¯ç´æ¥é¤µé£ææ¥å餵é£ã</span></span></span></p> 5075 5076<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span style='font-family:"æ°ç´°æé«",serif'>建è°ç¨éï¼</span></span></span></p> 5077 5078<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span lang="EN-US" style='font-family:"æ°ç´°æé«",serif'>5</span><span style='font-family:"æ°ç´°æé«",serif'>å ¬æ¤(å«)以ä¸ï¼æ¯æ¥2ç²</span></span></span></p> 5079 5080<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span lang="EN-US" style='font-family:"æ°ç´°æé«",serif'>6-10</span><span style='font-family:"æ°ç´°æé«",serif'>å ¬æ¤ï¼æ¯æ¥4ç²</span></span></span></p> 5081 5082<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span lang="EN-US" style='font-family:"æ°ç´°æé«",serif'>11-20</span><span style='font-family:"æ°ç´°æé«",serif'>å ¬æ¤ï¼æ¯æ¥6ç²</span></span></span></p> 5083 5084<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span lang="EN-US" style='font-family:"æ°ç´°æé«",serif'>20</span><span style='font-family:"æ°ç´°æé«",serif'>å ¬æ¤ä»¥ä¸ï¼æ¯æ¥8ç²</span></span></span></p> 5085 5086<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span style='font-family:"æ°ç´°æé«",serif'>注æäºé ï¼</span></span></span></p> 5087 5088<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span lang="EN-US" style='font-family:"æ°ç´°æé«",serif'>1.</span><span style='font-family:"æ°ç´°æé«",serif'>æ¬ç¢åç¡æ³æ¿ä»£ä¸»é£ã</span></span></span></p> 5089 5090<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span lang="EN-US" style='font-family:"æ°ç´°æé«",serif'>2.</span><span style='font-family:"æ°ç´°æé«",serif'>æ¬ç¢åçºå¯µç©é£åèéåç©ç¨è¥åï¼è¥æé«çç¸éåé¡ï¼è«å 諮詢ç¸é«å¸«ã</span></span></span></p> 5091 5092<p><span style="font-size:12pt"><span style="font-family:Calibri,sans-serif"><span lang="EN-US" style='font-family:"æ°ç´°æé«",serif'>3.</span><span style='font-family:"æ°ç´°æé«",serif'>æ¬ç¢å嫿ç奶ã大è±ãéé¡ã種åé¡(èµè±ç±½ãäºéº»ä»ç±½)åå ¶è£½åã</span></span></span><br> 5093<br>
5094<span style="color:#e74c3c;"><span style="font-size:20px;"><b data-index-in-node="0" data-path-to-node="8,0">ãå çºå¨æï¼æä»¥æåæ´å´æ ¼ã</b> æ¯ä½æ¯ç¸æ¯åª½æ¶å°çæ¯æ¯è»ï¼é½æ¯ç¶éå´æ ¼åç®¡çæ°é®®æ£åãçºé¿å äº¤åæ±¡æé¢¨éªï¼<b data-index-in-node="52" data-path-to-node="8,0">ç¢åä¸ç¶éå°å¾å°ä¸é©ç¨ç¶²è³¼éè³æé貨</b>ãæè¬æ¨å°æ¯å©å¥åº·å®å ¨çé«è«èæ¯æã</span></span></p> 5095</div> 5096 </div> 5097 5098 5099 <div id="desc_section_3" class="desc_section qk-pd_t--2"> 5100 <h5 class="section-heading qk-text--heading qk-fs--hd2 qk-bd_l--default qk-bd--heading qk-pd_l--05">ééæ¹å¼</h5> 5101 <div class="ckeditor qk-mg_t--1"><p>-ééæ¹å¼-</p> 5102 5103<p>711.å ¨å®¶ èç¾å¯è¶ åééï¼æé»è²ãæ°ç«¹ãå® é éçå® é éé</p> 5104 5105<p><br> 5106-å°ç£é¢å³¶ä¸é éç¯å-</p> 5107</div> 5108 </div> 5109 5110 5111 </div> 5112 </div> 5113 <div id="product-recommendation"></div> 5114</div> 5115
5116<script> 5117 $(document).ready(function() { 5118 // åå說æä»ç´¹æ¨ç±¤ 5119 $(".desc_sections li").on('click', function() { 5120 $(this).children().addClass('active'); 5121 $(this).siblings().children().removeClass('active'); 5122 }); 5123 5124 // æ»åè¨ç½® 5125 var prevScrollPos = window.pageYOffset; 5126 var prevScrollInformationPos = window.pageYOffset; 5127 $(window).on('scroll load resize', function(e) { 5128 var headerHeight = $("#header").height() 5129 var desc_sections = $(".desc_sections"); 5130 var desc_section_list = $(".desc_section"); 5131 var descSectionHeight = $(".desc_sections").height() 5132 var descSectionTop = $(".desc_sections").offset().top - headerHeight 5133 var product_window = $(this); 5134 var currentScrollPos = window.pageYOffset; 5135 5136 // æ»ååºå®ç¢å說æ 5137 if (product_window.scrollTop() > descSectionTop) { 5138 desc_sections.find("ul").css({"top": 0}); 5139 if (currentScrollPos > prevScrollPos && product_window.scrollTop() > descSectionTop + headerHeight) { 5140 desc_sections 5141 .stop() 5142 .addClass("desc_sections_hold") 5143 .css({"min-height": descSectionHeight}) 5144 .find("ul") 5145 .css({"top": 0}); 5146 } else if (prevScrollPos > currentScrollPos) { 5147 desc_sections 5148 .stop() 5149 .addClass("desc_sections_hold") 5150 .css({"min-height": descSectionHeight}) 5151 .find("ul") 5152 .css({"top": headerHeight}); 5153 } else { 5154 prevScrollPos = 0; 5155 } prevScrollPos = currentScrollPos; 5156 if ($(window).width() < 768) { 5157 $("body").css("padding-bottom", "68px"); 5158 } 5159 } else { 5160 prevScrollPos = 0; 5161 desc_sections.stop().removeClass("desc_sections_hold") 5162 if ($(window).width() < 768) { 5163 $("body").css("padding-bottom", "68px"); 5164 } 5165 } 5166 5167 // é»é¸ç¢åèªªææ»å 5168 $(".desc_sections a.scroll").bind("click", function(event) { 5169 var targetScrollTop = parseInt($($(this).attr("href")).offset().top - descSectionHeight + 1); 5170 if (targetScrollTop > window.scrollY + 1) { 5171 $("html, body").stop().animate({ 5172 scrollTop: targetScrollTop 5173 }, 300); 5174 } else { 5175 $("html, body").stop().animate({ 5176 scrollTop: targetScrollTop - headerHeight 5177 }, 300); 5178 } 5179 }); 5180 5181 // 顯示ç¶åç¢å說æ 5182 if (currentScrollPos > prevScrollInformationPos) { 5183 $.each(desc_section_list, function(index, desc_section) { 5184 var desc_sectionTop = $(desc_section).offset().top - descSectionHeight - 1 5185 var desc_sectionHeight = $(desc_section).height() 5186 var current_desc_section = $("a.scroll[href$='" + $(desc_section).attr("id") + "']"); 5187 if (product_window.scrollTop() > desc_sectionTop || index === 0) { 5188 current_desc_section 5189 .stop() 5190 .addClass('active') 5191 .parent() 5192 .siblings() 5193 .find("a") 5194 .removeClass('active'); 5195 } else { 5196 current_desc_section.removeClass('active'); 5197 } prevScrollInformationPos = currentScrollPos; 5198 }); 5199 } else { 5200 $.each(desc_section_list, function(index, desc_section) { 5201 var desc_sectionTop = $(desc_section).offset().top - descSectionHeight - 1 5202 var desc_sectionHeight = $(desc_section).height() 5203 var current_desc_section = $("a.scroll[href$='" + $(desc_section).attr("id") + "']"); 5204 if (product_window.scrollTop() + headerHeight > desc_sectionTop) { 5205 current_desc_section 5206 .stop() 5207 .addClass('active') 5208 .parent() 5209 .siblings() 5210 .find("a") 5211 .removeClass('active'); 5212 } else { 5213 current_desc_section.removeClass('active'); 5214 } 5215 }); 5216 prevScrollInformationPos = currentScrollPos; 5217 } 5218 }); 5219 }) 5220</script>
5220 5221 5222 5223 5224 5225 5226<div id="related-products" class="qk-pos--rel"> 5227 5228 5229 5230 5231 5232 5233 <h5 class="section-heading qk-text--heading qk-fs--hd2 qk-bd_l--default qk-bd--heading qk-pd_l--05">ç¸éåå</h5> 5234 5235 <!-- cyb_snippet swiper_product start --> 5236<div id="swiper_products" class="qk-pos--rel"> 5237 <div class="swiper swiper-container swiper_products GTM-area"> 5238 <div class="swiper-wrapper"> 5239 5240 5241 5242 5243 5244 5245 <div class="swiper-slide product qk-text--start" data-sold-out="false" data-sales-mode-purchasable="true"> 5246 5247 <div class="integrated_product_labels qk-pos--abs qk-text--left"> 5248 5249 </div> 5250 5251 <div class="product_image default_scale"> 5252 <div class="product_mask"></div> 5253 <a class="productClick img-flex GTM-info qk-h--100 qk-display--flex qk-justify--center qk-align--center" 5254 href="/products/kelp-care-powder" 5255 data-brand="æ¯æ¯è»" 5256 data-category="æ½çç²" 5257 data-collection_id="" 5258 data-id="55967163" 5259 data-variant-id="67378187" 5260 data-list="ç¸éåå" 5261 data-name="ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè»" 5262 data-position="1" 5263 data-price="450.0"> 5264 <img data-src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU1OTY3MTYzLzE3ODM0ODUyMzFfNmQyMzJhZmMzY2FkNjFiMmI3YjEucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=e0e1e57a25bee73e" 5265 alt="ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè»" class="swiper-lazy feature-image" /> 5266 5267 5268 5269 <div class="swiper-lazy-preloader-white"></div> 5270 </a> 5271 </div> 5272 5273 <div class="product_title qk-of--hidden"> 5274 <a class="qk-text--heading" 5275 href="/products/kelp-care-powder"> 5276 ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè» 5277 </a> 5278 </div> 5279 5280 5281 5282 5283 <div class="product_price qk-text--price qk-fs--title"><span class="money_tag" data-currency-from="TWD" data-amount="450.0">NT$450</span></div> 5284 5285 5286 <div class="product_btn qk-text--center"> 5287 5288 <button 5289 type="button" 5290 class="btn btn-cart qk-btn qk-btn--primary qk-btn--lg" 5291 data-handle="kelp-care-powder" 5292 data-collection="" 5293 data-brand="æ¯æ¯è»" 5294 data-category="æ½çç²" 5295 data-collection_id="" 5296 data-id="55967163" 5297 data-list="ç¸éåå" 5298 data-name="ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè»" 5299 data-photo="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU1OTY3MTYzLzE3ODM0ODUyMzFfNmQyMzJhZmMzY2FkNjFiMmI3YjEucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=e0e1e57a25bee73e" 5300 data-price="450.0" 5301 data-position="1" 5302 data-spread-size="67378187,,450.0,,690.0,deny,0.0,1å ¥,ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè» - 1å ¥,,|68954622,,1290.0,,2070.0,deny,0.0,3å ¥,ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè» - 3å ¥,,|68954623,,2550.0,,4140.0,deny,0.0,6å ¥,ãæ¯æ¯è»ã天ç¶è¤è»æ½çç²ï½æèæå£èï½ç¬è²é©ç¨æ½çä¿å¥ç²ï½å大西æ´Ascophyllum泡èè» - 6å ¥,," 5303 5304 data-sku="" 5305 5306 5307 > 5308 <span class="text">å å ¥è³¼ç©è»</span> 5309 </button> 5310 5311 <button type="button" class="btn btn_not_sale hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled>
5312 <span class="text">å°æªéè³£</span> 5313 </button> 5314 <button type="button" class="btn btn_login_to_view hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5315 <span class="text">ç»å ¥æ¥ç</span> 5316 </button> 5317 <button type="button" class="btn btn_not_eligible hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5318 <span class="text">è³æ ¼ä¸ç¬¦</span> 5319 </button> 5320 </div> 5321 5322 </div> 5323 5324 5325 5326 5327 5328 <div class="swiper-slide product qk-text--start" data-sold-out="false" data-sales-mode-purchasable="true"> 5329 5330 <div class="integrated_product_labels qk-pos--abs qk-text--left"> 5331 5332 </div> 5333 5334 <div class="product_image default_scale"> 5335 <div class="product_mask"></div> 5336 <a class="productClick img-flex GTM-info qk-h--100 qk-display--flex qk-justify--center qk-align--center" 5337 href="/products/uyaby-è±ç°é´¨ççç©å ·-æç¼è²å°é»é´¨-éæ°£ä¸ææ²»ç¶²å¸-坿©æ´èå¬ä¸è®å½¢-寵ç©ç©å ·æ¨è¦" 5338 data-brand="è±ç°é´¨" 5339 data-category="" 5340 data-collection_id="" 5341 data-id="56307923" 5342 data-variant-id="67824335" 5343 data-list="ç¸éåå" 5344 data-name="ãU&YABY è±ç°é´¨ãççç©å · æç¼è²å°é»é´¨ éæ°£ä¸ææ²»ç¶²å¸ 坿©æ´èå¬ä¸è®å½¢ 寵ç©ç©å ·æ¨è¦" 5345 data-position="2" 5346 data-price="490.0"> 5347 <img data-src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU2MzA3OTIzLzE3ODY1MDIzMTZfNmMwZGJkOGNjZWJhMmVjZmM0NjYuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=1db33bc7616b0ce5" 5348 alt="ãU&YABY è±ç°é´¨ãççç©å · æç¼è²å°é»é´¨ éæ°£ä¸ææ²»ç¶²å¸ 坿©æ´èå¬ä¸è®å½¢ 寵ç©ç©å ·æ¨è¦" class="swiper-lazy feature-image" /> 5349 5350 5351 5352 <div class="swiper-lazy-preloader-white"></div> 5353 </a> 5354 </div> 5355 5356 <div class="product_title qk-of--hidden"> 5357 <a class="qk-text--heading" 5358 href="/products/uyaby-è±ç°é´¨ççç©å ·-æç¼è²å°é»é´¨-éæ°£ä¸ææ²»ç¶²å¸-坿©æ´èå¬ä¸è®å½¢-寵ç©ç©å ·æ¨è¦"> 5359 ãU&YABY è±ç°é´¨ãççç©å · æç¼è²å°é»é´¨ éæ°£ä¸ææ²»ç¶²å¸ 坿©æ´èå¬ä¸è®å½¢ 寵ç©ç©å ·æ¨è¦ 5360 </a> 5361 </div> 5362 5363 5364 5365 5366 <div class="product_price qk-text--price qk-fs--title"><span class="money_tag" data-currency-from="TWD" data-amount="490.0">NT$490</span></div> 5367 5368 5369 <div class="product_btn qk-text--center"> 5370 5371 <button 5372 type="button" 5373 class="btn btn-cart qk-btn qk-btn--primary qk-btn--lg" 5374 data-handle="uyaby-è±ç°é´¨ççç©å ·-æç¼è²å°é»é´¨-éæ°£ä¸ææ²»ç¶²å¸-坿©æ´èå¬ä¸è®å½¢-寵ç©ç©å ·æ¨è¦" 5375 data-collection="" 5376 data-brand="è±ç°é´¨" 5377 data-category="" 5378 data-collection_id="" 5379 data-id="56307923" 5380 data-list="ç¸éåå" 5381 data-name="ãU&YABY è±ç°é´¨ãççç©å · æç¼è²å°é»é´¨ éæ°£ä¸ææ²»ç¶²å¸ 坿©æ´èå¬ä¸è®å½¢ 寵ç©ç©å ·æ¨è¦" 5382 data-photo="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU2MzA3OTIzLzE3ODY1MDIzMTZfNmMwZGJkOGNjZWJhMmVjZmM0NjYuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=1db33bc7616b0ce5" 5383 data-price="490.0" 5384 data-position="2" 5385 data-spread-size="67824335,,490.0,2,650.0,deny,0.0,,ãU&YABY è±ç°é´¨ãççç©å · æç¼è²å°é»é´¨ éæ°£ä¸ææ²»ç¶²å¸ 坿©æ´èå¬ä¸è®å½¢ 寵ç©ç©å ·æ¨è¦ - ,cyberbiz," 5386 5387 data-sku="" 5388 5389 5390 >
5391 <span class="text">å å ¥è³¼ç©è»</span> 5392 </button> 5393 5394 <button type="button" class="btn btn_not_sale hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5395 <span class="text">å°æªéè³£</span> 5396 </button> 5397 <button type="button" class="btn btn_login_to_view hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5398 <span class="text">ç»å ¥æ¥ç</span> 5399 </button> 5400 <button type="button" class="btn btn_not_eligible hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5401 <span class="text">è³æ ¼ä¸ç¬¦</span> 5402 </button> 5403 </div> 5404 5405 </div> 5406 5407 5408 5409 5410 5411 <div class="swiper-slide product qk-text--start" data-sold-out="false" data-sales-mode-purchasable="true"> 5412 5413 <div class="integrated_product_labels qk-pos--abs qk-text--left"> 5414 5415 </div> 5416 5417 <div class="product_image default_scale"> 5418 <div class="product_mask"></div> 5419 <a class="productClick img-flex GTM-info qk-h--100 qk-display--flex qk-justify--center qk-align--center" 5420 href="/products/è±ç°é´¨æç¼è²çè«éç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·" 5421 data-brand="è±ç°é´¨" 5422 data-category="" 5423 data-collection_id="" 5424 data-id="56365991" 5425 data-variant-id="67905218" 5426 data-list="ç¸éåå" 5427 data-name="ãU&YABY è±ç°é´¨ãæç¼è²çè«éç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·" 5428 data-position="3" 5429 data-price="490.0"> 5430 <img data-src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU2MzY1OTkxLzE3ODY1MDI2MzVfZTMzMDA3Yzk2YWFhNjg0MTQ0YTcuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=7eef90671c32875d" 5431 alt="ãU&YABY è±ç°é´¨ãæç¼è²çè«éç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·" class="swiper-lazy feature-image" /> 5432 5433 5434 5435 <div class="swiper-lazy-preloader-white"></div> 5436 </a> 5437 </div> 5438 5439 <div class="product_title qk-of--hidden"> 5440 <a class="qk-text--heading" 5441 href="/products/è±ç°é´¨æç¼è²çè«éç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·"> 5442 ãU&YABY è±ç°é´¨ãæç¼è²çè«éç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å · 5443 </a> 5444 </div> 5445 5446 5447 5448 5449 <div class="product_price qk-text--price qk-fs--title"><span class="money_tag" data-currency-from="TWD" data-amount="490.0">NT$490</span></div> 5450 5451 5452 <div class="product_btn qk-text--center"> 5453 5454 <button 5455 type="button" 5456 class="btn btn-cart qk-btn qk-btn--primary qk-btn--lg" 5457 data-handle="è±ç°é´¨æç¼è²çè«éç©å ·ä¸ææ²»ç¶²å¸èå¬éæ°£ççç©å ·" 5458 data-collection="" 5459 data-brand="è±ç°é´¨" 5460 data-category="" 5461 data-collection_id="" 5462 data-id="56365991" 5463 data-list="ç¸éåå" 5464 data-name="ãU&YABY è±ç°é´¨ãæç¼è²çè«éç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å ·" 5465 data-photo="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU2MzY1OTkxLzE3ODY1MDI2MzVfZTMzMDA3Yzk2YWFhNjg0MTQ0YTcuanBlZyJdLFsicCIsInRodW1iIiwiNjAweDYwMCJdXQ.jpeg?sha=7eef90671c32875d" 5466 data-price="490.0" 5467 data-position="3" 5468 data-spread-size="67905218,,490.0,3,650.0,deny,0.0,,ãU&YABY è±ç°é´¨ãæç¼è²çè«éç©å ·/ä¸ææ²»ç¶²å¸/èå¬éæ°£ççç©å · - ,cyberbiz," 5469 5470 data-sku="" 5471 5472 5473 >
5474 <span class="text">å å ¥è³¼ç©è»</span> 5475 </button> 5476 5477 <button type="button" class="btn btn_not_sale hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5478 <span class="text">å°æªéè³£</span> 5479 </button> 5480 <button type="button" class="btn btn_login_to_view hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5481 <span class="text">ç»å ¥æ¥ç</span> 5482 </button> 5483 <button type="button" class="btn btn_not_eligible hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5484 <span class="text">è³æ ¼ä¸ç¬¦</span> 5485 </button> 5486 </div> 5487 5488 </div> 5489 5490 5491 5492 5493 5494 <div class="swiper-slide product qk-text--start" data-sold-out="false" data-sales-mode-purchasable="true"> 5495 5496 <div class="integrated_product_labels qk-pos--abs qk-text--left"> 5497 5498 </div> 5499 5500 <div class="product_image default_scale"> 5501 <div class="product_mask"></div> 5502 <a class="productClick img-flex GTM-info qk-h--100 qk-display--flex qk-justify--center qk-align--center" 5503 href="/products/å¯µç©æµ®æ¯æ¢³-給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶spa" 5504 data-brand="" 5505 data-category="" 5506 data-collection_id="" 5507 data-id="56456493" 5508 data-variant-id="68047208" 5509 data-list="ç¸éåå" 5510 data-name="ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA" 5511 data-position="4" 5512 data-price="99.0"> 5513 <img data-src="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU2NDU2NDkzLzE3ODM0MDA0NzBfMjNlNTJjOWJkNzE2ZDk0YTIxNmEucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=4e67f2009d380d4b" 5514 alt="ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA" class="swiper-lazy feature-image" /> 5515 5516 5517 5518 <div class="swiper-lazy-preloader-white"></div> 5519 </a> 5520 </div> 5521 5522 <div class="product_title qk-of--hidden"> 5523 <a class="qk-text--heading" 5524 href="/products/å¯µç©æµ®æ¯æ¢³-給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶spa"> 5525 ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA 5526 </a> 5527 </div> 5528 5529 5530 5531 5532 <div class="product_price qk-text--price qk-fs--title"><span class="money_tag" data-currency-from="TWD" data-amount="99.0">NT$99</span></div> 5533 5534 5535 <div class="product_btn qk-text--center"> 5536 5537 <button 5538 type="button" 5539 class="btn btn-cart qk-btn qk-btn--primary qk-btn--lg" 5540 data-handle="å¯µç©æµ®æ¯æ¢³-給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶spa" 5541 data-collection="" 5542 data-brand="" 5543 data-category="" 5544 data-collection_id="" 5545 data-id="56456493" 5546 data-list="ç¸éåå" 5547 data-name="ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA" 5548 data-photo="//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL3Byb2R1Y3RzLzU2NDU2NDkzLzE3ODM0MDA0NzBfMjNlNTJjOWJkNzE2ZDk0YTIxNmEucG5nIl0sWyJwIiwidGh1bWIiLCI2MDB4NjAwIl1d.png?sha=4e67f2009d380d4b" 5549 data-price="99.0" 5550 data-position="4" 5551 data-spread-size="68047208,,99.0,15,299.0,deny,0.0,æä»¤æ©,ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA - æä»¤æ©,cyberbiz,5|68047209,,99.0,15,299.0,deny,0.0,æµ·è»ç¶ ,ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA - æµ·è»ç¶ ,cyberbiz,5|68047210,,99.0,14,299.0,deny,0.0,èæ¡ç²,ãå¯µç©æµ®æ¯æ¢³ãâ 給æ¯å©ä¸å ´è¼å¥¢ç´çå± å®¶SPA - èæ¡ç²,cyberbiz,5" 5552 5553 data-sku="" 5554 5555 5556 >
5557 <span class="text">å å ¥è³¼ç©è»</span> 5558 </button> 5559 5560 <button type="button" class="btn btn_not_sale hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5561 <span class="text">å°æªéè³£</span> 5562 </button> 5563 <button type="button" class="btn btn_login_to_view hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5564 <span class="text">ç»å ¥æ¥ç</span> 5565 </button> 5566 <button type="button" class="btn btn_not_eligible hidden qk-btn qk-btn--lg qk-btn--soldout qk-bg--background qk-mg_x--auto" disabled> 5567 <span class="text">è³æ ¼ä¸ç¬¦</span> 5568 </button> 5569 </div> 5570 5571 </div> 5572 5573 </div> 5574 </div> 5575 <div class="swiper-products-next qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v1 qk-swiper_btn--next"></div> 5576 <div class="swiper-products-prev qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v1 qk-swiper_btn--prev"></div> 5577</div> 5578 5579<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/swiper_product-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 5580 5581 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/integrated_product_labels-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 5582 5583 5584<!-- cyb_snippet _combo_product_related_items_modal start --><!-- cyb_snippet _combo_product_related_items_modal end --> 5585
5586<script> 5587 $(document).ready(function(){ 5588 var slideCount = $(".swiper_products .swiper-slide").length 5589 if (slideCount >= 4){ 5590 var autoLoop = true 5591 }else{ 5592 var autoLoop = false 5593 } 5594 var SwiperProducts = new Swiper('.swiper_products', { 5595 // Disable preloading of all images 5596 preloadImages: false, 5597 // Enable lazy loading 5598 lazy: { 5599 loadPrevNext: true, 5600 }, 5601 loop: autoLoop, 5602 slidesPerView: 1, 5603 spaceBetween: 30, 5604 navigation: { 5605 nextEl: '.swiper-products-next', 5606 prevEl: '.swiper-products-prev', 5607 }, 5608 breakpoints: { 5609 '@0.75': { 5610 slidesPerView: 2, 5611 spaceBetween: 20, 5612 }, 5613 '@1.00': { 5614 slidesPerView: 3, 5615 spaceBetween: 40, 5616 }, 5617 '@1.50': { 5618 slidesPerView: 4, 5619 spaceBetween: 50, 5620 }, 5621 } 5622 }); 5623 5624 $('#swiper_products .productClick').click(function() { 5625 try { 5626 if (window.appStoreClickItemEvent) { 5627 var $el = $(this); 5628 window.appStoreClickItemEvent({ 5629 product_id: String($el.data('id')), 5630 variant_id: String($el.data('variant-id')), 5631 name: $el.data('name'), 5632 price: Number($el.data('price')), 5633 currency: getCurrency(), 5634 category: $el.data('category'), 5635 list_name: 'product', 5636 list_position: Number($el.data('position')), 5637 }); 5638 } 5639 } catch (e) { 5640 console.error(e); 5641 } 5642 }); 5643 5644 5645 // new pop modal 5646 $('#swiper_products .btn-cart').click(function() { 5647 var comboProductInfo = $(this).data('comboProductInfo'); 5648 if (comboProductInfo) { 5649 window.themeHelper.EventBus.$emit('showRelatedItemsSelectModal', comboProductInfo); 5650 } else { 5651 var productHandle = '/products/' + $(this).data('handle'); 5652 var collectionId = $(this).data('collection'); 5653 new_addcart_modal.popModal(productHandle, collectionId); 5654 } 5655 }); 5656 5657 5658 const isUpcomingProductsEnabled = null; 5659 // çæ åæåªèçå¯è³¼è²·çå¡ç 5660 $('#swiper_products .product').not('[data-sales-mode-purchasable="false"]').each(function(index) { 5661 const soldOut = $(this).data('sold-out'); 5662 const $upcomingText = $(this).find('.upcoming-product-text'); 5663 const sellTime = $upcomingText.data('sell-from'); 5664 const purchaseRequired = $upcomingText.data('purchase-required'); 5665 const purchaseEligible = $upcomingText.data('purchase-eligible'); 5666 const purchaseStatus = $upcomingText.data('purchase-status'); 5667 5668 const isUpcoming = isUpcomingProductsEnabled && sellTime && new Date(sellTime) > new Date(); 5669 5670 const formattedDate = sellTime ? new Date(sellTime).toLocaleString('zh-TW', { 5671 year: 'numeric', 5672 month: '2-digit', 5673 day: '2-digit', 5674 hour: '2-digit', 5675 minute: '2-digit', 5676 hour12: false 5677 }).replace(/\//g, '-').replace(',', '') : ''; 5678 5679 let labelText = ''; 5680 let buttonClass = ''; 5681 5682 if (purchaseRequired && !isUpcoming) { 5683 labelText = 'é¨åæå¡éå®'; 5684 5685 if (!purchaseEligible) { 5686 if (!soldOut) { 5687 if (purchaseStatus === 'not_logged_in') { 5688 buttonClass = '.btn_login_to_view'; 5689 } else if (purchaseStatus === 'non_eligible') { 5690 buttonClass = '.btn_not_eligible'; 5691 } 5692 } else { 5693 buttonClass = '.btn-soldout'; 5694 } 5695 } 5696 } 5697 else if (!purchaseRequired && isUpcoming) { 5698 labelText = ' éè³£'.replace('', formattedDate); 5699 buttonClass = '.btn_not_sale'; 5700 } 5701 else if (purchaseRequired && isUpcoming) { 5702 const isMobile = window.innerWidth <= 580; 5703 const separator = isMobile ? '\n' : ' '; 5704 labelText = '[é¨åæå¡éå®]' + separator + ' éè³£'.replace('', formattedDate); 5705 buttonClass = '.btn_not_sale'; 5706 } else if (soldOut) { 5707 buttonClass = '.btn-soldout'; 5708 } 5709 5710 if (labelText) { 5711 $upcomingText.text(labelText); 5712 $(this).find('.upcoming-product-text').show(); 5713 } else { 5714 $upcomingText.hide(); 5715 } 5716 5717 if (buttonClass) { 5718 $(this).find('.product_mask').addClass('lift'); 5719 // Hide all buttons first 5720 $(this).find('.btn-cart').hide(); 5721 $(this).find('.btn-soldout').hide(); 5722 $(this).find('.btn_not_sale').hide(); 5723 $(this).find('.btn_login_to_view').hide(); 5724 $(this).find('.btn_not_eligible').hide(); 5725 5726 // Show the appropriate button 5727 $(this).find(buttonClass).removeClass('hidden').show(); 5728 } 5729 }); 5730 5731 // for GTM 5732 $.each($('.GTM-area'),function(){ 5733 var gtm_product = [] 5734 $.each($(this).find('.GTM-info'),function(index,product){ 5735 productInfo = { 5736 'brand': $(product).data('brand'), 5737 'category': $(product).data('category'), 5738 'id': $ (product).data('id'), 5739 'list': 'Collection: '+ $(product).data('list'), 5740 'name': $(product).data('name'), 5741 'position': $(product).data('position'), 5742 'price': $ (product).data('price'), 5743 'variant': '' 5744 } 5745 if(typeof google_analytics_id != "undefined" && window.enable_ga_ee == true){ 5746 ga('ec:addImpression', productInfo); 5747 } 5748 if(typeof google_tag_manager_id != 'undefined' || typeof cyb != 'undefined'){ 5749 gtm_product.push(productInfo) 5750 } 5751 }) 5752 if(typeof google_analytics_id != 'undefined' && window.enable_ga_ee == true){ 5753 ga('send', 'event', {'nonInteraction': true}); 5754 } 5755 if(typeof google_tag_manager_id != 'undefined' && gtm_product.length > 0){ 5756 dataLayer.push({ 5757 'event': 'productImpressions', 5758 'ecommerce':{ 5759 'impressions': gtm_product 5760 } 5761 }); 5762 } 5763 if(typeof cyb != "undefined" && gtm_product.length > 0){ 5764 cyb.push({ 5765 'event': 'productImpressions', 5766 'impressions': gtm_product 5767 }); 5768 } 5769 }) 5770 }) 5771</script>
5771 5772 5773<!-- cyb_snippet swiper_product end --> 5774 5775</div> 5776 5777 5778 5779 </div> 5780</div> 5781 5782 </div> 5783 5784 <!-- Footer --> 5785 5786 5787 5788 5789 5790 5791 5792<style> 5793 5794 5795 @media(min-width: 991px) { 5796 .display_x .left-content > div { 5797 max-width: calc(100% / 3); 5798 } 5799 } 5800</style> 5801 5802<div id="index-recommendation"></div> 5803 5804<footer id="footer" class="qk-fs--body qk-bg--footer_bg"> 5805 5806 5807 <div class="qk-container display_x"> 5808 <div class="footer_content qk-mg--0 qk-display--flex qk-justify--between"> 5809 <div class="left-content qk-flex--1"> 5810 5811 5812 <div class="link-list-container"> 5813 5814 <p class="footer_title qk-fs--title qk-text--footer_text">å®è·å¯µæéå¿æ¥å¸¸</p> 5815 5816 <div class="item horizontal qk-text--left"> 5817 <ul class="qk-display--flex qk-flex--wrap"> 5818 5819 5820 <li class="qk-display--il_bk"> 5821 5822 <a 5823 class="qk-text--footer_text" 5824 href="/pages/about-us" 5825 rel="noopener noreferrer" 5826 target="_blank">éæ¼æå</a> 5827 5828 </li> 5829 5830 <li class="qk-display--il_bk"> 5831 5832 <a 5833 class="qk-text--footer_text" 5834 href="/account/index" 5835 rel="noopener noreferrer" 5836 target="_blank">æç帳æ¶</a> 5837 5838 </li> 5839 5840 <li class="qk-display--il_bk"> 5841 5842 <a 5843 class="qk-text--footer_text" 5844 href="/pages/refund" 5845 rel="noopener noreferrer" 5846 target="_blank">鿬¾æ¿ç</a> 5847 5848 </li> 5849 5850 <li class="qk-display--il_bk"> 5851 5852 <a 5853 class="qk-text--footer_text" 5854 href="/pages/privacy" 5855 rel="noopener noreferrer" 5856 target="_blank">é±ç§æ¿ç</a> 5857 5858 </li> 5859 5860 <li class="qk-display--il_bk"> 5861 5862 <a 5863 class="qk-text--footer_text" 5864 href="/pages/terms" 5865 rel="noopener noreferrer" 5866 target="_blank">æåæ¢æ¬¾</a> 5867 5868 </li> 5869 5870 5871 </ul> 5872 </div> 5873 </div> 5874 5875 5876 5877 <div class="item contact qk-text--left"> 5878 5879 <p class="footer_title qk-fs--title qk-text--footer_text">è¯çµ¡è³è¨</p> 5880 5881 <ul> 5882 5883 <li class="phone qk-bd_r--default qk-bd--footer_text qk-display--il_bk"> 5884 <span class="qk-text--footer_text">客æå°ç·ï¼04-26622906</span> 5885 </li> 5886 5887 5888 <li class="fax qk-bd_r--default qk-bd--footer_text qk-display--il_bk"> 5889 <span class="qk-text--footer_text">客æå³çï¼04-22569719</span> 5890 </li> 5891 5892 5893 <li class="time qk-bd_r--default qk-bd--footer_text qk-display--il_bk"> 5894 <span class="qk-text--footer_text">客ææéï¼10:00-17:00</span> 5895 </li> 5896 5897 5898 <br> 5899 <li class="mail qk-bd_r--default qk-bd--footer_text qk-cursor--pointer qk-display--il_bk"> 5900 <a class="qk-text--footer_text" href="mailto:info@furrykelp.
5900com">ä¿¡ç®±ï¼[email protected]</a> 5901 </li> 5902 5903 5904 <li class="address qk-bd_r--default qk-bd--footer_text qk-display--il_bk"> 5905 <span class="qk-text--footer_text">å°åï¼å°ä¸å¸æ²é¹¿åæ¥æ°è¡25å··11è2æ¨</span> 5906 </li> 5907 5908 5909 <li class="tax_id qk-bd_r--default qk-bd--footer_text qk-display--il_bk"> 5910 <span class="qk-text--footer_text">çµ±ä¸ç·¨èï¼90386976</span> 5911 </li> 5912 5913 </ul> 5914 </div> 5915 5916 5917 5918 <div id="rich_text_editor_setting" class="rich-text-editor-container qk-text--footer_text item qk-flex--1"> 5919 5920 <p class="footer_title qk-fs--title rich-text-editor-title"></p> 5921 5922 <div class="rich-text-content-container"> 5923 <p>This product is not intended to diagnose, treat, cure, or prevent any disease.</p> 5924 5925 </div> 5926 </div> 5927 5928 5929 </div> 5930 <div class="right-content qk-display--flex qk-flex--column"> 5931 5932 <div class="fb_fanpage qk-hidden--mobile"> 5933 <div class="fb_fans_page_area"> 5934 <div 5935 class="fb-page" 5936 data-href="https://www.facebook.com/509060275629375" 5937 data-width="500" 5938 data-adapt-container-width="true" 5939 data-hide-cover="false" 5940 data-show-facepile="true"> 5941 <blockquote cite="https://www.facebook.com/509060275629375" class="fb-xfbml-parse-ignore"> 5942 <a target="_blank" rel="noopener noreferrer" href="https://www.facebook.com/509060275629375"></a> 5943 </blockquote> 5944 </div> 5945 </div> 5946 </div> 5947 5948 <div class="media qk-display--il"> 5949 <div class="item social_media qk-h--auto qk-float--l"> 5950 <ul> 5951 5952 <li class="qk-display--il_bk"> 5953 <a target="_blank" rel="noopener noreferrer" href="https://www.facebook.com/"> 5954 <svg 5955 class="facebook-svg" 5956 xmlns="http://www.w3.org/2000/svg" 5957 width="40" 5958 height="40"
5959 viewBox="0 0 40 40"> 5960 <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" /> 5961 </svg> 5962 </a> 5963 </li> 5964 5965 5966 <li class="qk-display--il_bk"> 5967 <a target="_blank" rel="noopener noreferrer" href="https://www.instagram.com/?hl=zh-tw"> 5968 <svg 5969 class="instagram-svg" 5970 xmlns="http://www.w3.org/2000/svg" 5971 width="40" 5972 height="40" 5973 viewBox="0 0 40 40"> 5974 <rect class="qk-svg--footer_text" width="40" height="40" rx="20" /> 5975 <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
597511.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" /> 5976 </svg> 5977 </a> 5978 </li> 5979 5980 5981 <li class="qk-display--il_bk"> 5982 <a target="_blank" rel="noopener noreferrer" href="https://line.me/zh-hant/"> 5983 <svg 5984 class="line-svg" 5985 xmlns="http://www.w3.org/2000/svg" 5986 width="40" 5987 height="40"
5988 viewBox="0 0 40 40"> 5989 <rect class="qk-svg--footer_text" width="40" height="40" rx="20" /> 5990 <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" /> 5991 <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" /> 5992 <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" /> 5993 <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" /> 5994 <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" /> 5995 </svg> 5996 </a> 5997 </li> 5998 5999 6000 <li class="qk-display--il_bk"> 6001 <a target="_blank" rel="noopener noreferrer" href="https://www.youtube.com/"> 6002 <svg 6003 class="youtube-svg" 6004 xmlns="http://www.w3.org/2000/svg" 6005 width="40" 6006 height="40"
6007 viewBox="0 0 40 40"> 6008 <rect class="qk-svg--footer_text" width="40" height="40" rx="20" /> 6009 <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" /> 6010 </svg> 6011 </a> 6012 </li> 6013 6014 </ul> 6015 </div> 6016 </div> 6017 </div> 6018 </div> 6019 </div> 6020 6021 <div class="copyright qk-text--footer_text qk-bd--footer_text qk-text--left qk-bd_t--default"> 6022 <div class="qk-container container qk-fw--500"> 6023 <span>Copyright ©</span> 6024 <a class="qk-text--link" href="/"> 6025 <span>furrykelp æ¯æ¯è»</span> 6026 </a> 6027 <span>All Rights Reserved.</span> 6028 <span>Designed by 6029 </span> 6030 <a 6031 class="qk-text--link" 6032 href="https://www.cyberbiz.io?utm_source=poweredbycyberbiz" 6033 target="_blank" 6034 rel="noopener noreferrer" 6035 title="Designed by CYBERBIZ">CYBERBIZ</a>. 6036 </div> 6037 </div> 6038 6039</footer>
6040<script> 6041 $(document).ready(function() { 6042 let isDynamicLoading = false; 6043 6044 let menusData = { 6045 6046 6047 "footer": { 6048 6049 "type": "items", 6050 "data": [ 6051 6052 6053 6054 { 6055 "title": "éæ¼æå", 6056 "url": "/pages/about-us", 6057 "item_type": "page" 6058 }, 6059 6060 { 6061 "title": "æç帳æ¶", 6062 "url": "/account/index", 6063 "item_type": "http" 6064 }, 6065 6066 { 6067 "title": "鿬¾æ¿ç", 6068 "url": "/pages/refund", 6069 "item_type": "refund" 6070 }, 6071 6072 { 6073 "title": "é±ç§æ¿ç", 6074 "url": "/pages/privacy", 6075 "item_type": "privacy" 6076 }, 6077 6078 { 6079 "title": "æåæ¢æ¬¾", 6080 "url": "/pages/terms", 6081 "item_type": "terms" 6082 } 6083 6084 6085 ] 6086 6087 }, 6088 6089 6090 6091 6092 6093 6094 }; 6095 6096 if (isDynamicLoading) { 6097 window.DynamicLoading.setupComponent({ 6098 sectionId: '#footer', 6099 callbackData:{ 6100 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_link_list_2","default_contact_info","rich_text_editor_setting"],"blocks":{"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":"04-26622906","display_fax_number":true,"dict_shop_fax_number":"04-22569719","display_shop_email":"true","dict_shop_email":"[email protected]","display_shop_address":true,"dict_shop_address":"å°ä¸å¸æ²é¹¿åæ¥æ°è¡25å··11è2æ¨","display_office_time":"true","dict_shop_office_time":"10:00-17:00","display_tax_id":true,"dict_tax_id":"90386976"},"custom_name":"è¯çµ¡è³è¨"},"default_link_list_2":{"type":"link_list_setting","visible":true,"settings":{"dict_link_list_block_title":"å®è·å¯µæéå¿æ¥å¸¸","footer_link":"footer"},"custom_name":"é¸å®"},"rich_text_editor_setting":{"type":"rich_text_editor_setting","visible":true,"settings":{"dict_rich_text_title":"","dict_rich_text_content":"\u003cp\u003eThis product is not intended to diagnose, treat, cure, or prevent any disease.\u003c/p\u003e\n"},"custom_name":"èªè¨æå"}},"custom_name":"é è ³"}, 6101 shop: { 6102 name: 'furrykelp æ¯æ¯è»', 6103 cyberbiz_link: 'https://www.cyberbiz.io?utm_source=poweredbycyberbiz', 6104 facebook_fan_page: 'https://www.facebook.com/509060275629375', 6105 }, 6106 menus: menusData, 6107 is_display_facebook_fan_block: true 6108 }, 6109 entryName:'renderFooterSection', 6110 source:'//cdn-general.cybassets.com/frontend/shop/footerSection-3a2e378145f8a165.js', 6111 }); 6112 } 6113 }); 6114</script>
6114 6115 6116<!-- cyb_snippet _tracking_code start --> 6117
6117<script> 6118 window.fbAsyncInit = function() { 6119 FB.init({ 6120 appId : '', 6121 xfbml : true, 6122 version : 'v24.0', 6123 }); 6124 }; 6125 (function(d, s, id){ 6126 var js, fjs = d.getElementsByTagName(s)[0]; 6127 if (d.getElementById(id)) {return;} 6128 js = d.createElement(s); 6129 js.id = id; 6130 js.src = 'https://connect.facebook.net/zh_TW/sdk.js'; 6131 fjs.parentNode.insertBefore(js, fjs); 6132 }(document, 'script', 'facebook-jssdk')); 6133 </script>
6133 6134 6135
6136<script> 6137 // for scupio 6138 if (document.querySelector("meta[name=\"scupio_mid\"]")) { 6139 mid = document.querySelector("meta[name=\"scupio_mid\"]").content; 6140 } else { 6141 mid = ""; 6142 } 6143 if (!window.is_scupio_sent && mid) { 6144 window._bwtm = window._bwtm || [] 6145 window._bwtm.push({ 6146 "mid": mid, 6147 "uid": "" 6148 }); 6149 } 6150</script>
6150 6151 6152<!-- cyb_snippet _tracking_code end --> 6153
6154<script> 6155 $(document).ready(function(){ 6156 if(window.location.pathname != '' && window.location.pathname != '/' ){ 6157 document.getElementById('index-recommendation').style.display = 'none' 6158 } 6159 }); 6160</script>
6160 6161 6162 6163 6164 <!-- Fast-Events --> 6165 <!-- cyb_snippet fast_events start --> 6166 6167
6168<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/fast_events-3a2e378145f8a165.js' type='text/javascript'></script>
6168 6169<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/fast_events-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 6170 6171<!-- cyb_snippet fast_events end --> 6172 6173 <div class="bottom-right qk-pos--fixed"> 6174 <!-- gototop --> 6175 <div id="gototop" class="qk-display--none qk-text--center"> 6176 <a href="javascript:void(0)" class="qk-circle qk-circle--lg qk-pos--relative qk-text--center"> 6177 <i class="fas fa-chevron-up"></i> 6178 </a> 6179 </div> 6180 6181 <!-- popup --> 6182 6183 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/popup-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 6184 6185 6186 6187 6188 6189 6190<div id="popup-wrapper" class="qk-display--none"></div> 6191 6192<template id="popup-template"> 6193 <div 6194 :class="status" 6195 v-if="hasContent" 6196 id="popup-section" 6197 > 6198 <transition name="backdrop"> 6199 <div 6200 v-if="shouldShowPopup" 6201 @click.capture="minifyPopup" 6202 id="popup-backdrop" 6203 class="qk-w--100vw qk-h--100vh qk-pos--fixed qk-t--0 qk-l--0 qk-tst" 6204 > 6205 </div> 6206 </transition> 6207 <transition name="onShow"> 6208 <div 6209 @click.self="showPopup" 6210 @transitionstart="updateGameStatus('start', this)" 6211 @transitionend="updateGameStatus('end', this)" 6212 class="popup-content qk-display--flex qk-align--center qk-tst qk-tst_dur--30 qk-tst_timing--ease_o" 6213 > 6214 <div 6215 v-for="block in blocks" 6216 :key="block.id" 6217 :class="[block.type, minifiedBlockClasses, block.settings.icon_size]" 6218 class="block qk-tst qk-tst_dur--30 qk-tst_timing--ease_o qk-of--auto" 6219 > 6220 <div v-if="block.type === 'image'" class="qk-pos--rel"> 6221 <img 6222 v-show="!shouldShowPopup" 6223 :src="block.settings.dict_icon_image_url" 6224 class="qk-tst qk-tst_dur--30 qk-tst_timing--ease_o" 6225 alt="popup button" 6226 > 6227 <a 6228 v-show="shouldShowPopup" 6229 :href="block.settings.dict_link" 6230 :target="block.settings.target" 6231 :rel="block.settings.rel" 6232 class="qk-display--flex qk-align--center" 6233 @click="linkClicked" 6234 > 6235 <picture> 6236 <source :srcset="block.settings.dict_mobile_image_url" media="(max-width: 576px)"> 6237 <source :srcset="block.settings.dict_tablet_image_url" media="(max-width: 992px)"> 6238 <img 6239 :src="block.settings.dict_image_url" 6240 class="qk-tst qk-tst_dur--30 qk-tst_timing--ease_o" 6241 alt="popup picture" 6242 /> 6243 </picture> 6244 </a> 6245 </div> 6246 <div v-if="block.type === 'video'"> 6247 <iframe 6248 :src="block.settings.dict_video_link" 6249 frameborder="0" 6250 class="qk-center--y qk-w--100 qk-h--100" 6251 ></iframe> 6252 </div> 6253 <div v-if="block.type === 'game'"> 6254 <div v-show="gameStatus === 'show'" :class="{ 'show-game': gameStatus === 'show' }"> 6255 <iframe 6256 class="cb-game-iframe iframe-loading" 6257 :src="getGameIframeSrc(block)" 6258 style="border: none;" 6259 > 6260 Loading 6261 </iframe> 6262 </div> 6263 <div v-show="gameStatus === 'minified'"> 6264 <img 6265 src="//cdn-general.cybassets.com/game_assets/game_minified_new.png" 6266 class="qk-h--100 qk-w--100" 6267 alt="game minified icon" 6268 /> 6269 </div> 6270 </div> 6271 <div 6272 v-if="block.type === 'carousel'" 6273 :id="`popup-carousel-${block.id}`" 6274 > 6275 </div> 6276 </div> 6277 </div> 6278 </transition> 6279 <transition name="backdrop"> 6280 <div 6281 v-if="shouldShowPopup" 6282 @click.capture="minifyPopup" 6283 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" 6284 > 6285 </div> 6286 </transition> 6287 </div> 6288</template> 6289
6290<script> 6291 $(document).ready(function() { 6292 const CDN_HOST = '//cdn-general.cybassets.com'; 6293 const section = {"type":"popup","visible":true,"blocks":{"popup_block_1":{"type":"image","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyOTE2MTI4X-WumOe2suW9iOi3s-WcljgwMHg4MDAucG5nLnBuZyJdXQ.png?sha=89eff98409d59379","icon_size":"small","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyOTE2MTI4X-WumOe2suW9iOi3s-WcljgwMHg4MDAucG5nLnBuZyJdXQ.png?sha=89eff98409d59379","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjMzMDYyL2F0dGFjaGVkX3Bob3Rvcy8xNzgyOTE2MTI4X-WumOe2suW9iOi3s-WcljgwMHg4MDAucG5nLnBuZyJdXQ.png?sha=89eff98409d59379","link_open_in_new_tab":true,"dict_link":"/products/bogo"},"custom_name":"åç"}},"block_order":["popup_block_1"],"settings":{},"custom_name":"å½çªå»£å"}; 6294 var popupSection = Vue.createApp({ 6295 template: '#popup-template', 6296 delimiters: ['${', '}'], 6297 data() { 6298 const isOmniauthPage = ['omniauth_terms_agreement', 'omniauth_mobile/'] 6299 .some(path => location.pathname.includes(path)); 6300 return { 6301 status: 'minified', 6302 gameStatus: 'show', 6303 blocks: isOmniauthPage 6304 ? [] 6305 : section.block_order && section.block_order.reduce( 6306 function(acc, blockId) { 6307 const block = section.blocks[blockId]; 6308 if (block && block.visible) { 6309 acc.push({ 6310 ...block, 6311 id: blockId, 6312 }); 6313 } 6314 return acc; 6315 }, 6316 [], 6317 ), 6318 hasAddedGameScript: false, 6319 }; 6320 }, 6321 computed: { 6322 hasContent: function() { 6323 return !!(this.blocks && this.blocks.length > 0); 6324 }, 6325 minifiedBlockClasses: function() { 6326 return this.status === 'minified' ? 'qk-pointer--none qk-unselectable' : ''; 6327 }, 6328 shouldShowPopup: function() { 6329 return this.status === 'show'; 6330 } 6331 }, 6332 methods: { 6333 unhidePopup: function(storedStatus) { 6334 this.status = storedStatus; 6335 $('#popup-wrapper').removeClass('qk-display--none'); 6336 }, 6337 showPopup: function() { 6338 if (this.status !== 'show') { 6339 this.status = 'show'; 6340 this.saveStatus(this.status); 6341 } 6342 }, 6343 minifyPopup: function() { 6344 this.status = 'minified'; 6345 this.saveStatus('minified'); 6346 }, 6347 loadStatus: function() { 6348 return JSON.parse(localStorage.getItem('popupStatus')); 6349 }, 6350 saveStatus: function(status) { 6351 if (status) { 6352 localStorage.setItem('popupStatus', JSON.stringify({ 6353 status: status, 6354 setTime: new Date().getTime(), 6355 })); 6356 } 6357 }, 6358 linkClicked: function() { 6359 this.saveStatus('minified'); 6360 }, 6361 parseVideoLink: function(settings) { 6362 settings.dict_video_link = themeHelper.parseYtUrl(settings.dict_video_link); 6363 }, 6364 setupImageSrc: function (settings) { 6365 settings.dict_image_url = this.addCdnHost(settings.dict_image_url); 6366 if (settings.dict_tablet_image_url) { 6367 settings.dict_tablet_image_url = this.addCdnHost(settings.dict_tablet_image_url); 6368 } 6369 if (settings.dict_mobile_image_url) { 6370 settings.dict_mobile_image_url = this.addCdnHost(settings.dict_mobile_image_url); 6371 } 6372 settings.dict_icon_image_url = this.addCdnHost(settings.dict_icon_image_url) || settings.dict_image_url; 6373 }, 6374 addCdnHost: function(url) { 6375 if (!url) { 6376 return url; // only add cdn host if url is not empty 6377 } 6378 6379 try { 6380 new URL(url); 6381 return url; // already a valid url, cdn host not needed 6382 } catch { 6383 return `${CDN_HOST}${url}`; 6384 } 6385 }, 6386 initStatus: function() { 6387 let newStatus = 'show'; 6388 const popupStatus = this.loadStatus(); 6389 const currentTime = new Date().getTime(); 6390 const oneDay = 1000 * 60 * 60 * 24; 6391 const hasStoredStatus = popupStatus && currentTime - popupStatus.setTime < oneDay; 6392 const redirectedByGameLogin = !this.hasRedirectUrl() && this.redirectedByGameLogin(); 6393 const isLoggingIn = this.isLoggingIn(); 6394 const isCartPage = window.location.pathname.split('/').includes('carts'); 6395 6396 if (hasStoredStatus && !redirectedByGameLogin) { 6397 newStatus = popupStatus.status; 6398 } 6399 6400 if (isLoggingIn) { 6401 newStatus = 'minified'; 6402 } else { 6403 localStorage.removeItem('redirectedByPopup'); 6404 } 6405 6406 setTimeout(() => { 6407 this.status = newStatus; 6408 this.gameStatus = newStatus; 6409 this.saveStatus(newStatus); 6410 if(!isCartPage){ 6411 this.unhidePopup(newStatus); 6412 } 6413 }, 1000); 6414 }, 6415 initBlocks: function() { 6416 if (this.hasContent) { 6417 this.blocks.forEach(block => { 6418 switch(block.type) { 6419 case 'image': 6420 this.setupImageSrc(block.settings); 6421 6422 const isOpenInNewTab = block.settings.link_open_in_new_tab; 6423 if (isOpenInNewTab) { 6424 block.settings.target = '_blank'; 6425 block.settings.rel = 'noopener noreferrer'; 6426 } 6427 6428 break; 6429 case 'video': 6430 this.parseVideoLink(block.settings); 6431 break; 6432 } 6433 }) 6434 } 6435 }, 6436 getGameIframeSrc: function (block) { 6437 return `/games/${block.settings.dict_game_handle}` 6438 }, 6439 updateGameStatus: function(type, element) { 6440 if ( 6441 (type === 'start' && this.status === 'minified') 6442 || (type === 'end' && this.status === 'show') 6443 ) { 6444 this.gameStatus = this.status; 6445 } 6446 }, 6447 setupGameRedirects: function() { 6448 window.addEventListener('pagehide', () => { 6449 const isGameActive = document.body.getElementsByClassName('show-game').length; 6450 if (isGameActive) { 6451 localStorage.setItem('redirectedByPopup', 'true'); 6452 this.saveStatus('minified'); 6453 } 6454 }); 6455 }, 6456 hasRedirectUrl: function() { 6457 return (new URLSearchParams(location.search)).has('redirect_url'); 6458 }, 6459 redirectedByGameLogin: function() { 6460 return localStorage.getItem('redirectedByPopup'); 6461 }, 6462 isLoggingIn: function() { 6463 const loginRelatedPathnames = [ 6464 'account/signup', 6465 'account/login', 6466 'account/customer/password/new', 6467 'pages/terms' 6468 ]; 6469 return loginRelatedPathnames.some(path => location.pathname.includes(path)); 6470 } 6471 }, 6472 created: function() { 6473 this.initStatus(); 6474 this.initBlocks(); 6475 this.setupGameRedirects(); 6476 }, 6477 mounted: function() { 6478 this.blocks.forEach((block) => { 6479 if (block.type === 'carousel' && block.settings.dict_c
6479arousel) { 6480 renderCarousel(`#popup-carousel-${block.id}`, { 6481 title: block.settings.dict_carousel, 6482 CDN_HOST, 6483 onLinkClick: () => this.linkClicked(), 6484 }); 6485 } 6486 }); 6487 }, 6488 }); 6489 popupSection.mount('#popup-wrapper'); 6490 }); 6491</script>
6491 6492 6493 6494 6495 </div> 6496 6497 <!-- ajaxloading --> 6498 <div id="ajaxloading" class="qk-display--none qk-h--100vh qk-w--100vw qk-l--0 qk-t--0 qk-pos--fixed"> 6499 <div class="ajaxbody qk-pos--abs qk-l--50 qk-t--50 qk-text--center"> 6500 <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"> 6501 <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"/> 6502 <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 "/> 6503 <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"/> 6504 <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"/> 6505 <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"/> 6506 <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"/> 6507 </svg> 6508 <div class="success_msg title qk-display--none qk-pos--abs qk-l--0 qk-w--100 qk-text--center">å·²å å ¥è³¼ç©è»</div> 6509 <div class="success_update_msg title qk-display--none qk-pos--abs qk-l--0 qk-w--100 qk-text--center">å·²æ´æ°è³¼ç©è»</div> 6510 <div class="fail_msg title qk-display--none qk-pos--abs qk-l--0 qk-w--100 qk-text--center">網路ç°å¸¸ï¼è«éæ°æ´ç</div> 6511 </div> 6512 </div> 6513 6514
6514<script> 6515 if (typeof(check_order_token_cookie) !== 'function' || check_order_token_cookie()) { 6516 gtag('event', 'conversion', {"send_to":"AW-17291207905/UJXVCIT31egaEOHJi7VA"}); 6517 } 6518 </script>
6518 6519
6519<script src="//cdn-general.cybassets.com/assets/referral-code-trace-5fcbbe026a61c36b5f09a1615a1c168688205205d9d3e7ee854181a66b64a6ed.js"></script>
6519 6520
6520<script> 6521 cyb.push({ 6522 'event': 'productDetails', 6523 'ecommerce': { 6524 'currencyCode': 'TWD', 6525 'detail': { 6526 'products': [{"id":59699979,"name":"æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨","price":490.0,"brand":"æ¯æ¯è»","category":"è èä¿å¥","variant":""}] 6527 } 6528 } 6529 }); 6530 </script>
6530 6531 6532
6532<script> 6533 if (window.fbq) { 6534 fbq("track", "ViewContent", { 6535 content_name: "æ·¨æ 寶 æ³å°¿ä¿å¥å¼å¼é èè¶è à åçç±½ à è²å ¬è± 100% ç¡è 製æï½ç¬è²é©ç¨", 6536 content_ids: "72436717", 6537 content_type: "product", 6538 value: 490.0, 6539 currency: "TWD", 6540 contents: [{"id":72436717,"price":490.0,"quantity":999}], 6541 content_category: "è èä¿å¥" 6542 },{ 6543 eventID: "ViewContent_4BA3D8E2404A67FE46BFA1C8DDAE85BA" 6544 }); 6545 } 6546 </script>
6546 6547 </body> 6548 6549
6549<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/sub_vendor-3a2e378145f8a165.js' type='text/javascript'></script>
6549 6550
6550<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/theme_helper-3a2e378145f8a165.js' type='text/javascript'></script>
6550 6551 6552 <!-- theme assets --> 6553
6553<script src='//cdn-general.cybassets.com/s/files/33062/theme/130461/assets/js/1778048102_d8b0437f_main.js?1778048102' type='text/javascript'></script>
6553 6554
6554<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/theme-3a2e378145f8a165.js' type='text/javascript'></script>
6554 6555 6556 <!-- for cache --> 6557
6557<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/cacheable-3a2e378145f8a165.js' type='text/javascript'></script>
6557 6558</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.