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-P9KBTW4J
vendor: 3 bytes, line 12
12');
12</script>
12 13
13<script>var google_tag_manager_id = 'GTM-P9KBTW4J';</script>
13 14<!-- End Google Tag Manager --> 15 <!-- CYBERBIZ Google Tag Manager --> 16
16<script>
vendor: 345 bytes, lines 16-20
16(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 17 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 18 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 19 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 20 })(window,document,'script','cyb','
20GTM-TXD9LVJ
vendor: 3 bytes, line 20
20');
20</script>
20 21 <!-- End CYBERBIZ Google Tag Manager --> 22 23 <meta charset="utf-8"> 24<meta http-equiv="X-UA-Compatible" content="IE=edge"> 25<meta name="viewport" content="width=device-width, initial-scale=1"> 26<link rel="icon" href="https://cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3NzUxNTM0XzMxMzI1NTM1MV8xMTE2NTc1Mjg0MDU4MThfNzE3ODI4NTQ4NDE3OTY1MjAwX24uanBnLmpwZWciXV0.jpeg?convert=false&sha=6bef36928c393981"> 27<link rel="apple-touch-icon" href="https://cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3NzUxNTM0XzMxMzI1NTM1MV8xMTE2NTc1Mjg0MDU4MThfNzE3ODI4NTQ4NDE3OTY1MjAwX24uanBnLmpwZWciXV0.jpeg?convert=false&sha=6bef36928c393981"> 28 29<meta property="og:site_name" content="femobook" /> 30 31<!-- og tag --> 32 33 <meta name="keywords" content="é»åç£¨è±æ©" /> 34 <meta name="description" content="ä¾èªå°ç£çé»åç£¨è±æ©åç" /> 35 <meta property="og:title" content="femobook é»åç£¨è±æ©" /> 36 <meta property="og:description" content="ä¾èªå°ç£çé»åç£¨è±æ©åç" /> 37 <meta property="og:url" content="https://www.femobook.com.tw" /> 38 <meta property="og:type" content="website" /> 39 40 41<!-- og image --> 42 43 44 <meta property="og:image" content="https://cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3NzUxNTM0XzMxMzI1NTM1MV8xMTE2NTc1Mjg0MDU4MThfNzE3ODI4NTQ4NDE3OTY1MjAwX24uanBnLmpwZWciXV0.jpeg?sha=6bef36928c393981" /> 45 46 47 48<title> 49 50 femobook é»åç£¨è±æ© 51 52</title> 53 54 55
56<script src='//cdn-general.cybassets.com/frontend/shop/useSettingsData-3a2e378145f8a165.js' type='text/javascript'></script>
56 57 58 59 60
60<script> 61 window.setSettingsData({"draggable_sections":{"404":[],"index":["1715063788940_0","1716620994813_0","1715271445372_0","1715274086521_1","1716791046824_5","1715069870196_5","1715274387306_7","1716090072546_1","1767148807242_8","_index_product_banner","_index_4_blocks","1746692951347_3","1746693569979_3"],"product":["product_info","product_description","board_comments","related_products"],"collection":[],"category":[],"blog":[],"article":[],"cart":[],"contact":[],"express_delivery":[],"search":[],"combo_product":["combo_product_info","combo_product_desc","board_comments"],"page":["1715063788940_0","1716620994813_0","1715271445372_0","1715274086521_1","1716791046824_5","1715069870196_5","1715274387306_7","1716090072546_1","_index_4_blocks","_index_product_banner"]},"sections":{"navbar":{"type":"navbar","visible":true,"settings":{"navbar_image_logo_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc2NzY2X0xvZ28t77y3MjIweEgyNi5wbmcucG5nIl1d.png?sha=2f37ee574ddbc515","navbar_image_logo_tablet_url":"","navbar_image_logo_mobile_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc3MjU5X00tTG9nby3vvLc4MzV4SDEwMC5wbmcucG5nIl1d.png?sha=db63d05446c4665e","main_nav":"main-menu","slider_primary_linklist":"main-menu","slider_primary_linklist_set_open":false,"nav_show_three_dimension":true,"search_enabled":true,"display_only_index":false,"dict_header_banner_image_url":"","dict_header_banner_image_tablet_url":"","dict_header_banner_image_mobile_url":"","dict_header_banner_link":"/pages/promotion-aug","display_count_down":true,"navbar_display_style":"rowNav","menu_display_style":"three_dimension_menu","header_banner_start":"2026-08-02T00:00:00+08:00","header_banner_end":"2026-08-05T00:00:00+08:00","timer_text_color":"#FFFFFF","timer_bg_color":"#3994f7","navbar_background_transparent":true,"display_banner_type":"textBanner","header_banner_simple_text_size":"16","header_banner_simple_text_color":"#ffffff","header_banner_simple_bg":"#1E3A8A","link_menu_enabled":false,"link_menu":"undefined","header_banner_simple_text":"ãéæ 3 天ã8/2ï¼æ¥ï¼è³ 8/4ï¼äºï¼ï¼æ´»åæéå §æ¼å®ç¶²ä¸å®ç£¨è±æ©ï¼å³äº«æ¬å³¶å éé貨","link_open_in_new_tab":false,"header_banner_image_alt":"","logo_height":"","mobile_logo_position":"left","navbar_pc_title_font_size_scale":"100","navbar_pc_body_font_size_scale":"100","navbar_mobile_title_font_size_scale":"100","navbar_mobile_body_font_size_scale":"100","breadcrumb_referrer_enabled":false},"custom_name":"å°è¦½å"},"footer":{"type":"footer","visible":true,"settings":{"footer_link":"footer","display_facebook":true,"shop_facebook":"https://www.facebook.com/femobookTW","display_instagram":true,"shop_instagram":"https://www.instagram.com/femobook_taiwan/","display_line":true,"shop_line":"https://lin.ee/iOSBDQ1","display_youtube":true,"shop_youtube":"https://youtube.com/@femobook?si=6pEjEuT9H4d5BGk7","footer_link_arrangement":"display_x","display_facebook_fan_block":true},"block_order":["default_link_list","1715275917129_0","1715275918567_0"],"blocks":{"default_link_list":{"type":"link_list_setting","custom_name":"é¸å®","thumbnail":"list","draggable":true,"visible":true,"settings":{"dict_link_list_block_title":"éæ¼æå","footer_link":"éæ¼æå"}},"default_contact_info":{"type":"contact_info_setting","custom_name":"è¯çµ¡è³è¨","thumbnail":"contactInfo","draggable":true,"visible":true,"settings":{"dict_contact_info_block_title":"è¯çµ¡è³è¨","display_phone":true,"dict_phone_number":"02-22687300","display_fax_number":false,"dict_shop_fax_number":"0222345678","display_shop_email":true,"dict_shop_email":"[email protected]","display_shop_address":true,"dict_shop_address":"æ°åå¸åååä¸å¤®è·¯3段281å··11å¼9è12æ¨","display_office_time":true,"dict_shop_office_time":"10:00-17:00"}},"1715275917129_0":{"type":"link_list_setting","custom_name":"é¸å®","visible":true,"settings":{"dict_link_list_block_title":"è³¼ç©è³è¨","footer_link":"è³¼ç©è³è¨"}},"1715275918567_0":{"type":"link_list_setting","custom_name":"é¸å®","visible":true,"settings":{"dict_link_list_block_title":"æ¢æ¬¾æ¿ç","footer_link":"æ¢æ¬¾æ¿ç"}}},"custom_name":"é è ³"},"_main_slider_custom":{"type":"_main_slider_custom","visible":true,"blocks":{"display_main_slider_item_1":{"type":"image","visible":true,"settings":{"dict_link":"","dict_image_url":"/theme_src/i18n_shoestore/default_img/new_main_slider_item_1_lg.jpg","dict_tablet_image_url":"","dict_mobile_image_url":""}},"display_main_slider_item_2":{"type":"image","visible":true,"settings":{"dict_link":"","dict_image_url":"/theme_src/i18n_shoestore/default_img/new_main_slider_item_2_lg.jpg","dict_tablet_image_url":"","dict_mobile_image_url":""}},"display_main_slider_item_3":{"type":"image","visible":true,"settings":{"dict_link":"","dict_image_url":"/theme_src/i18n_shoestore/default_img/new_main_slider_item_3_lg.jpg","dict_tablet_image_url":"","dict_mobile_image_url":""}},"display_main_slider_item_4":{"type":"image","visible":false,"settings":{"dict_link":"","dict_image_url":"","dict_tablet_image_url":"","dict_mobile_image_url":""}},"display_main_slider_item_5":{"type":"image","visible":false,"settings":{"dict_link":"","dict_image_url":"","dict_tablet_image_url":"","dict_mobile_image_url":""}}},"block_order":["display_main_slider_item_1","display_main_slider_item_2","display_main_slider_item_3","display_main_slider_item_4","display_main_slider_item_5"],"settings":{}},"_index_product_banner":{"type":"_index_product_banner","visible":false,"settings":{"dict_link":"","dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzY3MTUxNjI1X-ihqOagvDEgKDEzKS5wbmcucG5nIl1d.png?sha=d9706b9f298349fe","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzY3MTUxOTAyX-ihqOagvDEgKDExKS5wbmcucG5nIl1d.png?sha=c413d78751e893ee","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzY3MTUxODM1X21f6KGo5qC8MSAoMTApLnBuZy5wbmciXV0.png?sha=1271e6f3bd536d02","display_cta_btn":false,"cta_btn_display_style":"topPosition","dict_cta_btn_text":"","cta_btn_bg_color":"#ff0f0f","cta_btn_text_color":"#ffffff","margin_x":"100","margin_bottom":"10","mobile_margin_x":"0","mobile_margin_bottom":"10","product_banner_image_alt":""},"custom_name":"æ©«å¹ å»£å"},"_index_8_blocks":{"type":"_index_8_blocks","visible":false,"settings":{"dict_title":"","collection_handle":"frontpage","limit":"12","product_arrangement":"1","product_alignment":"leftPosition","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"24","product_display":"displayDefault"},"custom_name":"åååé¡"},"_index_4_blogs":{"type":"_index_4_blogs","visible":false,"blocks":{"index_4_blogs_1":{"type":"blog","visible":true,"settings":{"blog_handle":"news"},"custom_name":"é¨è½æ ¼"},"index_4_blogs_2":{"type":"blog","visible":true,"settings":{"blog_handle":"news"},"custom_name":"é¨è½æ ¼"},"index_4_blogs_3":{"type":"blog","visible":true,"settings":{"blog_handle":"news"},"custom_name":"é¨è½æ ¼"},"index_4_blogs_4":{"type":"blog","visible":true,"settings":{"blog_handle":"news"},"custom_name":"é¨è½æ ¼"}},"block_order":["index_4_blogs_1","index_4_blogs_2","index_4_blogs_3","index_4_blogs_4"],"settings":{"dict_title":"æ´å¤è³è¨","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"50"},"custom_name":"åé é 籤"},"_index_4_blocks":{"type":"_index_4_blocks","visible":true,"blocks":{"display_index_4_block_1":{"type":"image","visible":true,"settings":{"title":"","dict_link":"/products/a2","dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzUzODYzNDUzX0Ey55Si5ZOB5YiG6aGe5ZyWICgyKS5wbmcucG5nIl1d.png?sha=0e9d6c6134b518ae","dict_tablet_image_url":"","dict_mobile_image_url":"","block_propotion":"","dict_image_description":""},"custom_name":"åç"},"1715066831584_3":{"type":"html","custom_name":"èªè¨HTML","visible":true,"settings":{"dict_body_html":"hi"}},"1715066860568_3":{"type":"html","custom_name":"èªè¨HTML","visible":false,"settings":{"dict_body_html":"oh"}},"1715274486572_0":{"type":"image","custom_name":"åç","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc0MjExX2E1LVcxMDAweEgxMDAwLTEwMC5qcGcuanBlZyJdXQ.jpeg?sha=1fe75f3dbcfb7940","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"/products/a5","block_propotion":"","dict_image_description":""}},"1715274488005_0":{"type":"image","custom_name":"åç","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE2NzAxMjk0X2E2LVcxMDAweEgxMDAwLTEwMC5qcGcuanBlZyJdXQ.jpeg?sha=5c811ab7a8cb4967","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"/products/a68","block_propotion":"","dict_image_description":""}},"1721378186690_0":{"type":"image","custom_name":"åç","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIxMzgxMjc1XzE3MTUyNzQyMTFfYTQtVzEwMDB4SDEwM
61DAtMTAwLmpwZy0oMSkuanBnLmpwZWciXV0.jpeg?sha=d72deee16f821e61","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIxMzgxMjc1XzE3MTUyNzQyMTFfYTQtVzEwMDB4SDEwMDAtMTAwLmpwZy0oMSkuanBnLmpwZWciXV0.jpeg?sha=d72deee16f821e61","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIxMzgxMjc1XzE3MTUyNzQyMTFfYTQtVzEwMDB4SDEwMDAtMTAwLmpwZy0oMSkuanBnLmpwZWciXV0.jpeg?sha=d72deee16f821e61","dict_link":"/products/a3","custom_block_image_alt":"","dict_image_description":""}},"1722312400782_0":{"type":"image","custom_name":"åç","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIzNjkyNDMyX2E0ei5qcGcuanBlZyJdXQ.jpeg?sha=1c087743a8914e78","dict_tablet_image_url":"","dict_mobile_image_url":"","dict_link":"/products/a4z","dict_image_description":""}}},"block_order":["1715274488005_0","1715274486572_0","1721378186690_0","1722312400782_0","display_index_4_block_1"],"custom_name":"èªè¨æçè¨è¨","settings":{"margin_x":"120","margin_bottom":"39","margin_block":"40","mobile_margin_x":"40","mobile_margin_bottom":"0","mobile_columns":1,"mobile_margin_block":"28","mobile_align":"left"}},"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/new_index_4_blocks_1.jpg","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":"6","category_product_item_limit":"18"}},"shop_setting":{"type":"shop_setting","visible":true,"settings":{"favicon_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3NzUxNTM0XzMxMzI1NTM1MV8xMTE2NTc1Mjg0MDU4MThfNzE3ODI4NTQ4NDE3OTY1MjAwX24uanBnLmpwZWciXV0.jpeg?sha=6bef36928c393981","og_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3NzUxNTM0XzMxMzI1NTM1MV8xMTE2NTc1Mjg0MDU4MThfNzE3ODI4NTQ4NDE3OTY1MjAwX24uanBnLmpwZWciXV0.jpeg?sha=6bef36928c393981","shop_title":"é»åç£¨è±æ©","shop_description":"ä¾èªå°ç£çé»åç£¨è±æ©åç","shop_keywords":"é»åç£¨è±æ©","prevent_right_click":false},"custom_name":"å
¨ç«è¨å®"},"color_settings":{"type":"color_settings","visible":true,"settings":{"button_color":"#3493FF","button_text_color":"#FFFFFF","accent_color":"#1963b8","heading_color":"#ffffff","text_color":"#B4B4B4","price_color":"#C39D6F","discount_price_color":"#C39D6F","theme_bg_color":"#252525","product_border_color":"#E2E2E2","tips_text_color":"#0C5460","nav_logo_bg_color":"#252525","nav_menu_bg_color":"#252525","nav_menu_text_color":"#ffffff","nav_menu_icon_color":"#ffffff","footer_bg_color":"#000000","footer_text_color":"#FFFFFF","checkout_button_color":"#3493FF","checkout_accent_color":"#0A2B6C"},"custom_name":"é¡è²è¨å®"},"popup":{"type":"popup","visible":true,"blocks":{"popup_block_1":{"type":"image","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg5OTY3NzczX0ZFTU9CT09LXyjkuK3np4sp6YCj5YGH5YWs5ZGK5ZyWXzE5MjAuanBnLmpwZWciXV0.jpeg?sha=7eefa7ae65baf094","icon_size":"middle","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg5OTY3Nzg3X0ZFTU9CT09LXyjkuK3np4sp6YCj5YGH5YWs5ZGK5ZyWXzk2MC5qcGcuanBlZyJdXQ.jpeg?sha=1fd544fc9fea809d","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg5OTY3ODQ5X0ZFTU9CT09LXyjkuK3np4sp6YCj5YGH5YWs5ZGK5ZyWXzQ4MC5qcGcuanBlZyJdXQ.jpeg?sha=3a8144f6f4b91d03","dict_link":"","dict_icon_
61image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg5OTY3ODA4X0ZFTU9CT09LXyjkuK3np4sp6YCj5YGH5YWs5ZGK5ZyWXzQ4MC5qcGcuanBlZyJdXQ.jpeg?sha=9704da9f633e7dd9","link_open_in_new_tab":false},"custom_name":"åç"}},"block_order":["popup_block_1"],"settings":{},"custom_name":"å½çªå»£å"},"product_info":{"type":"product_info","visible":true,"settings":{"display_product_sku":false,"dict_vip_custom_price_text":"","dict_vip_custom_price_href":""},"custom_name":"åºæ¬è¨å®"},"product_description":{"type":"product_description","visible":true,"custom_name":"ååä»ç´¹"},"board_comments":{"type":"board_comments","visible":true,"settings":{},"custom_name":"ååè©è«","thumbnail":"list","draggable":false},"related_products":{"type":"related_products","visible":true,"settings":{"display_related_cols":false,"use_custom_related_cols":false,"dict_group_related_cols_related_product":"ç¸éåå","related_products_limit":"4"},"custom_name":"ç¸éåå"},"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":"","collection_sidebar_set_open":false,"collection_pagination_limit":"24","is_infinite_scroll":false},"custom_name":"åååé¡è¨å®"},"404":{"type":"404","visible":true,"settings":{"image_url":"/theme_src/i18n_shoestore/default_img/404_img.png","dict_404_image_url":"/theme_src/i18n_shoestore/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":{}},"1715063788940_0":{"type":"_main_slider_custom","custom_name":"輪æç´ æ","visible":true,"settings":{"swiper_delay":"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","transition_speed":"0.3"},"blocks":{"1715063788943_0":{"type":"image","custom_name":"ç´ æ","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1MDYyOTY2X0JOXzAx5qmr5byPLVcxOTIweEgxMDgwLmpwZy5qcGVnIl1d.jpeg?sha=5c7f909ca3a92a56","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1MDYyOTY2X0JOXzAx5qmr5byPLVcxOTIweEgxMDgwLmpwZy5qcGVnIl1d.jpeg?sha=5c7f909ca3a92a56","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1MDYyOTY2X0JOXzAx55u05byPLVc0ODB4SDY0MC5qcGcuanBlZyJdXQ.jpeg?sha=0c4e28d6018507b6","dict_link":"/products/a68","slide_contents_display":"left","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","dict_slide_btn_link":""}},"1715063830156_0":{"type":"image","custom_name":"å°é¨","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIxNzIyODQ2XzEuanBnLmpwZWciXV0.jpeg?sha=dc6d34702f0aa227","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIxNzIyODQ2XzEuanBnLmpwZWciXV0.jpeg?sha=dc6d34702f0aa227","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIxNzIyODQ2XzEuanBnLmpwZWciXV0.jpeg?sha=dc6d34702f0aa227","dict_link":"","slide_contents_display":"left","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","dict_slide_btn_link":""}},"1719210168707_0":{"type":"image","custom_name":"2大賽äº","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIzNTM1OTA3X-mVt-aWuUdETuW7o-WRiue0oOadkCAoMjA0OCB4IDExNTIg5YOP57SgKSAoMjI0MCB4IDgwMCDlg4_ntKApICgyKS5qcGcuanBlZyJdXQ.jpeg?sha=7587263ccd470347","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIzNTM1OTA3X-mVt-aWuUdETuW7o-WRiue0oOadkCAoMjA0OCB4IDExNTIg5YOP57SgKSAoMjI0MCB4IDgwMCDlg4_ntKApICgyKS5qcGcuanBlZyJdXQ.jpeg?sha=7587263ccd470347","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIzNTM1OTMwX--8p--8pO-8ruato-aWueW9oiAoNDgwIHggNjQwIOWDj-e0oCkgKDEpLmpwZy5qcGVnIl1d.jpeg?sha=5c3e605
61aeb5ed402","dict_link":"/pages/grinderselection","slide_contents_display":"left","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","dict_slide_btn_link":""}},"1726492131583_0":{"type":"image","custom_name":"åå¡å±æ»ç¥","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzMwOTU4NTgxXzExNSDlj7DljJflsZXnmbzmlofkv67mlLkgKDE5MjAgeCAxMDgwIOWDj-e0oCkgKDIpLnBuZy5wbmciXV0.png?sha=7f6b7d9e51572d79","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzMwOTU4NTgxXzExNSDlj7DljJflsZXnmbzmlofkv67mlLkgKDE5MjAgeCAxMDgwIOWDj-e0oCkgKDIpLnBuZy5wbmciXV0.png?sha=7f6b7d9e51572d79","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzMwOTU4Mzk2XzExNSDlj7DljJflsZXnmbzmlofkv67mlLkgKDQ4MCB4IDEwODAg5YOP57SgKSAoMSkucG5nLnBuZyJdXQ.png?sha=681a6b1422a993f6","dict_link":"/pages/2024-coffee-show","main_slider_image_alt":"","slide_contents_display":"left","slide_btn_text":"","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","link_open_in_new_tab":true,"dict_slide_btn_text":"","dict_slide_btn_link":""}},"1731486743926_0":{"type":"image","custom_name":"ç·ä¸åå¡å±","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzMzNDQ3NzYxX2ZlbW_nt5rkuIrlkpbllaHlsZUgICgxOTIwIHggMTA4MCDlg4_ntKApLmpwZy5qcGVnIl1d.jpeg?sha=b222b8184eb96400","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzMzNDQ3NzYwX2ZlbW_nt5rkuIrlkpbllaHlsZUgKDEwODAgeCAxMDgwIOWDj-e0oCkucG5nLnBuZyJdXQ.png?sha=3fc2d01960089b1c","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzMzNDQ3NzYwX2ZlbW_nt5rkuIrlkpbllaHlsZUgKDQ4MCB4IDcyMCDlg4_ntKApLnBuZy5wbmciXV0.png?sha=be11d4845a8bf274","dict_link":"/collections/allproduct","slide_contents_display":"left","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","dict_slide_btn_link":""}},"1755156890973_0":{"type":"image","custom_name":"A2é¨èº«å¸¶èµ°","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzU1MTYwNTk2X2ZlbW9fYTJfMTkyMC03NjguanBnLmpwZWciXV0.jpeg?sha=b03495f280df5a94","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzU1MTU3MTM4X2ZlbW9fYTJfOTYwLTM4MC5wbmcucG5nIl1d.png?sha=08b16d196dfcbfa5","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzU1MTU3MTQ0X2ZlbW9fYTJfNDgwLTY0MC5wbmcucG5nIl1d.png?sha=ced2e2e9c17fcbaa","dict_link":"/products/a2","slide_contents_display":"center","dict_slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff"}},"1755157225067_0":{"type":"image","custom_name":"A68ä¸çåå¡å¤§è³½","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzU1MTU3MzAyX2ZlbW9fYTY4X1YyLV8xOTIwLTc2OC5qcGcuanBlZyJdXQ.jpeg?sha=3798edc7a9c9216e","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzU1MTU3MzA5X2ZlbW9fYTY4X1YyIF85NjAtMzgwLnBuZy5wbmciXV0.png?sha=7361772d9f7c7c57","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzU1MTU3MzE3X2ZlbW9fYTY4X1YyIF80ODAtNjQwLnBuZy5wbmciXV0.png?sha=365f5b5e4047af75","dict_link":"/products/a68","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"}},"1762389346695_0":{"type":"image","custom_name":"2025ç·ä¸åå¡å±","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzYyODUyMzI4XzIwMjUxMSDnt5rkuIrlkpbllaHlsZUgKDMpLmpwZy5qcGVnIl1d.jpeg?sha=c7e4fbb741bb9670","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzYyMzg5NDc3XzIwMjUxMSDnt5rkuIrlkpbllaHlsZU5NjAtMzgwLmpwZy5qcGVnIl1d.jpeg?sha=d5641db3c786634b","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzYyMzg5NjUxXzEx5pyILUZlbW_lrpjntrLlgJLmlbguanBnLmpwZWciXV0.jpeg?sha=3e9f56921bf3efaa","dict_link":"https://www.femobook.com.tw/pages/promotion-november","slide_contents_display":"left","dict_slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","link_open_in_new_tab":true}},"1762389681400_0":{"type":"image","custom_name":"2025åå¡å±","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzYyMzg5Njk2X2ZlbW_lkpbllaHlsZVfMTkyMC03NjguanBnLmpwZWciXV0.jpeg?sha=3d0ed29c0b1ca8f4","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzYyMzg5NzA3X2ZlbW_lkpbllaHlsZVfOTYwLTM4MC5wbmcucG5nIl1d.png?sha=9a5e716c49bf9c79","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzYyMzg5NzE1X2ZlbW_lkpbllaHlsZVfMTA4MC0xMDgwLnBuZy5wbmciXV0.png?sha=d96d365a1a29d70c","dict_link":"/pages/2025-coffee-show","link_open_in_new_tab":true,"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"}},"1778634731605_0":{"type":"image","custom_name":"A2å
¬å","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzc5MjY4Nzg5X-OAkEZlbW9ib29rIEEyIOWVhuWTgeWFrOWRiuOAkSAoMTkyMCB4IDEwMDAg5YOP57SgKS5wbmcucG5nIl1d.png?sha=416efb8effce3b3a","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzc5MjY4Nzg5X-OAkEZlbW9ib29rIEEyIOWVhuWTgeWFrOWRiuOAkSAoMTkyMCB4IDEwMDAg5YOP57SgKS5wbmcucG5nIl1d.png?sha=416efb8effce3b3a","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzc5MjY4Nzg5X-OAkEZlbW9ib29rIEEyIOWVhuWTgeWFrOWRiuOAkSAoMTkyMCB4IDEwMDAg5YOP57SgKS5wbmcucG5nIl1d.png?sha=416efb8effce3b3a","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"}},"1781228773309_0":{"type":"image","custom_name":"202609æå¡æ´»å","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg4MTU5NDc2XzIwMjYwODIwX0ZFTU9CT09LX-S5neaciOacg-WToeaXpV8xOTIwLmpwZy5qcGVnIl1d.jpeg?sha=78f7efe5a85060ef","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg4MTU5NDg4XzIwMjYwODIwX0ZFTU9CT09LX-S5neaciOacg-WToeaXpV85NjAuanBnLmpwZWciXV0.jpeg?sha=ab64f921b478e5be","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg4MTU5NDk3XzIwMjYwODIwX0ZFTU9CT09LX-S5neaciOacg-WToeaXpV80ODAuanBnLmpwZWciXV0.jpeg?sha=f006f761796fe533","dict_link":"/products/a68","link_open_in_new_tab":false,"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"}},"1781229145844_0":{"type":"image","custom_name":"A68","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NTU3XzIwMjYwNjI2X-WumOe2skJOKEE2OClCXzE5MjAuanBnLmpwZWciXV0.jpeg?sha=bf7ecaf4d9cf6750","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NTY3XzIwMjYwNjI2X-WumOe2skJOKEE2OClCXzk2MC5qcGcuanBlZyJdXQ.jpeg?sha=47d4196d613d2e80","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NTc2XzIwMjYwNjI2X-WumOe2skJOKEE2OClCXzQ4MC5qcGcuanBlZyJdXQ.jpeg?sha=7862b123c70181cf","dict_link":"/products/a68","link_open_in_new_tab":true,"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"}},"1781508746058_0":{"type":"image","custom_name":"端åç¯é£åå
¬å","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgxNTA4NzYyX-err-WNiF8xOTIwLnBuZy5wbmciXV0.png?sha=ee8b9bce26a5a939","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgxNTA4NzYyX-err-WNiF8xOTIwLnBuZy5wbmciXV0.png?sha=ee8b9bce26a5a939","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgxNTA4NzYyX-err-WNiF8xOTIwLnBuZy5wbmciXV0.png?sha=ee8b9bce26a5a939","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"}},"1782884623786_0":{"type":"image","custom_name":"A4Z","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NjQzXzIwMjYwNjI2X-WumOe2skJOKEE0WilCXzE5MjAuanBnLmpwZWciXV0.jpeg?sha=b16aa30d808d007f","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NjU0XzIwMjYwNjI2X-WumOe2skJOKEE0WilCXzk2MC5qcGcuanBlZyJdXQ.jpeg?sha=605adb9d60a46df5","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NjYxXzIwMjYwNjI2X-WumOe2skJOKEE0WilCXzQ4MC5qcGcuanBlZyJdXQ.jpeg?sha=6f080a3c39c33d84","dict_link":"/products/a4z","link_open_in_new_tab":true,"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":["1781228773309_0","1781229145844_0","1782884623786_0","1755157225067_0","1781508746058_0","1762389681400_0","1762389346695_0","1731486743926_0","1726492131583_0","1719210168707_0","1715063788943_0","1715063830156_0","1755156890973_0","1778634731605_0"]},"1715069870196_5":{"type":"_custom_html","custom_name":"èªè¨HTML","visible":false,"settings":{"margin_x":"120","margin_bottom":"0","mobile_margin_x":"25","mobile_margin_bottom":"","dict_body_html":"\u003ciframe id=\"desktop-yt\" width=\"100%\" height=\"700px\" src=\"https://www.youtube.com/embed/X0Hwzg580fc?si=CDyhhUzq6YI7kPyB\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen\u003e\u003c/iframe\u003e\n\u003ciframe id=\"mobile-yt\" width=\"100%\" height=\"100%\" src=\"https://www.youtube.com/embed/X0Hwzg580fc?si=CDyhhUzq6YI7kPyB\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen\u003e\u003c/iframe\u003e"},"blocks":{},"block_order":[]},"1715271445372_0":{"type":"_main_slider_custom","custom_name":"輪æç´ æ","visible":true,"settings":{"swiper_delay":"5","margin_x":"0","margin_bottom":"0","image_number":"1","image_space":"12","mobile_margin_x":"0","mobile_margin_bottom":"0","mobile_image_number":"1","mobile_image_space":"8","transition_speed":"0.3"},"blocks":{"1715271445376_0":{"type":"image","custom_name":"ç´ æ","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU4X-WVhueUqOmmlumBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=4ceaf5b0756e9ed4","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU4X-WVhueUqOmmlumBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=4ceaf5b0756e9ed4","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU3X00t5ZWG55So6aaW6YG4LVczMDB4SDIwMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=361309baa0ffcc08","dict_link":"/products/a68","slide_contents_display":"left","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","dict_slide_btn_link":""}},"1715273994664_0":{"type":"image","custom_name":"ç´ æ","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU3X-S-v-WIqeaUnOW4ti1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=558c2cb058308516","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU3X-S-v-WIqeaUnOW4ti1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=558c2cb058308516","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU3X00t5L6_5Yip5aW95pSc5bi2LVczMDB4SDIwMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=3ae4a1734bdd11e7","dict_link":"/products/a4","slide_contents_display":"left","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","dict_slide_btn_link":""}},"1715273996021_0":{"type":"image","custom_name":"ç´ æ","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NzczX-aTuuaUpOmBqeeUqC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=aeffc3212aaa2a55","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NzczX-aTuuaUpOmBqeeUqC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=aeffc3212aaa2a55","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0Nzc3X00t5pO65pSk6YGp55SoLVczMDB4SDIwMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=36a0fc34f2878871","dict_link":"/products/a5","slide_contents_display":"left","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","dict_slide_btn_link":""}}},"block_order":["1715271445376_0","1715273994664_0","1715273996021_0"]},"1715274086521_1":{"type":"_index_product_banner","custom_name":"æ©«å¹
廣å","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X-WwiOWIqeaooee1hOioreioiC3vvLcxNDIweEgyMjAucG5nLnBuZyJdXQ.png?sha=491d673ac283b687","dict_tablet_image_url":"","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X00t5bCI54K657K-5ZOB5ZKW5ZWh5omT6YCgLVczMDB4SDEyMC5wbmcucG5nIl1d.png?sha=bd86e7472b968923","dict_link":"","cta_btn_display_style":"topPosition","cta_btn_bg_color":"#000000","cta_btn_text_color":"#ffffff","margin_x":"120","margin_bottom":"12","mobile_margin_x":"26","mobile_margin_bottom":"24"},"blocks":{},"block_order":[]},"1715274387306_7":{"type":"_text_editor_section","custom_name":"æå編輯","visible":true,"settings":{"margin_x":"120","margin_bottom":"40","mobile_margin_x":"20","mobile_margin_bottom":"40","dict_advanced_rich_text_content":"\u003cp style=\"text-align:center;\"\u003e\u003cspan style=\"color: rgb(255,255,255);font-size: 16px;\"\u003eé¨èç²¾åå塿µªæ½®ä¾è¥²ï¼èçæ³æ¥æ°æç°ï¼åå¡è±åè³ªä¸æ·æåï¼ç£¨è±æ©ä¹éè¦èæä¿±é²ï¼è®åå¡è¾²åªåçæå¯¦ï¼å¾ä»¥åç¾æç¾å¥½çåå¡é¢¨å³å¾ä½¿ç¨è
çé«é©åºç¼ï¼ææéç給享ç¨åå¡çç¾å¥½æå»ï¼è§£æ±ºéå¾ç 磨å塿ç麻ç
©åé¡\u003c/span\u003e\u003c/p\u003e\n"},"blocks":{},"block_order":[]},"1715369570801_6":{"type":"_graphic_introduction","custom_name":"åæä»ç´¹","visible":true,"settings":{"text_display":"midPosition","graphic_text":"#ffffff","graphic_bg"
61:"#000000","margin_x":"0","margin_bottom":"0","mobile_margin_x":"0","mobile_margin_bottom":"0","dict_image_url":"","dict_tablet_image_url":"","dict_mobile_image_url":"","btn_display":"leftSide","block_propotion":"50"},"blocks":{"1715369570819_0":{"type":"title","custom_name":"æ¨é¡","visible":true,"settings":{"dict_rich_text_title":"使ç¨LINE@èæåè¯ç¹«","dict_size":"24"}},"1715369570820_2":{"type":"button","custom_name":"æé","visible":true,"settings":{"dict_btn_text":"ç«å³å å
¥","graphic-button_bg":"#3493FF","graphic-button_text":"#FFFFFF","dict_graphic_button_link":"https://line.me/R/ti/p/@167sncrs?oat_content=url\u0026ts=06031744"}}},"block_order":["1715369570819_0","1715369570820_2"]},"1716090072546_1":{"type":"_index_product_banner","custom_name":"æ©«å¹
廣å","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X-WwiOeCuueyvuWTgeWSluWVoeaJk-mAoC3vvLcxNDIweEgyMjAtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=6c283392efe9aff6","dict_tablet_image_url":"","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X00t5bCI5Yip5qih57WE6Kit6KiILVczMDB4SDEyMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=d45c9e524c965173","dict_link":"","cta_btn_display_style":"topPosition","cta_btn_bg_color":"#000000","cta_btn_text_color":"#ffffff","margin_x":"118","margin_bottom":"50","mobile_margin_x":"22","mobile_margin_bottom":"24"},"blocks":{},"block_order":[]},"1716620994813_0":{"type":"_main_slider_custom","custom_name":"輪æç´ æ","visible":true,"settings":{"swiper_delay":"3","margin_x":"0","margin_bottom":"0","image_number":"1","image_space":"12","mobile_margin_x":"0","mobile_margin_bottom":"0","mobile_image_number":"1","mobile_image_space":"8","transition_speed":"0.3"},"blocks":{"1716620994827_0":{"type":"image","custom_name":"ç´ æ","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjA3X-WmguS9leaMkemBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=1e000e54abf23ead","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjA3X-WmguS9leaMkemBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=1e000e54abf23ead","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjE1X00t5aaC5L2V5oyR6YG4LVczMDB4SDIwMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=e880424c3634c8e4","dict_link":"/pages/grinderselection","slide_contents_display":"left","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","dict_slide_btn_link":""}},"1716621308499_0":{"type":"image","custom_name":"ç´ æ","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1NDQ4ODkyX-WmguS9leaMkemBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=8bc1b3b6583bf9a7","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1NDQ4ODkyX-WmguS9leaMkemBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=8bc1b3b6583bf9a7","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1NDQ4ODkyX-WmguS9leaMkemBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=8bc1b3b6583bf9a7","dict_link":"/pages/ç£¨è±æ©å¦ä½æé¸","slide_contents_display":"left","slide_btn_link":"","slide_title_color":"#000000","slide_content_color":"#000000","slide_btn_bg_color":"#000000","slide_btn_text_color":"#ffffff","dict_slide_btn_link":""}}},"block_order":["1716620994827_0","1716621308499_0"]},"1716791046824_5":{"type":"_custom_html","custom_name":"èªè¨HTML","visible":true,"settings":{"margin_x":"120","margin_bottom":"-10","mobile_margin_x":"24","mobile_margin_bottom":"-10","dict_body_html":"\u003cdiv\u003e\u003cimg loading=\"lazy\" id=\"desktop-yt\" width=\"100%\" height=\"100%\" src=\"//cdn-general.cybassets.com/s/files/28976/ckeditor/pictures/content_aa0da766-1b26-4734-8ac7-419429da2126.gif\" with=\"100%\" heigh=\"400\" alt=\"極éå¿«æ\"\u003e\u003c/div\u003e\n\u003cdiv\u003e\u003cimg loading=\"lazy\" id=\"mobile-yt\" width=\"100%\" height=\"100%\" src=\"//cdn-general.cybassets.com/s/files/28976/ckeditor/pictures/content_aa0da766-1b26-4734-8ac7-419429da2126.gif\" with=\"100%\" heigh=\"400\" alt=\"極éå¿«æ\"\u003e\u003c/div\u003e"},"blocks":{},"block_order":[]},"1746692951347_3":{"type":"_index_4_blogs","custom_name":"åå¡ç¥è","visible":true,"settings":{"dict_title":"æ´å¤è³è¨","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"50","article_c
61olumns":"4"},"blocks":{"1746692951349_0":{"type":"blog","custom_name":"é¨è½æ ¼","visible":true,"settings":{"blog_handle":"coffee-information"}},"1746693105187_0":{"type":"blog","custom_name":"é¨è½æ ¼","visible":true,"settings":{"blog_handle":"reviews"}}},"block_order":["1746692951349_0","1746693105187_0"]},"1746693569979_3":{"type":"_index_4_blogs","custom_name":"åé é 籤","visible":false,"settings":{"dict_title":"","margin_x":"0","margin_bottom":"50","mobile_margin_x":"0","mobile_margin_bottom":"50","article_columns":"4"},"blocks":{"1746693569980_0":{"type":"blog","custom_name":"é¨è½æ ¼","visible":true,"settings":{"blog_handle":"åä½åºå®¶è³è¨"}}},"block_order":["1746693569980_0"]},"1767148807242_8":{"type":"_text_editor_section","custom_name":"æå編輯","visible":true,"settings":{"margin_x":"0","margin_bottom":"0","mobile_margin_x":"0","mobile_margin_bottom":"0","dict_advanced_rich_text_content":"\u003cp style=\"text-align:center;\"\u003e\u003cspan style=\"color: rgb(255,255,255);font-size: 24px;\"\u003eå忝è¼è¡¨\u003c/span\u003e\u003c/p\u003e\n"},"blocks":{},"block_order":[]},"announcement_bar":{"type":"announcement_bar","visible":true,"blocks":{"announcement_bar_block_1":{"type":"text","visible":true,"settings":{"display_only_index":false,"display_period":"limited","dict_link":"/products/a68","link_open_in_new_tab":false,"dict_image_url":"","dict_image_tablet_url":"","dict_image_mobile_url":"","image_alt":"","dict_content":"\u003cp\u003eãéæ 3 天ã9/1ï¼äºï¼è³ 9/3ï¼åï¼ï¼æ´»åæéå
§æ¼å®ç¶²ä¸å®A68ï¼å³äº«æ¬å³¶å
éé貨\u003c/p\u003e\n","text_size":"16","text_color":"#ffffff","bg_color":"#1E3A8A","timer_text_color":"#FFFFFF","timer_bg_color":"#3994f7","migrated_from_navbar":true},"custom_name":"æå"},"1788160806658_2":{"type":"countdown","custom_name":"忏","visible":true,"settings":{"display_only_index":false,"display_period":"limited","dict_title_text":"A68éæåªæ ","timer_text_color":"#f2d1a9","timer_bg_color":"#0c1aaa"}},"1789963162964_1":{"type":"text","custom_name":"æå","visible":true,"settings":{"display_only_index":false,"display_period":"limited","dict_content":"\u003cp\u003eãé£åå
¬åãå æ 9/25ï¼äºï¼ï¼ 9/28ï¼ä¸ï¼ ä¸ç§é£åï¼å®¢æèç©æµå°æ«åæåã9/23ï¼ä¸ï¼ 10:00 徿ç«çè¨å®ï¼å°æ¼ 9/29ï¼äºï¼èµ·ä¾åºèçã\u003c/p\u003e\n","text_size":"16","text_color":"#ffffff","bg_color":"#000000"}}},"block_order":["announcement_bar_block_1","1788160806658_2","1789963162964_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":"","
61index_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":false,"is_first_selected":false,"display_product_images_color":false,"discount_product_images_color_expand":false,"display_product_discounts_list":true,"display_discount_price_name":true,"discount_price_slogan_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzU0NjQzMzcxX3NhbGUucG5nLnBuZyJdXQ.png?sha=8baed6104b5e3506","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':'Noto Sans TC'},'en':{'value':'Noto Sans TC'},'zh-CN':{'value':'Noto Sans TC'}}","styled_shop_menu":"buttonType","product_scale":"default_scale","display_product_vendor":false,"product_video_display_location":"before","product_text_align":"start","product_labels":{"items":[{"id":"sale_label","kind":"system","title":"ç¹å¹æ¨ç±¤","display":true,"type":"image","dict_text":{"zh-TW":""},"image":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzU0NjQzMzcxX3NhbGUucG5nLnBuZyJdXQ.png?sha=8baed6104b5e3506","image_size":"large"},{"id":"out_of_stock_label","kind":"system","title":"缺貨æ¨ç±¤","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"periodic_event_label","kind":"system","title":"宿å®é¡æ¨ç±¤","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"f2074d94-4f2f-45a3-a203-97be92fe5fc7","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 1","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"cbde2685-7943-455e-b75f-2c63ee7ea471","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 2","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"f1d5c02f-5122-4aa9-91c5-434b87236a88","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 3","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"00fe6e0b-92cf-466f-aede-918895023108","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 4","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"},{"id":"feb4d0f2-25fb-4019-883e-73e739ab4f4d","kind":"custom","title":"èªå®ç¾©æ¨ç±¤ 5","tag":"","display":false,"type":"text","dict_text":{"zh-TW":""},"image":"","image_size":"small"}]},"nav_icon_style":"icon_type_default","product_card_hover_effect":"button","product_image_border_radius":"0"}); 62 </script>
62 63 64 65 66 67 68 69 70 71
71<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","url":"https://www.femobook.com.tw","logo":"https://cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc2NzY2X0xvZ28t77y3MjIweEgyNi5wbmcucG5nIl1d.png?sha=2f37ee574ddbc515"}</script>
71<script type="application/ld+json">{"@context":"https://schema.org/","@type":"WebSite","name":"femobook","url":"https://www.femobook.com.tw","potentialAction":{"@type":"SearchAction","target":"www.femobook.com.tw/search?q={search_term_string}","query-input":"required name=search_term_string"}}</script>
71 72 73 74 75 <!-- for vendor --> 76 <!-- cyb_snippet _bootstrap start --> 77 78<!-- cyb_snippet _bootstrap end --> 79 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/vendor-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 80 81 <!-- common css rulesets --> 82 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/common-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 83 84 <!-- for navbar --> 85 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/navbar-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 86 87 <!-- for footer --> 88 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/footer-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 89 90 <!-- theme assets --> 91 <link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/main-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 92 93 <!-- for vendor --> 94
94<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/vendor-3a2e378145f8a165.js' type='text/javascript'></script>
94 95 96 <!-- for custom css --> 97 <link href='//cdn-general.cybassets.com/s/files/28976/theme/106642/assets/css/1716705944_2bef44c3_custom.css?1716705944' rel='stylesheet' type='text/css' media='all' /> 98 99
99<script> 100 window.sci = "eyJzaG9wX2lkIjoyODk3Niwic2hvcF9wbGFuIjoibWFzdGVyX3BsdXMiLCJk\naW1fYWZmaWxpYXRlIjpudWxsLCJjdXN0b21lcl9pZCI6bnVsbCwiY3VzdG9t\nZXJfbmFtZSI6bnVsbCwic2hvcF9uYW1lIjoiZmVtb2Jvb2siLCJzaGFyZV9h\ndHRyaWJ1dGlvbl9lbmFibGVkIjpmYWxzZX0=\n"; 101 </script>
101 102 103 104<meta name="csrf-param" content="authenticity_token" /> 105<meta name="csrf-token" content="YGpr_mmmR_jP2EGg8DDajQmSCn1liwVtI9q3q-TnXsa2YiF0AKt01hI4Ex77GfRW7RSSZ8gROzf8aAku79Yj1A" />
106<script>(function () { 107 window.gaConfigurations = {"useProductIdInProductEvents":false}; 108})(); 109</script>
vendor: 1 bytes, line 109
109
110<script>(function () { 111 window.CYBERBIZ_PageContext = {"page_type":"home"}; 112})(); 113</script>
113 114<link href="//cdn-general.cybassets.com/frontend/shop/quark-3a2e378145f8a165.css" rel="stylesheet" type="text/css" media="all" /> 115
115<script> 116 window.shopScriptHelper = { 117 i18nLocale: "zh-TW", 118 i18nLocaleDefault: "zh-TW", 119 availableCurrencies: [], 120 defaultCurrency: "TWD", 121 currenciesInfo: [{"code":"TWD","email":"NT${{amount_no_decimals}}","unit":"","money_format":"%u%n","trailing_zeros":false,"symbol":"NT$","decimal_precision":0,"format":"NT${{amount_no_decimals}}","email_unit":"NT${{amount_no_decimals}}","html_unit":"NT${{amount_no_decimals}}","html":"NT${{amount_no_decimals}}","name":"æ°å°å¹£ (TWD)"}], 122 vueOverrideTranslations: {"zh-TW":{"vue":{"theme_pages":{"order_return":{"address1":"詳細é貨å°åï¼è·¯/å··/å¼/è/æ¨","keyin_address1":"è«å¡«å¯«è©³ç´°é貨å°åï¼è·¯/å··/å¼/è/æ¨"}}}}}, 123 hasI18nInContextEditing: false, 124 shopMultipleCurrenciesCheckout: false, 125 hasLocalizedShopPriceFormat: true, 126 } 127 </script>
127 128 129 130
130<script 131 src="//cdn-general.cybassets.com/frontend/shop/tolgeeIntegration-3a2e378145f8a165.js"> 132 </script>
132 133
133<script defer> 134 /* 135 * Enable in-context translation for Liquid part on the page. 136 * This must be executed last to prevent conflicts with other Vue apps. 137 * So put it to `onload`, which will be executed after DOM ready's app mount 138 */ 139 window.onload = function() { 140 if ( 141 window.shopScriptHelper && 142 window.shopScriptHelper.hasI18nInContextEditing 143 ) { 144 window.initTolgeeForLiquid() 145 } 146 } 147 </script>
147 148
149<script> var google_con_event_labels = [{"conversion_id":"17005712776","conversion_event":"order_created","conversion_label":"27DiCJ3llr8aEIir-qw_","id":null},{"conversion_id":"17005712776","conversion_event":"add_to_cart","conversion_label":"xUDiCIeRmL8aEIir-qw_","id":null},{"conversion_id":"18440271667","conversion_event":"order_created","conversion_label":"H6tfCMbj7vQcELPugNlE","id":null},{"conversion_id":"18440271667","conversion_event":"add_to_cart","conversion_label":"fgcmCMnj7vQcELPugNlE","id":null},{"conversion_id":"18440271667","conversion_event":"all","conversion_label":"3u9JCMzj7vQcELPugNlE","id":null}]</script>
vendor: 1 bytes, line 149
149
150<script src="//cdn-general.cybassets.com/frontend/shop/pageEventHandler-3a2e378145f8a165.js"></script>
vendor: 1 bytes, line 150
150
151<script src="//cdn-general.cybassets.com/frontend/shop/globalAnalysis-e4c650eb0b.js"></script>
151 152
152<script> 153 window.c12t = {"customer_id":null}; 154 </script>
154 155 156 <meta name="request-id" content="E41C7E5AAA452FBFBD95796DB370B1DB"/> 157 158<link rel="canonical" href="https://www.femobook.com.tw/">
159<script src="//cdn-general.cybassets.com/frontend/shop/carousel-3a2e378145f8a165.js"></script>
159 160
160<script> 161 window.parent.postMessage({ type: 'previewShopInit', currentUrl: window.location.href }, '*'); 162 </script>
162 163
164<script src="//cdn-general.cybassets.com/frontend/appStoreSDK/main.2798231628aa7fab87a9.js"></script>
vendor: 1 bytes, line 164
164
165<script>window.CYBERBIZ_AppScriptSettings = {"shop_add_ons":"W3sidmVuZG9yX3R5cGUiOiJDWUJFUkJJWiBHb29nbGUgQW5hbHl0aWNzIDQi\nLCJhcHBfaWQiOiJRVWo1WnFvZUlPUjlaM2JaS2trMG44N3l5a0FpOWU0NURE\naDJ0YlFnaUJBIiwic2V0dGluZ3MiOnsiZ3RhZ19pZCI6IkctRjM3SjBNWTI4\nTiwgRy00QjdSSzdGSFdIIn19LHsidmVuZG9yX3R5cGUiOiJHb29nbGUgQW5h\nbHl0aWNzIDQiLCJhcHBfaWQiOiJSYkpWMTVFcVZWOHJ1Umo3NVlmV3Z1RUlD\nRm90Q0FPZm0xSDZtZ3hyNkZBIiwic2V0dGluZ3MiOnsiZ3RhZ19pZCI6Ikct\nMEJaS0c1OFBGOCJ9fSx7InZlbmRvcl90eXBlIjoiQ2hhdCBCb3giLCJhcHBf\naWQiOiJjOWQ4M2YwOTk2MTc0ZmJiYTg2ZWJhMDQxYWU4OThhMiIsInNldHRp\nbmdzIjp7IndpZGdldF9rZXkiOiJDUlhaWEcyaHg1enhhTzBaIn19XQ==\n"} 166</script>
vendor: 1 bytes, line 166
166
167<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/9d6f4550aad572e9f70abb70ae5a6552482cf617ea5e4d5a32ed4ebbb5d60d54.js"></script>
vendor: 1 bytes, line 167
167
168<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/a810ec58aab67d16f8de1c4adf06fc7cc9f4477ec503b9cb1a998741bc692652.js"></script>
vendor: 1 bytes, line 168
168
169<script src="https://cdn.cybassets.com/appmarket/api/common/attachments/entrypoint/8766542902afa60f4adda3c555c06025d2c27771ea85a6fc657a91cddbe5c59f.js"></script>
vendor: 1 bytes, line 169
169
170<script>window.CYBERBIZ.initializeSDK.initialize();</script>
vendor: 1 bytes, line 170
170
171<script src="//cdn-general.cybassets.com/frontend/shop/setAffliateCookie-3a2e378145f8a165.js"></script>
171 172 173 174 175 176 177 178 179 180 181 <style id="color_settings"> 182 :root { 183 184 --button: #3493FF; 185 186 187 188 --button_text: #FFFFFF; 189 190 191 192 --accent: #1963b8; 193 194 195 196 --heading: #ffffff; 197 198 199 200 --text: #B4B4B4; 201 202 203 204 --price: #C39D6F; 205 206 207 208 --discount_price: #C39D6F; 209 210 211 212 --theme_bg: #252525; 213 214 215 216 --nav_logo_bg: #252525; 217 218 219 220 --nav_menu_bg: #252525; 221 222 223 224 --nav_menu_text: #ffffff; 225 226 227 228 --nav_menu_icon: #ffffff; 229 230 231 232 --footer_bg: #000000; 233 234 235 236 --footer_text: #FFFFFF; 237 238 239 240 --checkout_button: #3493FF; 241 242 243 244 --checkout_accent: #0A2B6C; 245 246 247 248 --product_border: #E2E2E2; 249 250 251 252 --tips_text: #0C5460; 253 254 255 256 257 258 } 259</style> 260 261 262 263 264 <!--get btn--> 265
265<script defer src="https://static.getbutton.io/widget/bundle.js?id=GALZO"></script>
265 266 <!-----------> 267 <meta name="google-site-verification" content="tx1F9ymOrflZJTyB0Ree0SSxEL2J5mQfZUBlxMcEBWE" /> 268 <meta name="ahrefs-site-verification" content="6329c1ed88dc25501a8180df6bb23342a41c2d9da8b5ce180877c42219b82712"> 269
269<script src="https://analytics.ahrefs.com/analytics.js" data-key="xeXqy8Dm89kkppIQy5/xGA" async></script>
269 270 271 <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 74 bytes, lines 271-272
271 272 <script async src="https://www.googletagmanager.com/gtag/js?id=
272G-F37J0MY28N
vendor: 22 bytes, lines 272-273
272"></script> 273
273<script> 274 window.dataLayer = window.dataLayer || []; 275 function gtag(){dataLayer.push(arguments);} 276 gtag('js', new Date()); 277 gtag('config', 'G-F37J0MY28N', {"groups":"cyberbiz","custom_map":{"dimension1":"shop_id","dimension2":"customer_id","dimension3":"infinite_scroll","dimension4":"dim_affiliate"},"shop_id":28976,"dim_affiliate":null}); 278 gtag('config', 'UA-64017614-1', {"groups":"cyberbiz","custom_map":{"dimension1":"shop_id","dimension2":"customer_id","dimension3":"infinite_scroll","dimension4":"dim_affiliate"},"shop_id":28976,"dim_affiliate":null}); 279 gtag('config', 'AW-18440271667', {"groups":"dynamic_remarketing"});</script>
279 280
280<script> 281 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 282 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 283 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 284 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 285 286 ga('create', '', 'auto', {'name': 'cyberbiz'}); 287 ga('cyberbiz.require', 'displayfeatures'); 288 ga('cyberbiz.set', 'dimension1', '28976'); 289 ga('cyberbiz.require', 'ec'); 290 ga('cyberbiz.send', 'pageview'); 291 </script>
291 292 293
293<script>
vendor: 426 bytes, lines 293-300
293 294 !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod? 295 n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n; 296 n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; 297 t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, 298 document,'script','//connect.facebook.net/en_US/fbevents.js'); 299 300 fbq('init', '
300825138022886326
vendor: 38 bytes, lines 300-301
300', {}, {'agent':'plcyberbiz'}); 301
301fbq('track', "PageView", '', { eventID: "PageView_E41C7E5AAA452FBFBD95796DB370B1DB" }); 302 var facebook_pixel_id = '825138022886326'</script>
302 303 304 </head> 305 306 <body style="display: flex; flex-direction: column;"><!-- Google Tag Manager (noscript) -->
vendor: 74 bytes, lines 306-307
306 307 <noscript><iframe src="//www.googletagmanager.com/ns.html?id=
307GTM-P9KBTW4J
vendor: 105 bytes, lines 307-309
307" 308 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 309
309<!-- End Google Tag Manager (noscript) -->
vendor: 74 bytes, lines 309-311
309 310 <noscript><iframe 311 src="//www.googletagmanager.com/ns.html?id=
311GTM-TXD9LVJ
vendor: 117 bytes, lines 311-317
311" 312 height="0" 313 width="0" 314 style="display:none;visibility:hidden"> 315 </iframe></noscript> 316 317
317<!-- Navigation --> 318 <!-- cyb_snippet liquid_helper start -->
319<script> 320 function getDiscountPriceName() { 321 return "true" === "true" ? "" : ""; 322 } 323 324 function getDiscountPriceSuggestionName() { 325 return "false" === "true" ? "" : ""; 326 } 327 328 document.addEventListener('DOMContentLoaded', function() { 329 const languageHandle = Cookies.get("language"); 330 const defaultLanguage = {"currency_code":"TWD","handle":"zh-TW","title":"ç¹é«ä¸æ"}; 331 const languages = []; 332 const currency = window.shopScriptHelper.defaultCurrency; 333 const currencies = window.shopScriptHelper.currenciesInfo; 334 window.liquidHelper = { 335 shopInternational: false, 336 defaultLanguage: defaultLanguage, 337 language: languages.find(function(l) { 338 return l.handle === languageHandle; 339 }) || defaultLanguage, 340 shopMultipleCurrenciesCheckout: false, 341 shopMultipleCurrencies: false, 342 defaultCurrencyFormat: "NT${{amount_no_decimals}}", 343 defaultCurrency: currency, 344 getCurrency: function() { 345 const currencyValue = Cookies.get("currencyValue") || currency; 346 return currencies.find(function(c) { return c.code === currencyValue; } 347 )}, 348 getDefaultCurrency: function() { return currencies.find(function(c) { 349 return c.code === currency; 350 })}, 351 getAvailableCurrencies: function() { return currencies.map(c => c.code) },
352 getCurrencyFormatInfo: function(currency) { 353 const currencyInfo = currencies.find(c => c.code === currency) 354 return _.pick(currencyInfo, [ 355 'decimal_precision', 356 'symbol', 357 'money_format', 358 'unit', 359 'trailing_zeros', 360 'html_unit', 361 'code', 362 ]); 363 }, 364 cartQuantityLimit: (function() { 365 const limit = Number("0" || undefined); 366 return limit <= 0 || isNaN(limit) ? Number.POSITIVE_INFINITY : limit; 367 })(), 368 isFirstVariantSelected: false , 369 isImageColorsUsed: false , 370 isEmptyClickable: false , 371 hasAddBuyProduct: '' !== "" ? true : false, 372 hasPriceWithDiscountPlugin: 'true' ? true : false, 373 conversionBonus: 1, 374 hasLocalizedShopPriceFormat: true, 375 hasCustomerCartPlugin: true, 376 isCartEnabled: true, 377 cdnHost: '//cdn-general.cybassets.com', 378 hasShopCustomPasswordRulePlugin: false, 379 hasDisableProductQuantityValidation: false, 380 hasBreadcrumbReferrerEnabled: false, 381 }; 382 }); 383</script>
383 384 385<!-- cyb_snippet liquid_helper end --> 386
387<script src='//cdn-general.cybassets.com/frontend/shop/navbarSection-3a2e378145f8a165.js' type='text/javascript'></script>
387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404<style> 405 406 #navbar { 407 --navbar-pc-title-scale: 1.0; 408 --navbar-pc-body-scale: 1.0; 409 --navbar-mobile-title-scale: 1.0; 410 --navbar-mobile-body-scale: 1.0; 411 } 412 413 414 415 416 417</style> 418 419 420 <span id="navbar" class="drawer drawer--left font-size-setting-enabled"> 421 <header id="header" class="qk-w--100vw qk-pos--fixed qk-t--0 qk-l--0"> 422 423 424 425 <div id="announcement-bar"></div> 426 427 428 429 430 431 432 <div class="computer_nav row_nav qk-hidden--mobile display_transparent"> 433 <div class="header_logo qk-bg--nav_logo_bg"> 434 <div class="qk-pos--rel"> 435 <div class="qk-text--center qk-display--flex"> 436 <!-- logo start --> 437 438 439 <nav class="logo qk-display--il_bk"> 440 <a href="/" class="qk-w--100"> 441 <img 442 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc2NzY2X0xvZ28t77y3MjIweEgyNi5wbmcucG5nIl1d.png?sha=2f37ee574ddbc515" 443 class="qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--pc_logo qk-hidden--mobile" 444 style="width: auto; height: 52px;" 445 alt="" 446 height="52" 447 width="auto" 448 > 449 </a> 450 </nav> 451 452 <!-- logo end --> 453 454 <div class="header_nav qk-flex--1"> 455 <div class="qk-pos--relative center qk-pd_r--1 qk-w--100"> 456 <!-- main-nav start --> 457 <nav class="main_nav qk-display--init"></nav> 458 <!-- main-nav end --> 459 </div> 460 </div> 461 462 <!-- tool-nav start --> 463 464 <div style="display: flex; align-items: center; position: relative; top: -12px;"> 465 <!-- cyb_snippet tool_nav start --> 466 467 468 469 470 471 472<nav class="tool-nav qk-pos--rel qk-float--r qk-display--flex"> 473 <ul class="link_shelf_top qk-display--flex qk-flex--row qk-justify--end qk-align--center qk-pos--abs qk-r--0"> 474 475 476 <!-- member --> 477 478 <li class="customer_account qk-pos--rel qk-pd--05"> 479 <div class="dropdown qk-pos--static"> 480 <div class="qk-cursor--pointer" data-toggle="dropdown"> 481 <div data-icon-type="custom_icon_type_account"></div> 482 <span class="text"></span> 483 </div> 484 <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"> 485 <ul id="customer-logined-menu" style="display: none"> 486 <li> 487 <div class="qk-fs--body qk-text--heading"> 488 <p class="customer-name qk-whitespace-break-spaces"></p> 489 <p>æ¨å¥½ï¼</p> 490 </div> 491 </li> 492 </ul> 493 <ul id="customer-not-login-menu"> 494 <li class="button qk-text--center"> 495 <a href="/account/login" class="btn-login qk-btn qk-btn--lg qk-btn--primary qk-w--100">æå¡ç»å ¥</a> 496 </li> 497 <li class="button qk-text--center"> 498 <a href="/account/signup" class="btn-orders qk-btn qk-btn--lg qk-btn--secondary qk-w--100 qk-bg--transparent">è¨»åæ°æå¡</a> 499 </li> 500 </ul> 501 <span class="menu-bd qk-bd_t--default qk-bd--product_border"></span> 502 <ul class="member-menu qk-bd_t--default qk-bd--product_border"> 503 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 504 <a href="/account/index" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">æç帳æ¶</a> 505 </li> 506 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 507 <a href="/account/orders" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">
507è¨å®æ¥è©¢</a> 508 </li> 509 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 510 <a href="/account/coupons" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">å°å±¬åªæ å¸</a> 511 </li> 512 <li class="qk-bg--mask_hover qk-tst qk-tst_dur--15 qk-tst_timing--ease_io qk-tst_prop--bg"> 513 <a href="/account/tracking_items" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">æ¶èæ¸ å®</a> 514 </li> 515 <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"> 516 <a href="/account/logout" class="qk-fs--body qk-text--heading qk-w--100 qk-display--il_bk">æå¡ç»åº</a> 517 </li> 518 </ul> 519 </div> 520 </div> 521 </li> 522 523 <!-- for money symbol --> 524 <div id="money-symbol" data-money-symbol="NT${{amount_no_decimals}}" hidden></div> 525 <!-- cart --> 526 527 <li class="cart qk-pos--rel qk-pd--05"> 528 <!--é»è ¦ççè³¼ç©è»é¸å®--> 529 <div class="dropdown qk-pos--static"> 530 <div data-toggle="dropdown" class="shopcart qk-cursor--pointer" > 531 <div data-icon-type="custom_icon_type_cart"></div> 532 <span class="global-cart-count qk-circle qk-circle--sm qk-bg--accent qk-text--white qk-vert--mid qk-pos--abs qk-bd qk-bd--none" style="display: none;">0</span> 533 <span class="global-cart-loading"></span> 534 </div> 535 <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"> 536 <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> 537 <p class="cart_empty qk-fs--body qk-text--heading qk-text--center">ç®åçè³¼ç©è»æ¯ç©ºçï¼</p> 538 <ul> 539 <li class="button qk-text--center"> 540 <a class="btn-checkout qk-btn qk-btn--lg qk-btn--primary qk-w--100" href="/cart" style="display: none">ç«å³è³¼è²·</a> 541 <a class="btn-tracking qk-btn qk-btn--lg qk-btn--secondary qk-w--100 qk-bg--transparent" href="/account/tracking_items">å徿¶èæ¸ å®</a> 542 </li> 543 </ul> 544 </div> 545 </div> 546 </li> 547 548 <!-- search --> 549 550 <li class="search qk-pos--rel qk-pd--05" id="search-icon"> 551 <div class="dropdown qk-pos--static"> 552 <div class="qk-cursor--pointer" data-toggle="dropdown"> 553 <div data-icon-type="custom_icon_type_search"></div> 554 </div> 555 <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"> 556 <div class="search-area qk-display--flex qk-flex--row qk-justify--start qk-align--center qk-vert--mid"> 557 <form action="/search" class="form-inline qk-search_form qk-display--flex qk-justfify--between qk-align--center qk-flex--1"> 558 <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="" /> 559 <button class="search-btn qk-btn qk-btn--lg qk-btn--primary qk-pd--0" type="submit">æå°</button> 560 </form> 561 </div> 562 </div> 563 </div> 564 </li> 565 566 <!-- express delivery --> 567 568 </ul> 569</nav> 570 571<!-- cyb_snippet tool_nav end --> 572 </div> 573 574 575 <!-- tool-nav end --> 576 </div> 577 </div> 578 </div> 579 </div> 580 581 <div class="qk-hidden--pc "> 582 <!-- mobile-nav start --> 583 <nav class="mobile-nav qk-bg--nav_logo_bg"> 584 <ul class="qk-display--flex qk-flex--row qk-justify--between qk-align--center qk-pd_x--05 qk-pd_y--0"> 585 <!-- menu --> 586 587 <li class="sidebar-menu-icon drawer-toggle qk-text--center qk-pd_x--05 qk-pd_y--0 qk-display--flex qk-align--center"> 588 <div data-icon-type="custom_icon_type_menu"></div> 589 </li> 590 591 <!-- logo --> 592 593 <li class="logo qk-mg_r--auto qk-pd_x--05 qk-pd_y--0"> 594 595 <a href="/" class="qk-display--il_flex qk-align--center qk-h--100 qk-hidden--phone"> 596 <img 597 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc2NzY2X0xvZ28t77y3MjIweEgyNi5wbmcucG5nIl1d.png?sha=2f37ee574ddbc515" 598 height="25" 599 width="auto" 600 alt="" 601 > 602 </a> 603 604 605 <a href="/" class="qk-display--il_flex qk-align--center qk-h--100 qk-hidden--tablet"> 606 <img 607 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc3MjU5X00tTG9nby3vvLc4MzV4SDEwMC5wbmcucG5nIl1d.png?sha=db63d05446c4665e" 608 height="25" 609 width="auto" 610 alt="" 611 > 612 </a> 613 614 </li> 615 616 617 <!-- search --> 618 619 <li class="search qk-text--center qk-pd_x--05 qk-pd_y--0 qk-display--flex qk-align--center "> 620 <div class="dropdown qk-pos--static qk-text--center"> 621 <div class="qk-cursor--pointer" data-toggle="dropdown"> 622 <div data-icon-type="custom_icon_type_search"></div> 623 </div> 624 <div 625 class="qk-dropdown_menu dropdown-menu qk-w--100vw qk-bg--theme_bg qk-bd--default qk-bd--product_border qk-mg--0" 626 role="menu" 627 > 628 <div class="search-area qk-display--flex qk-flex--row qk-justify--start qk-align--center qk-sp_bt--5 qk-w--100"> 629 <form action="/search" class="form-inline qk-display--flex qk-justfify--center qk-flex--1"> 630 <div class="form-inline qk-search_form qk-display--flex qk-justfify--center qk-align--center qk-flex--1"> 631 <input 632 class="form-control qk-flex--1 qk-inputbox qk-inputbox--lg qk-bg--trans
632parent qk-text--heading" 633 type="search" 634 placeholder="æå°" 635 aria-label="Search" 636 name="q" 637 value="" 638 > 639 <button class="search-btn qk-btn qk-btn--lg qk-btn--primary qk-pd--0" type="submit"> 640 æå° 641 </button> 642 </div> 643 </form> 644 </div> 645 </div> 646 </div> 647 </li> 648 649 <!-- express delivery --> 650 651 652 </ul> 653 </nav> 654 <!-- mobile-nav end --> 655 </div> 656 657 </header> 658 659 <!-- Sidebar --> 660 <nav class="drawer-nav drawer-nav_width qk-bg--nav_menu_bg " role="navigation"> 661 <div class="drawer-menu"> 662 <!-- cyb_snippet side_menu start --> 663 664 665<ul id="index_sidebar_shelf_top" class="sidebar qk-pd_b--1"> 666 667 <li class="logo qk-pos--rel qk-bg--nav_logo_bg qk-pd_x--1 qk-pd_y--05"> 668 <a href="/" class="qk-pd--0"> 669 <img src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc2NzY2X0xvZ28t77y3MjIweEgyNi5wbmcucG5nIl1d.png?sha=2f37ee574ddbc515" height="32" width="auto" alt="logo"> 670 </a> 671 <button class="drawer-toggle qk-pos--abs qk-bg--transparent qk-pd--0"></button> 672 </li> 673 674 675 676 677 678 <!-- cyb_snippet components/side_menu/menu start --> 679 680 <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> 681 682 683 684 685 686 <li class="qk-pos--rel qk-pd--0"> 687 688 <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/grinderselection"> ç£¨è±æ©å¦ä½æé¸</a> 689 690 </li> 691 692 693 694 695 696 <li class="qk-pos--rel qk-pd--0"> 697 <button class="linklist bt-toggle qk-fw--bold collapsed qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-text--nav_menu_text qk-bg--nav_menu_bg qk-pos--rel" data-toggle="collapse" data-target=".collapse_index_sidebar_2" aria-expanded=" false "> 698 699 <span class="qk-cursor--pointer qk-text--nav_menu_text"> é»åç£¨è±æ©æ¬¾å¼ </span> 700 701 </button> 702 <ul id="index_sidebar_shelf_second_2" class="collapse_index_sidebar_2 collapse shelf_second qk-pd--0"> 703 704 705 706 707 <li class="qk-pos--rel qk-pd--0"> 708 709 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/collections/pourover"> 710 ææ²å°ç¨ç£¨è±æ© 711 </a> 712 713 </li> 714 715 716 717 718 719 <li class="qk-pos--rel qk-pd--0"> 720 721 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/collections/espresso"> 722 ç¾©å¼æ¨è¦ç£¨è±æ© 723 </a> 724 725 </li> 726 727 728 729 730 731 <li class="qk-pos--rel qk-pd--0"> 732 733 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/collections/both"> 734 ææ²å義å¼å ©ç¨ç£¨è±æ© 735 </a> 736 737 </li> 738 739 740 741 742 743 <li class="qk-pos--rel qk-pd--0"> 744 745 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/collections/rechargeable"> 746 å é»åç£¨è±æ© 747 </a> 748 749 </li> 750 751 752 753 754 755 <li class="qk-pos--rel qk-pd--0"> 756 757 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/collections/plugin"> 758 æé»åç£¨è±æ© 759 </a> 760 761 </li> 762 763 764 </ul> 765 </li> 766 767 768 769 770 771 <li class="qk-pos--rel qk-pd--0"> 772 <button class="linklist bt-toggle qk-fw--bold collapsed qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-text--nav_menu_text qk-bg--nav_menu_bg qk-pos--rel" data-toggle="collapse" data-target=".collapse_index_sidebar_3" aria-expanded=" false "> 773 774 <a class="qk-text--nav_menu_text" href="/collections/allproduct">
774 ææåå </a> 775 776 </button> 777 <ul id="index_sidebar_shelf_second_3" class="collapse_index_sidebar_3 collapse shelf_second qk-pd--0"> 778 779 780 781 782 <li class="qk-pos--rel qk-pd--0"> 783 784 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/products/a68"> 785 A68 é»åç£¨è±æ© 786 </a> 787 788 </li> 789 790 791 792 793 794 <li class="qk-pos--rel qk-pd--0"> 795 796 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/products/a5"> 797 A5 é»åç£¨è±æ©-å é»å¼ 798 </a> 799 800 </li> 801 802 803 804 805 806 <li class="qk-pos--rel qk-pd--0"> 807 808 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/products/a5-plug-in"> 809 A5 é»åç£¨è±æ©-æé»å¼ 810 </a> 811 812 </li> 813 814 815 816 817 818 <li class="qk-pos--rel qk-pd--0"> 819 820 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/products/a4"> 821 A4 便æå¼é»åç£¨è±æ© 822 </a> 823 824 </li> 825 826 827 828 829 830 <li class="qk-pos--rel qk-pd--0"> 831 832 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/products/a4z"> 833 A4Z 便æå¼é»åç£¨è±æ© 834 </a> 835 836 </li> 837 838 839 840 841 842 <li class="qk-pos--rel qk-pd--0"> 843 844 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/products/a3"> 845 A3 é»åç£¨è±æ©-å é»å¼ 846 </a> 847 848 </li> 849 850 851 852 853 854 <li class="qk-pos--rel qk-pd--0"> 855 856 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/products/a3-plug-in"> 857 A3 é»åç£¨è±æ©-æé»å¼ 858 </a> 859 860 </li> 861 862 863 864 865 866 <li class="qk-pos--rel qk-pd--0"> 867 868 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/products/a2"> 869 A2é¨èº«åå é»ç£¨è±æ© 870 </a> 871 872 </li> 873 874 875 876 877 878 <li class="qk-pos--rel qk-pd--0"> 879 880 <a class="qk-fw--500 qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-bg--nav_menu_bg qk-text--nav_menu_text" href="/products/a3a4a5bag"> 881 A3/A4/A5æ¶ç´å 882 </a> 883 884 </li> 885 886 887 </ul> 888 </li> 889 890 891 892 893 894 <li class="qk-pos--rel qk-pd--0"> 895 <button class="linklist bt-toggle qk-fw--bold collapsed qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-text--nav_menu_text qk-bg--nav_menu_bg qk-pos--rel" data-toggle="collapse" data-target=".collapse_index_sidebar_4" aria-expanded=" false "> 896 897 <a class="qk-text--nav_menu_text" href="/pages/reviews"> è·äººæ¨è¦ </a> 898 899 </button> 900 <ul id="index_sidebar_shelf_second_4" class="collapse_index_sidebar_4 collapse shelf_second qk-pd--0"> 901 902 903 904 905 <li class="qk-pos--rel qk-pd--0"> 906 907 <a class="qk-fw--500 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/reviews-a68">
908 A68 é»åç£¨è±æ© 909 </a> 910 911 </li> 912 913 914 915 916 917 <li class="qk-pos--rel qk-pd--0"> 918 919 <a class="qk-fw--500 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/reviews-a5"> 920 A5 é»åç£¨è±æ© 921 </a> 922 923 </li> 924 925 926 927 928 929 <li class="qk-pos--rel qk-pd--0"> 930 931 <a class="qk-fw--500 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/reviews-a4"> 932 A4 便æå¼é»åç£¨è±æ© 933 </a> 934 935 </li> 936 937 938 939 940 941 <li class="qk-pos--rel qk-pd--0"> 942 943 <a class="qk-fw--500 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/reviews-a4z"> 944 A4Z 便æå¼é»åç£¨è±æ© 945 </a> 946 947 </li> 948 949 950 951 952 953 <li class="qk-pos--rel qk-pd--0"> 954 955 <a class="qk-fw--500 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/reviews-a3"> 956 A3 é»åç£¨è±æ© 957 </a> 958 959 </li> 960 961 962 963 964 965 <li class="qk-pos--rel qk-pd--0"> 966 967 <a class="qk-fw--500 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/reviews-a2"> 968 A2 é¨èº«åå é»ç£¨è±æ© 969 </a> 970 971 </li> 972 973 974 </ul> 975 </li> 976 977 978 979 980 981 <li class="qk-pos--rel qk-pd--0"> 982 <button class="linklist bt-toggle qk-fw--bold collapsed qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-text--nav_menu_text qk-bg--nav_menu_bg qk-pos--rel" data-toggle="collapse" data-target=".collapse_index_sidebar_5" aria-expanded=" false "> 983 984 <span class="qk-cursor--pointer qk-text--nav_menu_text"> é«é©é ç´ </span> 985 986 </button> 987 <ul id="index_sidebar_shelf_second_5" class="collapse_index_sidebar_5 collapse shelf_second qk-pd--0"> 988 989 990 991 992 <li class="qk-pos--rel qk-pd--0"> 993 994 <a class="qk-fw--500 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/ourstore"> 995 é ç´è³è¨ 996 </a> 997 998 </li> 999 1000 1001 </ul> 1002 </li> 1003 1004 1005 1006 1007 1008 <li class="qk-pos--rel qk-pd--0"> 1009 <button class="linklist bt-toggle qk-fw--bold collapsed qk-display--il_bk qk-w--100 qk-text--left qk-fs--body qk-text--nav_menu_text qk-bg--nav_menu_bg qk-pos--rel" data-toggle="collapse" data-target=".collapse_index_sidebar_6" aria-expanded=" false "> 1010 1011 <span class="qk-cursor--pointer qk-text--nav_menu_text"> 常è¦åé¡ </span> 1012 1013 </button> 1014 <ul id="index_sidebar_shelf_second_6" class="collapse_index_sidebar_6 collapse shelf_second qk-pd--0"> 1015 1016 1017 1018 1019 <li class="qk-pos--rel qk-pd--0"> 1020 1021 <a class="qk-fw--500 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-purchasepolicy"> 1022 è³¼ç©èªªæ 1023 </a> 1024 1025 </li> 1026 1027 1028 1029 1030 1031 <li class="qk-pos--rel qk-pd--0"> 1032 1033 <a class="qk-fw--500 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-manual"> 1034 ç¢å使ç¨ç¸é 1035 </a> 1036 1037 </li> 1038 1039 1040 1041 1042 1043 <li class="qk-pos--rel qk-pd--0"> 1044 1045 <a class="qk-fw--500 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-warranty"> 1046 ä¿åºç¶ä¿® 1047 </a> 1048 1049 </li> 1050 1051 1052 </ul> 1053 </li> 1054 1055 1056 1057 1058 1059 <li class="qk-pos--rel qk-pd--0"> 1060 1061 <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/coffee-information">é¨è½æ ¼</a> 1062 1063 </li> 1064 1065 1066 1067 1068 1069 <li class="qk-pos--rel qk-pd--0"> 1070 1071 <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://www.femobook.com/">
1071ENGLISH</a> 1072 1073 </li> 1074 1075 1076
1077<script> 1078 $('button a').on('click', function(e) {e.stopPropagation()}); 1079</script>
1079 1080 1081<!-- cyb_snippet components/side_menu/menu end --> 1082 1083 1084 1085 1086 <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> 1087 <li class="qk-pos--rel qk-pd--0"> 1088 <div class="customer-logined-menu qk-display--il_bk qk-w--100 qk-text--left" style="display: none"> 1089 <a href="/account/index" class="qk-text--nav_menu_text qk-fw--bold qk-fs--body">æç帳æ¶</a> 1090 </div> 1091 </li> 1092 <li class="qk-pos--rel qk-pd--0"> 1093 <div class="customer-logined-menu qk-display--il_bk qk-w--100 qk-text--left" style="display: none"> 1094 <a href="/account/orders" class="qk-text--nav_menu_text qk-fw--bold qk-fs--body">è¨å®æ¥è©¢</a> 1095 </div> 1096 </li> 1097 <li class="qk-pos--rel qk-pd--0"> 1098 <div class="customer-logined-menu qk-display--il_bk qk-w--100 qk-text--left" style="display: none"> 1099 <a href="/account/logout" class="qk-text--nav_menu_text qk-fw--bold qk-fs--body">æå¡ç»åº</a> 1100 </div> 1101 </li> 1102 <li class="qk-pos--rel qk-pd--0"> 1103 <a href="/account/login"> 1104 <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 "> 1105 <span class="qk-text--nav_menu_bg qk-fw--500 qk-fs--body"> 1106 æå¡ç»å ¥ 1107 </span> 1108 </div> 1109 </a> 1110 </li> 1111 <li class="qk-pos--rel qk-pd--0"> 1112 <a href="/account/signup"> 1113 <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"> 1114 <span class="qk-text--nav_menu_text qk-fs--body qk-fw--500"> 1115 è¨»åæ°æå¡ 1116 </span> 1117 </div> 1118 </a> 1119 </li> 1120 1121 1122 1123 1124 1125</ul> 1126 1127<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/sidebar-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 1128
1129<script> 1130 $(document).ready(function(){ 1131 // å´éé¸å® 1132 if ($('.drawer').length){ 1133 $('.drawer').drawer(); 1134 $('.bt-toggle').click(function(){ 1135 setTimeout(function(){ 1136 $('.drawer')[0].iScroll.refresh() 1137 },500) 1138 }) 1139 } 1140 }); 1141</script>
1141 1142 1143 1144<!-- cyb_snippet side_menu end --> 1145 1146 </div> 1147 </nav> 1148 <!-- Bottombar --> 1149 1150 <div 1151 id="mobile-bottom-bar" 1152 class="qk-display--flex qk-justify--around qk-bg--nav_logo_bg qk-w--100vw qk-pos--fixed qk-b--0 qk-hidden--pc" 1153 > 1154 <!-- home --> 1155 <div class="qk-display--flex qk-justify--center qk-align--center qk-text--center qk-pd_x--05 qk-pd_y--0 qk-flex--1"> 1156 <a id="home-nav-icon" href="/"> 1157 <div data-icon-type="custom_icon_type_home"></div> 1158 </a> 1159 </div> 1160 <!-- tracking items --> 1161 <div class="qk-display--flex qk-justify--center qk-align--center qk-text--center qk-pd_x--05 qk-pd_y--0 qk-flex--1"> 1162 <a href="/account/tracking_items"> 1163 <div data-icon-type="custom_icon_type_tracking_items" c></div> 1164 </a> 1165 </div> 1166 <!-- cart --> 1167 1168 <div class="qk-display--flex qk-justify--center qk-align--center qk-text--center qk-pd_x--05 qk-pd_y--0 qk-flex--1"> 1169 <a 1170 href="/cart" 1171 class="qk-display--il_flex qk-flex--row qk-justify--center qk-align--center qk-vert--mid qk-pos--rel" 1172 > 1173 <div data-icon-type="custom_icon_type_cart"></div> 1174 <span 1175 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" 1176 style="display: none;" 1177 >0</span 1178 > 1179 </a> 1180 </div> 1181 1182 <!-- member --> 1183 1184 <div class="qk-display--flex qk-justify--center qk-align--center qk-text--center qk-pd_x--05 qk-pd_y--0 qk-flex--1"> 1185 <a id="customer-phone-nav-icon" href="/account/login"> 1186 <div data-icon-type="custom_icon_type_account"></div> 1187 </a> 1188 </div> 1189 1190 </div> 1191 1192 1193 </span> 1194 1195<div id="index-popular-tags"></div> 1196 1197<style id="timer_color"> 1198 :root { 1199 1200 --timer_text: #FFFFFF; 1201 1202 1203 1204 --timer_bg: #3994f7; 1205 1206 } 1207</style> 1208
1209<script> 1210 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":"åé¡å
1210
§å®¹","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天å
è²»éè³
1210æï¼å«ä¾åæ¥ï¼ãéæè²¨æè«ä¿æåå
è£ååç宿´ï¼å
å«è³¼è²·ååï¼éä»¶ï¼è´åçï¼ã\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":"è¬è¬æ¨çå¯
1210¶è²´æè¦","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":"éµéåè","suggested_range":"建è°åé:","periodic_order_label":"宿å®é¡","check_account_length":"è«æª¢æ¥éè¡å¸³èé·åº¦"} 1211 $(document).ready(function(){ 1212 if(window.location.pathname != '' && window.location.pathname != '/' ){ 1213 document.getElementById('index-popular-tags').style.display = 'none' 1214 } 1215 // åæ¸è¨æ 1216 1217 var leftDay = $('.left_day'); 1218 var leftHour = $('.left_hour'); 1219 var leftMin = $('.left_min'); 1220 var leftSec = $('.left_sec'); 1221 var nowTime = '' * 1; 1222 var startTime = '' ? '' * 1 : nowTime; 1223 var endTime = '' * 1; 1224 1225 function paddedFormat(num) { 1226 return num < 10 ? "0" + num : num; 1227 }; 1228 1229 function startCountDown(duration) { 1230 var left_day, left_hour, left_min, left_sec = 0; 1231 var countInterval = setInterval(function () { 1232 leftDay.html(paddedFormat(parseInt(duration / 3600 / 24))); 1233 leftHour.html(paddedFormat(parseInt(duration / 3600) % 24)); 1234 leftMin.html(paddedFormat(parseInt(duration / 60) % 60)); 1235 leftSec.html(paddedFormat(parseInt(duration) % 60)); 1236 duration = duration - 1; 1237 if (duration < 0) { 1238 clearInterval(countInterval); 1239 }; 1240 }, 1000); 1241 }; 1242 1243 if (startTime <= nowTime && endTime > nowTime) { 1244 startTime = nowTime; 1245 startCountDown(endTime - startTime); 1246 } 1247 1248 1249 function adjustContentTop() { 1250 1251 const isNavbarTransparent = true; 1252 let headerHeight = $("#header").outerHeight(); 1253 if (isNavbarTransparent && $('#template').width() >= 992) { 1254 headerHeight -= $('.computer_nav').height(); 1255 } 1256 const floatFilterHeight = $('#float-filter').innerHeight() || 0; 1257 $("body").css({ 1258 "padding-top": (headerHeight - floatFilterHeight) + "px", 1259 }); 1260 } 1261 1262 window.adjustContentTop = adjustContentTop; 1263 1264 // navbarè¨å®éæ 1265 1266 var prevScrollpos = window.pageYOffset; 1267 1268 $(window).on('scroll load resize', function () { 1269 if ($('#template').width() <= 992 ) { 1270 return; 1271 } 1272 var headerHeight = $('#header').height(); 1273 var headerBannerHeight = headerHeight - $('.computer_nav').height(); 1274 var currentScrollPos = window.pageYOffset; 1275 // ç§»é¤navbar忬çç½ç空é 1276 $("body").css({ 1277 "padding-top": headerBannerHeight + "px", 1278 }); 1279 if (currentScrollPos === 0) { 1280 $('.computer_nav').addClass('display_transparent'); 1281 } else if (currentScrollPos > prevScrollpos && currentScrollPos >= headerBannerHeight) { 1282 $('#header').css({ transform: "translate(0, -100%)", transition: 'all .3s' }); 1283 $('.computer_nav').removeClass('display_transparent'); 1284 } else { 1285 $('#header').css({ transform: "none", transition: 'all .3s' }); 1286 $('.computer_nav').removeClass('display_transparent'); 1287 } 1288 prevScrollpos = currentScrollPos; 1289 }); 1290 $('.computer_nav').on('mouseover', function () { 1291 $(this).removeClass('display_transparent'); 1292 }); 1293 $('.computer_nav').on('mouseout', function () { 1294 if ($('.dropdown_menu').hasClass('show')) { 1295 return; 1296 } else if (window.pageYOffset === 0) { 1297 $(this).addClass('display_transparent'); 1298 } 1299 }); 1300 1301 1302 // Call it first once DOM is ready to prevent CLS 1303 adjustContentTop(); 1304 1305 // å»¶é²åå§åï¼çå¾ app banner åå§å宿 1306 $(window).on("resize", adjustContentTop); 1307 1308 // ä½¿ç¨ setTimeout ç¢ºä¿ banner çæ å·²ç¶ç¢ºå® 1309 $(window).on("load", function() { 1310 setTimeout(function() { 1311 adjustContentTop(); 1312 }, 200); // 給 banner è¶³å¤ æéåå§å 1313 }); 1314 1315 $('img.header_banner').on('load', adjustContentTop); 1316 1317 window.renderNavbarSection('.main_nav', {
1318 navbarCollections: null, 1319 navbarItems: [{"id":1391253,"title":" ç£¨è±æ©å¦ä½æé¸","url":"/pages/grinderselection","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1407277,"title":"é»åç£¨è±æ©æ¬¾å¼","url":"","item_type":"linklist","subtitle":null,"icon_image_url":null,"menuItems":[{"id":1408392,"title":"ææ²å°ç¨ç£¨è±æ©","url":"/collections/pourover","item_type":"custom_collection","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1408393,"title":"ç¾©å¼æ¨è¦ç£¨è±æ©","url":"/collections/espresso","item_type":"custom_collection","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1408394,"title":"ææ²å義å¼å ©ç¨ç£¨è±æ©","url":"/collections/both","item_type":"custom_collection","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1407286,"title":"å é»åç£¨è±æ©","url":"/collections/rechargeable","item_type":"custom_collection","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1407287,"title":"æé»åç£¨è±æ©","url":"/collections/plugin","item_type":"custom_collection","subtitle":null,"icon_image_url":null,"menuItems":null}]},{"id":1446852,"title":"ææåå","url":"/collections/allproduct","item_type":"custom_collection","subtitle":null,"icon_image_url":null,"menuItems":[{"id":1446854,"title":"A68 é»åç£¨è±æ©","url":"/products/a68","item_type":"product","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1446855,"title":"A5 é»åç£¨è±æ©-å é»å¼","url":"/products/a5","item_type":"product","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1505532,"title":"A5 é»åç£¨è±æ©-æé»å¼","url":"/products/a5-plug-in","item_type":"product","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1446856,"title":"A4 便æå¼é»åç£¨è±æ©","url":"/products/a4","item_type":"product","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1446857,"title":"A4Z 便æå¼é»åç£¨è±æ©","url":"/products/a4z","item_type":"product","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1446858,"title":"A3 é»åç£¨è±æ©-å é»å¼","url":"/products/a3","item_type":"product","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1557664,"title":"A3 é»åç£¨è±æ©-æé»å¼","url":"/products/a3-plug-in","item_type":"product","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1516675,"title":"A2é¨èº«åå é»ç£¨è±æ©","url":"/products/a2","item_type":"product","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1557548,"title":"A3/A4/A5æ¶ç´å ","url":"/products/a3a4a5bag","item_type":"product","subtitle":null,"icon_image_url":null,"menuItems":null}]},{"id":1391254,"title":"è·äººæ¨è¦","url":"/pages/reviews","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":[{"id":1727953,"title":"A68 é»åç£¨è±æ©","url":"/pages/reviews-a68","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1727998,"title":"A5 é»åç£¨è±æ©","url":"/pages/reviews-a5","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1764010,"title":"A4 便æå¼é»åç£¨è±æ©","url":"/pages/reviews-a4","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1764006,"title":"A4Z 便æå¼é»åç£¨è±æ©","url":"/pages/reviews-a4z","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1742065,"title":"A3 é»åç£¨è±æ©","url":"/pages/reviews-a3","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1728070,"title":"A2 é¨èº«åå é»ç£¨è±æ©","url":"/pages/reviews-a2","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null}]},{"id":1297850,"title":"é«é©é ç´","url":"","item_type":"linklist","subtitle":null,"icon_image_url":null,"menuItems":[{"id":1391345,"title":"é ç´è³è¨","url":"/pages/ourstore","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null}]},{"id":1297852,"title":"常è¦åé¡","url":"","item_type":"linklist","subtitle":null,"icon_image_url":null,"menuItems":[{"id":1391347,"title":"è³¼ç©èªªæ","url":"/pages/faq-purchasepolicy","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1391348,"title":"ç¢å使ç¨ç¸é","url":"/pages/faq-manual","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1391349,"title":"ä¿åºç¶ä¿®","url":"/pages/faq-warranty","item_type":"page","subtitle":null,"icon_image_url":null,"menuItems":null}]},{"id":1391355,"title":"é¨è½æ ¼","url":"/blogs/coffee-information","item_type":"blog","subtitle":null,"icon_image_url":null,"menuItems":null},{"id":1391362,"title":"ENGLISH","url":" https://www.femobook.com/","item_type":"http","subtitle":null,"icon_image_url":null,"menuItems":null}], 1320 settings: { 1321 menuDisplayStyle: "three_dimension_menu", 1322 pcLogoImgUrl: "//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc2NzY2X0xvZ28t77y3MjIweEgyNi5wbmcucG5nIl1d.png?sha=2f37ee574ddbc515", 1323 mobileLogoImgUrl: "//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc3MjU5X00tTG9nby3vvLc4MzV4SDEwMC5wbmcucG5nIl1d.png?sha=db63d05446c4665e", 1324 navbarDisplayStyle: "rowNav", 1325 } 1326 } 1327 ); 1328 1329 1330 // for link menu 1331 const linkMenuElement = document.querySelector('.link-nav'); 1332 const data = [] 1333 data.forEach((item) => { 1334 const wrapper = document.createElement('a'); 1335 const link = document.createElement('ul'); 1336 1337 wrapper.href = item.url; 1338 link.textContent = item.title; 1339 link.classList.add('link-item'); 1340 1341 wrapper.appendChild(link); 1342 linkMenuElement.appendChild(wrapper); 1343 }); 1344 1345 // for safe-area space on iOS devices 1346 const userAgent = navigator.userAgent; 1347 const isIOS = /iPad|iPhone|iPod/.test(userAgent) && !window.MSStream; 1348 const isLiff = /Line\/[\d.]+/i.test(userAgent); 1349 const $mobileBottomBar = $('#mobile-bottom-bar'); 1350 1351 if ($mobileBottomBar.length && isIOS && isLiff) { 1352 $mobileBottomBar.addClass('is-ios-liff'); 1353 } 1354 }); 1355 document.addEventListener('DOMContentLoaded', function() { 1356 window.getCartAmount = function() { 1357 return parseInt($('.global-cart-count').html()); 1358 }; 1359 }); 1360</script>
1360 1361
1362<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/navbar-3a2e378145f8a165.js' type='text/javascript'></script>
vendor: 1 bytes, line 1362
1362
1363<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/currencies-3a2e378145f8a165.js' type='text/javascript'></script>
1363 1364<!-- cyb_snippet i18n_modal start --> 1365 1366 1367<!-- cyb_snippet i18n_modal end --> 1368<!-- cyb_snippet _load_fonts start -->
1369<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/load_fonts-3a2e378145f8a165.js' type='text/javascript'></script>
vendor: 1 bytes, line 1369
1369
1370<script> 1371 document.addEventListener('DOMContentLoaded', function() { 1372 window.loadFontSetting("{'ja':{'value':'Noto Sans JP'},'zh-TW':{'value':'Noto Sans TC'},'en':{'value':'Noto Sans TC'},'zh-CN':{'value':'Noto Sans TC'}}") 1373 }) 1374</script>
1374 1375 1376<!-- cyb_snippet _load_fonts end --> 1377<!-- cyb_snippet _custom_icon start -->
1378<script src='//cdn-general.cybassets.com/frontend/shop/navIcon-3a2e378145f8a165.js' type='text/javascript'></script>
1378 1379
1380<script> 1381 (function() { 1382 const iconUrlMap = new Map([ 1383 ['custom_icon_type_home', null], 1384 ['custom_icon_type_tracking_items', null], 1385 ['custom_icon_type_account', null], 1386 ['custom_icon_type_cart', null], 1387 ['custom_icon_type_search', null], 1388 ['custom_icon_type_menu', null] 1389 ]); 1390 const elements = document.querySelectorAll('[data-icon-type]'); 1391 elements.forEach((element, index) => { 1392 const iconAttributes = element.getAttribute('data-icon-type'); 1393 1394 const uniqueId = `icon_${iconAttributes}_${index}_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`; 1395 element.id = uniqueId; 1396 window.renderNavCustomIcon(`#${uniqueId}`, { 1397 navIconStyle: "icon_type_default", 1398 customIconUrl: iconUrlMap.get(iconAttributes) || '', 1399 iconAttributes: iconAttributes, 1400 currentTemplate: "index", 1401 }); 1402 }); 1403 })(); 1404</script>
1404 1405 1406<!-- cyb_snippet _custom_icon end --> 1407 1408 1409 1410 1411 1412
1412<script src='//cdn-general.cybassets.com/frontend/shop/announcementBar-3a2e378145f8a165.js' type='text/javascript'></script>
1412 1413 1414 1415 1416 1417 1418
1418<script> 1419 $(document).ready(function() { 1420 window.renderAnnouncementBar('#announcement-bar', { 1421 sectionId: "announcement_bar", 1422 isIndex: true, 1423 }); 1424 }); 1425 </script>
1425 1426 1427 1428 1429 1430 1431 1432 <!-- template --> 1433 <div id="template" style="flex:1 0 auto; background-color: var(--theme_bg);"> 1434 <div class="index"> 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_main_slider_custom-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 1446 1447<style> 1448 [id="1715063788940_0"] { 1449 margin: 0 0px 50px !important; 1450 } 1451 @media (max-width: 576px) { 1452 .main-slider-placeholder { 1453 display: none !important; 1454 } 1455 .swiper-container { 1456 visibility: visible !important; 1457 } 1458 } 1459 @media (max-width: 991px) { 1460 [id="1715063788940_0"] { 1461 margin: 0 0px 50px !important; 1462 } 1463 } 1464</style> 1465 1466<section id="1715063788940_0" class="main-slider qk-pos--rel"> 1467 1468 1469 1470 <div 1471 class="swiper swiper-container" 1472 1473 > 1474 <div class="swiper-wrapper qk-align--center"> 1475 1476 1477 1478 <div class="swiper-slide"> 1479 1480 1481 <a 1482 href="/products/a68" 1483 class="img-flex qk-align--stretch qk-display--contents" 1484 target="_blank" 1485 rel="noopener noreferrer" 1486 > 1487 1488 1489 1490 1491 1492 1493 <picture> 1494 1495 <source 1496 media="(max-width: 576px)" 1497 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NTc2XzIwMjYwNjI2X-WumOe2skJOKEE2OClCXzQ4MC5qcGcuanBlZyJdXQ.jpeg?sha=7862b123c70181cf" 1498 alt="" 1499 > 1500 1501 1502 <source 1503 media="(max-width: 992px)" 1504 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NTY3XzIwMjYwNjI2X-WumOe2skJOKEE2OClCXzk2MC5qcGcuanBlZyJdXQ.jpeg?sha=47d4196d613d2e80" 1505 alt="" 1506 > 1507 1508 <img 1509 id="slider-image" 1510 data-src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NTU3XzIwMjYwNjI2X-WumOe2skJOKEE2OClCXzE5MjAuanBnLmpwZWciXV0.jpeg?sha=bf7ecaf4d9cf6750" 1511 height="auto" 1512 alt="" 1513 class="swiper-lazy" 1514 > 1515 </picture> 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 </a> 1530 1531 1532 <div class="swiper-lazy-preloader"></div> 1533 1534 </div> 1535 1536 <div class="swiper-slide"> 1537 1538 1539 <a 1540 href="/products/a4z" 1541 class="img-flex qk-align--stretch qk-display--contents" 1542 target="_blank" 1543 rel="noopener noreferrer" 1544 > 1545 1546 1547 1548 1549 1550 1551 <picture> 1552 1553 <source 1554 media="(max-width: 576px)" 1555 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NjYxXzIwMjYwNjI2X-WumOe2skJOKEE0WilCXzQ4MC5qcGcuanBlZyJdXQ.jpeg?sha=6f080a3c39c33d84" 1556 alt="" 1557 > 1558 1559 1560 <source 1561 media="(max-width: 992px)" 1562 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NjU0XzIwMjYwNjI2X-WumOe2skJOKEE0WilCXzk2MC5qcGcuanBlZyJdXQ.jpeg?sha=605adb9d60a46df5" 1563 alt="" 1564 > 1565 1566 <img 1567 id="slider-image" 1568 data-src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzgyODg0NjQzXzIwMjYwNjI2X-WumOe2skJOKEE0WilCXzE5MjAuanBnLmpwZWciXV0.jpeg?sha=b16aa30d808d007f" 1569 height="auto" 1570 alt="" 1571 class="swiper-lazy" 1572 > 1573 </picture> 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 </a> 1588 1589 1590 <div class="swiper-lazy-preloader"></div> 1591 1592 </div> 1593 1594 </div> 1595 1596 <div 1597 class="qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v2 qk-swiper_btn--prev main_slider_custom_prev qk-hidden--mobile" 1598 ></div> 1599 <div 1600 class="qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v2 qk-swiper_btn--next main_slider_custom_next qk-hidden--mobile" 1601 ></div> 1602 1603 </div> 1604
1605 <div class="qk-swiper_pg qk-w--100 qk-mg_t--1 qk-text--center main_slider_pagination"></div> 1606 1607</section> 1608
1609<script> 1610 $(document).ready(function(){ 1611 let isDynamicLoading = false; 1612 let settingObj = { 1613 id: '1715063788940_0', 1614 mobile_img_number: Number('1'), 1615 mobile_img_space: Number('8'), 1616 img_number: Number('1'), 1617 img_space: Number('12'), 1618 swiper_delay: '3', 1619 } 1620 window.mainSlider = function(obj){ 1621 var id = themeHelper.escapeId(obj.id); 1622 var slideCount = $(`#${obj.id} .swiper-slide`).length 1623 var autoLoop = true 1624 if (slideCount <= 1){ 1625 autoLoop = false 1626 } 1627 var mainSlider = new Swiper('#' + id + ' .swiper-container', { 1628 preloadImages: false, 1629 slidesPerView: Number(obj.mobile_img_number), 1630 spaceBetween: Number(obj.mobile_img_space), 1631 breakpoints: { 1632 0:{ 1633 slidesPerView: Number(obj.mobile_img_number), 1634 spaceBetween: Number(obj.mobile_img_space), 1635 }, 1636 991: { 1637 slidesPerView: Number(obj.img_number), 1638 spaceBetween: Number(obj.img_space), 1639 } 1640 }, 1641 // Enable lazy loading 1642 observer: true, 1643 observeParents: true, 1644 autoheight: true, 1645 lazy: { 1646 loadPrevNext: true, 1647 }, 1648 freeMode: { 1649 enabled: true, 1650 sticky: true, 1651 momentum: true, 1652 momentumRatio: 0.4, 1653 momentumVelocityRatio: 0.1, 1654 }, 1655 loop: autoLoop, 1656 autoplay: { delay: obj.swiper_delay * 1000 }, 1657 speed: Number('300.0'), 1658 pagination: { 1659 el: '#' + id + ' .main_slider_pagination', 1660 clickable: true, 1661 }, 1662 navigation: { 1663 nextEl: '#' + id + ' .main_slider_custom_next', 1664 prevEl: '#' + id + ' .main_slider_custom_prev', 1665 }, 1666 on: { 1667 init: function () { 1668 if (isDynamicLoading && !window.matchMedia("(max-width: 576px)").matches) { 1669 document.querySelector('#' + id + ' .main-slider-placeholder').style.display = 'none'; 1670 document.querySelector('#' + id + ' .swiper-container').style.visibility = 'visible'; 1671 } 1672 }, 1673 } 1674 }); 1675 } 1676 if (isDynamicLoading) { 1677 window.DynamicLoading.setupComponent({ 1678 sectionId: "1715063788940_0", 1679 sectionSettingData: settingObj, 1680 entryName:'mainSlider', 1681 source:'https://cdnjs.cloudflare.com/ajax/libs/Swiper/5.4.5/js/swiper.js', 1682 componentType:'js', 1683 hiddenDom: true 1684 }); 1685 }else{ 1686 mainSlider(settingObj); 1687 } 1688 }) 1689</script>
1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_main_slider_custom-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 1702 1703<style> 1704 [id="1716620994813_0"] { 1705 margin: 0 0px 0px !important; 1706 } 1707 @media (max-width: 576px) { 1708 .main-slider-placeholder { 1709 display: none !important; 1710 } 1711 .swiper-container { 1712 visibility: visible !important; 1713 } 1714 } 1715 @media (max-width: 991px) { 1716 [id="1716620994813_0"] { 1717 margin: 0 0px 0px !important; 1718 } 1719 } 1720</style> 1721 1722<section id="1716620994813_0" class="main-slider qk-pos--rel"> 1723 1724 1725 1726 <div 1727 class="swiper swiper-container" 1728 1729 > 1730 <div class="swiper-wrapper qk-align--center"> 1731 1732 1733 1734 <div class="swiper-slide"> 1735 1736 1737 <a 1738 href="/pages/grinderselection" 1739 class="img-flex qk-align--stretch qk-display--contents" 1740 target="" 1741 rel="" 1742 > 1743 1744 1745 1746 1747 1748 1749 <picture> 1750 1751 <source 1752 media="(max-width: 576px)" 1753 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjE1X00t5aaC5L2V5oyR6YG4LVczMDB4SDIwMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=e880424c3634c8e4" 1754 alt="" 1755 > 1756 1757 1758 <source 1759 media="(max-width: 992px)" 1760 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjA3X-WmguS9leaMkemBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=1e000e54abf23ead" 1761 alt="" 1762 > 1763 1764 <img 1765 id="slider-image" 1766 data-src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjA3X-WmguS9leaMkemBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=1e000e54abf23ead" 1767 height="auto" 1768 alt="" 1769 class="swiper-lazy" 1770 > 1771 </picture> 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 </a> 1786 1787 1788 <div class="swiper-lazy-preloader"></div> 1789 1790 </div> 1791 1792 </div> 1793 1794 </div> 1795 1796</section> 1797
1798<script> 1799 $(document).ready(function(){ 1800 let isDynamicLoading = false; 1801 let settingObj = { 1802 id: '1716620994813_0', 1803 mobile_img_number: Number('1'), 1804 mobile_img_space: Number('8'), 1805 img_number: Number('1'), 1806 img_space: Number('12'), 1807 swiper_delay: '3', 1808 } 1809 window.mainSlider = function(obj){ 1810 var id = themeHelper.escapeId(obj.id); 1811 var slideCount = $(`#${obj.id} .swiper-slide`).length 1812 var autoLoop = true 1813 if (slideCount <= 1){ 1814 autoLoop = false 1815 } 1816 var mainSlider = new Swiper('#' + id + ' .swiper-container', { 1817 preloadImages: false, 1818 slidesPerView: Number(obj.mobile_img_number), 1819 spaceBetween: Number(obj.mobile_img_space), 1820 breakpoints: { 1821 0:{ 1822 slidesPerView: Number(obj.mobile_img_number), 1823 spaceBetween: Number(obj.mobile_img_space), 1824 }, 1825 991: { 1826 slidesPerView: Number(obj.img_number), 1827 spaceBetween: Number(obj.img_space), 1828 } 1829 }, 1830 // Enable lazy loading 1831 observer: true, 1832 observeParents: true, 1833 autoheight: true, 1834 lazy: { 1835 loadPrevNext: true, 1836 }, 1837 freeMode: { 1838 enabled: true, 1839 sticky: true, 1840 momentum: true, 1841 momentumRatio: 0.4, 1842 momentumVelocityRatio: 0.1, 1843 }, 1844 loop: autoLoop, 1845 autoplay: { delay: obj.swiper_delay * 1000 }, 1846 speed: Number('300.0'), 1847 pagination: { 1848 el: '#' + id + ' .main_slider_pagination', 1849 clickable: true, 1850 }, 1851 navigation: { 1852 nextEl: '#' + id + ' .main_slider_custom_next', 1853 prevEl: '#' + id + ' .main_slider_custom_prev', 1854 }, 1855 on: { 1856 init: function () { 1857 if (isDynamicLoading && !window.matchMedia("(max-width: 576px)").matches) { 1858 document.querySelector('#' + id + ' .main-slider-placeholder').style.display = 'none'; 1859 document.querySelector('#' + id + ' .swiper-container').style.visibility = 'visible'; 1860 } 1861 }, 1862 } 1863 }); 1864 } 1865 if (isDynamicLoading) { 1866 window.DynamicLoading.setupComponent({ 1867 sectionId: "1716620994813_0", 1868 sectionSettingData: settingObj, 1869 entryName:'mainSlider', 1870 source:'https://cdnjs.cloudflare.com/ajax/libs/Swiper/5.4.5/js/swiper.js', 1871 componentType:'js', 1872 hiddenDom: true 1873 }); 1874 }else{ 1875 mainSlider(settingObj); 1876 } 1877 }) 1878</script>
1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_main_slider_custom-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 1891 1892<style> 1893 [id="1715271445372_0"] { 1894 margin: 0 0px 0px !important; 1895 } 1896 @media (max-width: 576px) { 1897 .main-slider-placeholder { 1898 display: none !important; 1899 } 1900 .swiper-container { 1901 visibility: visible !important; 1902 } 1903 } 1904 @media (max-width: 991px) { 1905 [id="1715271445372_0"] { 1906 margin: 0 0px 0px !important; 1907 } 1908 } 1909</style> 1910 1911<section id="1715271445372_0" class="main-slider qk-pos--rel"> 1912 1913 1914 1915 <div 1916 class="swiper swiper-container" 1917 1918 > 1919 <div class="swiper-wrapper qk-align--center"> 1920 1921 1922 1923 <div class="swiper-slide"> 1924 1925 1926 <a 1927 href="/products/a68" 1928 class="img-flex qk-align--stretch qk-display--contents" 1929 target="" 1930 rel="" 1931 > 1932 1933 1934 1935 1936 1937 1938 <picture> 1939 1940 <source 1941 media="(max-width: 576px)" 1942 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU3X00t5ZWG55So6aaW6YG4LVczMDB4SDIwMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=361309baa0ffcc08" 1943 alt="" 1944 > 1945 1946 1947 <source 1948 media="(max-width: 992px)" 1949 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU4X-WVhueUqOmmlumBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=4ceaf5b0756e9ed4" 1950 alt="" 1951 > 1952 1953 <img 1954 id="slider-image" 1955 data-src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU4X-WVhueUqOmmlumBuC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=4ceaf5b0756e9ed4" 1956 height="auto" 1957 alt="" 1958 class="swiper-lazy" 1959 > 1960 </picture> 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 </a> 1975 1976 1977 <div class="swiper-lazy-preloader"></div> 1978 1979 </div> 1980 1981 <div class="swiper-slide"> 1982 1983 1984 <a 1985 href="/products/a4" 1986 class="img-flex qk-align--stretch qk-display--contents" 1987 target="" 1988 rel="" 1989 > 1990 1991 1992 1993 1994 1995 1996 <picture> 1997 1998 <source 1999 media="(max-width: 576px)" 2000 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU3X00t5L6_5Yip5aW95pSc5bi2LVczMDB4SDIwMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=3ae4a1734bdd11e7" 2001 alt="" 2002 > 2003 2004 2005 <source 2006 media="(max-width: 992px)" 2007 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU3X-S-v-WIqeaUnOW4ti1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=558c2cb058308516" 2008 alt="" 2009 > 2010 2011 <img 2012 id="slider-image" 2013 data-src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NjU3X-S-v-WIqeaUnOW4ti1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=558c2cb058308516" 2014 height="auto" 2015 alt="" 2016 class="swiper-lazy" 2017 > 2018 </picture> 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 </a> 2033 2034 2035 <div class="swiper-lazy-preloader"></div> 2036 2037 </div> 2038 2039 <div class="swiper-slide"> 2040 2041 2042 <a 2043 href="/products/a5" 2044 class="img-flex qk-align--stretch qk-display--contents" 2045 target="" 2046 rel="" 2047 > 2048 2049 2050 2051 2052 2053 2054 <picture> 2055 2056 <source 2057 media="(max-width: 576px)" 2058 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0Nzc3X00t5pO65pSk6YGp55SoLVczMDB4SDIwMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=36a0fc34f2878871" 2059 alt="" 2060 > 2061 2062 2063 <source 2064 media="(max-width: 992px)" 2065 data-srcset="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NzczX-aTuuaUpOmBqeeUqC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=aeffc3212aaa2a55" 2066 alt="" 2067 > 2068 2069 <img 2070 id="slider-image" 2071 data-src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0NzczX-aTuuaUpOmBqeeUqC1XNzEweEg0NjQtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=aeffc3212aaa2a55" 2072 height="auto" 2073 alt="" 2074 class="swiper-lazy" 2075 > 2076 </picture> 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 </a> 2091 2092 2093 <div class="swiper-lazy-preloader"></div> 2094 2095 </div> 2096 2097 </div> 2098 2099 <div 2100 class="qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v2 qk-swiper_btn--prev main_slider_custom_prev qk-hidden--mobile" 2101 ></div> 2102 <div 2103 class="qk-swiper_btn qk-swiper_btn--lg qk-swiper_btn--v2 qk-swiper_btn--next main_slider_custom_next qk-hidden--mobile" 2104 ></div> 2105 2106 </div> 2107
2108 <div class="qk-swiper_pg qk-w--100 qk-mg_t--1 qk-text--center main_slider_pagination"></div> 2109 2110</section> 2111
2112<script> 2113 $(document).ready(function(){ 2114 let isDynamicLoading = false; 2115 let settingObj = { 2116 id: '1715271445372_0', 2117 mobile_img_number: Number('1'), 2118 mobile_img_space: Number('8'), 2119 img_number: Number('1'), 2120 img_space: Number('12'), 2121 swiper_delay: '5', 2122 } 2123 window.mainSlider = function(obj){ 2124 var id = themeHelper.escapeId(obj.id); 2125 var slideCount = $(`#${obj.id} .swiper-slide`).length 2126 var autoLoop = true 2127 if (slideCount <= 1){ 2128 autoLoop = false 2129 } 2130 var mainSlider = new Swiper('#' + id + ' .swiper-container', { 2131 preloadImages: false, 2132 slidesPerView: Number(obj.mobile_img_number), 2133 spaceBetween: Number(obj.mobile_img_space), 2134 breakpoints: { 2135 0:{ 2136 slidesPerView: Number(obj.mobile_img_number), 2137 spaceBetween: Number(obj.mobile_img_space), 2138 }, 2139 991: { 2140 slidesPerView: Number(obj.img_number), 2141 spaceBetween: Number(obj.img_space), 2142 } 2143 }, 2144 // Enable lazy loading 2145 observer: true, 2146 observeParents: true, 2147 autoheight: true, 2148 lazy: { 2149 loadPrevNext: true, 2150 }, 2151 freeMode: { 2152 enabled: true, 2153 sticky: true, 2154 momentum: true, 2155 momentumRatio: 0.4, 2156 momentumVelocityRatio: 0.1, 2157 }, 2158 loop: autoLoop, 2159 autoplay: { delay: obj.swiper_delay * 1000 }, 2160 speed: Number('300.0'), 2161 pagination: { 2162 el: '#' + id + ' .main_slider_pagination', 2163 clickable: true, 2164 }, 2165 navigation: { 2166 nextEl: '#' + id + ' .main_slider_custom_next', 2167 prevEl: '#' + id + ' .main_slider_custom_prev', 2168 }, 2169 on: { 2170 init: function () { 2171 if (isDynamicLoading && !window.matchMedia("(max-width: 576px)").matches) { 2172 document.querySelector('#' + id + ' .main-slider-placeholder').style.display = 'none'; 2173 document.querySelector('#' + id + ' .swiper-container').style.visibility = 'visible'; 2174 } 2175 }, 2176 } 2177 }); 2178 } 2179 if (isDynamicLoading) { 2180 window.DynamicLoading.setupComponent({ 2181 sectionId: "1715271445372_0", 2182 sectionSettingData: settingObj, 2183 entryName:'mainSlider', 2184 source:'https://cdnjs.cloudflare.com/ajax/libs/Swiper/5.4.5/js/swiper.js', 2185 componentType:'js', 2186 hiddenDom: true 2187 }); 2188 }else{ 2189 mainSlider(settingObj); 2190 } 2191 }) 2192</script>
2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203
2204<script src='//cdn-general.cybassets.com/frontend/shop/productBanner-3a2e378145f8a165.js' type='text/javascript'></script>
2204 2205 2206 2207<style> 2208 [id="1715274086521_1"] { 2209 margin: 0 120px 12px !important; 2210 } 2211 @media (max-width: 991px) { 2212 [id="1715274086521_1"] { 2213 margin: 0 26px 24px !important; 2214 } 2215 } 2216</style> 2217 2218<section id="1715274086521_1" class="index-product-banner qk-display--bk qk-pos--rel"> 2219 <div id="index_product_banner-1715274086521_1"></div> 2220</section> 2221
2222<script> 2223 $(document).ready(function() { 2224 let isDynamicLoading = false; 2225 if (isDynamicLoading) { 2226 window.DynamicLoading.setupComponent({ 2227 sectionId:'#index_product_banner-1715274086521_1', 2228 callbackData:{ 2229 sectionId: "1715274086521_1", 2230 section: {"type":"_index_product_banner","custom_name":"æ©«å¹ å»£å","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X-WwiOWIqeaooee1hOioreioiC3vvLcxNDIweEgyMjAucG5nLnBuZyJdXQ.png?sha=491d673ac283b687","dict_tablet_image_url":"","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X00t5bCI54K657K-5ZOB5ZKW5ZWh5omT6YCgLVczMDB4SDEyMC5wbmcucG5nIl1d.png?sha=bd86e7472b968923","dict_link":"","cta_btn_display_style":"topPosition","cta_btn_bg_color":"#000000","cta_btn_text_color":"#ffffff","margin_x":"120","margin_bottom":"12","mobile_margin_x":"26","mobile_margin_bottom":"24"},"blocks":{},"block_order":[],"schedule":{"enabled_default":true,"schedule_lists":[]}}, 2231 dictMobileImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X00t5bCI54K657K-5ZOB5ZKW5ZWh5omT6YCgLVczMDB4SDEyMC5wbmcucG5nIl1d.png?sha=bd86e7472b968923", 2232 dictTabletImageUrl:"", 2233 dictImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X-WwiOWIqeaooee1hOioreioiC3vvLcxNDIweEgyMjAucG5nLnBuZyJdXQ.png?sha=491d673ac283b687", 2234 }, 2235 entryName:'renderProductBanner', 2236 source:'//cdn-general.cybassets.com/frontend/shop/productBanner-3a2e378145f8a165.js', 2237 }); 2238 }else{ 2239 window.renderProductBanner('#index_product_banner-1715274086521_1', 2240 { 2241 sectionId: "1715274086521_1", 2242 section: {"type":"_index_product_banner","custom_name":"æ©«å¹ å»£å","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X-WwiOWIqeaooee1hOioreioiC3vvLcxNDIweEgyMjAucG5nLnBuZyJdXQ.png?sha=491d673ac283b687","dict_tablet_image_url":"","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X00t5bCI54K657K-5ZOB5ZKW5ZWh5omT6YCgLVczMDB4SDEyMC5wbmcucG5nIl1d.png?sha=bd86e7472b968923","dict_link":"","cta_btn_display_style":"topPosition","cta_btn_bg_color":"#000000","cta_btn_text_color":"#ffffff","margin_x":"120","margin_bottom":"12","mobile_margin_x":"26","mobile_margin_bottom":"24"},"blocks":{},"block_order":[],"schedule":{"enabled_default":true,"schedule_lists":[]}}, 2243 dictMobileImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X00t5bCI54K657K-5ZOB5ZKW5ZWh5omT6YCgLVczMDB4SDEyMC5wbmcucG5nIl1d.png?sha=bd86e7472b968923", 2244 dictTabletImageUrl:"", 2245 dictImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MjI0ODU2X-WwiOWIqeaooee1hOioreioiC3vvLcxNDIweEgyMjAucG5nLnBuZyJdXQ.png?sha=491d673ac283b687", 2246 }); 2247 } 2248 }); 2249</script>
2249 2250 2251 2252 2253 2254 2255 2256 2257<section id="1716791046824_5"> 2258 <div><img loading="lazy" id="desktop-yt" width="100%" height="100%" src="//cdn-general.cybassets.com/s/files/28976/ckeditor/pictures/content_aa0da766-1b26-4734-8ac7-419429da2126.gif" with="100%" heigh="400" alt="極éå¿«æ"></div> 2259<div><img loading="lazy" id="mobile-yt" width="100%" height="100%" src="//cdn-general.cybassets.com/s/files/28976/ckeditor/pictures/content_aa0da766-1b26-4734-8ac7-419429da2126.gif" with="100%" heigh="400" alt="極éå¿«æ"></div> 2260</section> 2261 2262<style> 2263 [id="1716791046824_5"] { 2264 margin: 0 120px -10px !important; 2265 } 2266 @media (max-width: 991px) { 2267 [id="1716791046824_5"] { 2268 margin: 0 24px -10px !important; 2269 } 2270 } 2271</style> 2272 2273
2274<script src='//cdn-general.cybassets.com/frontend/shop/textEditorSection-3a2e378145f8a165.js' type='text/javascript'></script>
2274 2275 2276 2277 2278 2279 2280<section id="1715274387306_7"> 2281 <div id="text_editor_section-1715274387306_7"></div> 2282</section> 2283
2284<script> 2285 $(document).ready(function() { 2286 window.renderTextEditorSection('#text_editor_section-1715274387306_7', { 2287 sectionId: "1715274387306_7", 2288 section: {"type":"_text_editor_section","custom_name":"æå編輯","visible":true,"settings":{"margin_x":"120","margin_bottom":"40","mobile_margin_x":"20","mobile_margin_bottom":"40","dict_advanced_rich_text_content":"\u003cp style=\"text-align:center;\"\u003e\u003cspan style=\"color: rgb(255,255,255);font-size: 16px;\"\u003eé¨èç²¾åå塿µªæ½®ä¾è¥²ï¼èçæ³æ¥æ°æç°ï¼åå¡è±åè³ªä¸æ·æåï¼ç£¨è±æ©ä¹éè¦èæä¿±é²ï¼è®åå¡è¾²åªåçæå¯¦ï¼å¾ä»¥åç¾æç¾å¥½çåå¡é¢¨å³å¾ä½¿ç¨è çé«é©åºç¼ï¼ææéç給享ç¨åå¡çç¾å¥½æå»ï¼è§£æ±ºéå¾ç 磨å塿çéº»ç ©åé¡\u003c/span\u003e\u003c/p\u003e\n"},"blocks":{},"block_order":[],"schedule":{"enabled_default":true,"schedule_lists":[]}}, 2289 }); 2290 }) 2291</script>
2291 2292 2293 2294<style> 2295 [id="1715274387306_7"] { 2296 margin: 0 120px 40px; 2297 } 2298 @media (max-width: 991px) { 2299 [id="1715274387306_7"] { 2300 margin: 0 20px 40px; 2301 } 2302 } 2303</style> 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314
2315<script src='//cdn-general.cybassets.com/frontend/shop/productBanner-3a2e378145f8a165.js' type='text/javascript'></script>
2315 2316 2317 2318<style> 2319 [id="1716090072546_1"] { 2320 margin: 0 118px 50px !important; 2321 } 2322 @media (max-width: 991px) { 2323 [id="1716090072546_1"] { 2324 margin: 0 22px 24px !important; 2325 } 2326 } 2327</style> 2328 2329<section id="1716090072546_1" class="index-product-banner qk-display--bk qk-pos--rel"> 2330 <div id="index_product_banner-1716090072546_1"></div> 2331</section> 2332
2333<script> 2334 $(document).ready(function() { 2335 let isDynamicLoading = false; 2336 if (isDynamicLoading) { 2337 window.DynamicLoading.setupComponent({ 2338 sectionId:'#index_product_banner-1716090072546_1', 2339 callbackData:{ 2340 sectionId: "1716090072546_1", 2341 section: {"type":"_index_product_banner","custom_name":"æ©«å¹ å»£å","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X-WwiOeCuueyvuWTgeWSluWVoeaJk-mAoC3vvLcxNDIweEgyMjAtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=6c283392efe9aff6","dict_tablet_image_url":"","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X00t5bCI5Yip5qih57WE6Kit6KiILVczMDB4SDEyMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=d45c9e524c965173","dict_link":"","cta_btn_display_style":"topPosition","cta_btn_bg_color":"#000000","cta_btn_text_color":"#ffffff","margin_x":"118","margin_bottom":"50","mobile_margin_x":"22","mobile_margin_bottom":"24"},"blocks":{},"block_order":[],"schedule":{"enabled_default":true,"schedule_lists":[]}}, 2342 dictMobileImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X00t5bCI5Yip5qih57WE6Kit6KiILVczMDB4SDEyMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=d45c9e524c965173", 2343 dictTabletImageUrl:"", 2344 dictImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X-WwiOeCuueyvuWTgeWSluWVoeaJk-mAoC3vvLcxNDIweEgyMjAtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=6c283392efe9aff6", 2345 }, 2346 entryName:'renderProductBanner', 2347 source:'//cdn-general.cybassets.com/frontend/shop/productBanner-3a2e378145f8a165.js', 2348 }); 2349 }else{ 2350 window.renderProductBanner('#index_product_banner-1716090072546_1', 2351 { 2352 sectionId: "1716090072546_1", 2353 section: {"type":"_index_product_banner","custom_name":"æ©«å¹ å»£å","visible":true,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X-WwiOeCuueyvuWTgeWSluWVoeaJk-mAoC3vvLcxNDIweEgyMjAtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=6c283392efe9aff6","dict_tablet_image_url":"","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X00t5bCI5Yip5qih57WE6Kit6KiILVczMDB4SDEyMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=d45c9e524c965173","dict_link":"","cta_btn_display_style":"topPosition","cta_btn_bg_color":"#000000","cta_btn_text_color":"#ffffff","margin_x":"118","margin_bottom":"50","mobile_margin_x":"22","mobile_margin_bottom":"24"},"blocks":{},"block_order":[],"schedule":{"enabled_default":true,"schedule_lists":[]}}, 2354 dictMobileImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X00t5bCI5Yip5qih57WE6Kit6KiILVczMDB4SDEyMC0xMDAuanBnLmpwZWciXV0.jpeg?sha=d45c9e524c965173", 2355 dictTabletImageUrl:"", 2356 dictImageUrl:"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE3MzM1NjI0X-WwiOeCuueyvuWTgeWSluWVoeaJk-mAoC3vvLcxNDIweEgyMjAtMTAwLmpwZy5qcGVnIl1d.jpeg?sha=6c283392efe9aff6", 2357 }); 2358 } 2359 }); 2360</script>
2360 2361 2362
2363<script src='//cdn-general.cybassets.com/frontend/shop/textEditorSection-3a2e378145f8a165.js' type='text/javascript'></script>
2363 2364 2365 2366 2367 2368 2369<section id="1767148807242_8"> 2370 <div id="text_editor_section-1767148807242_8"></div> 2371</section> 2372
2373<script> 2374 $(document).ready(function() { 2375 window.renderTextEditorSection('#text_editor_section-1767148807242_8', { 2376 sectionId: "1767148807242_8", 2377 section: {"type":"_text_editor_section","custom_name":"æå編輯","visible":true,"settings":{"margin_x":"0","margin_bottom":"0","mobile_margin_x":"0","mobile_margin_bottom":"0","dict_advanced_rich_text_content":"\u003cp style=\"text-align:center;\"\u003e\u003cspan style=\"color: rgb(255,255,255);font-size: 24px;\"\u003eå忝è¼è¡¨\u003c/span\u003e\u003c/p\u003e\n"},"blocks":{},"block_order":[],"schedule":{"enabled_default":true,"schedule_lists":[]}}, 2378 }); 2379 }) 2380</script>
2380 2381 2382 2383<style> 2384 [id="1767148807242_8"] { 2385 margin: 0 0px 0px; 2386 } 2387 @media (max-width: 991px) { 2388 [id="1767148807242_8"] { 2389 margin: 0 0px 0px; 2390 } 2391 } 2392</style> 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_index_4_blocks-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' />
2407<script src='//cdn-general.cybassets.com/frontend/shop/productDisplay-3a2e378145f8a165.js' type='text/javascript'></script>
2407 2408 2409<style> 2410 [id="_index_4_blocks"] { 2411 margin: 0 120px 39px !important; 2412 } 2413 2414 @media (min-width: 992px) { 2415 [id="_index_4_blocks"] .block:not(.last-row) { 2416 margin-bottom: 40px !important; 2417 } 2418 [id="_index_4_blocks"] .block-default-width-margin:not(:first-of-type), 2419 [id="_index_4_blocks"] .block-not-first-margin { 2420 margin-left: 40px !important; 2421 } 2422 } 2423 2424 @media (max-width: 991px) { 2425 [id="_index_4_blocks"] { 2426 margin: 0 40px 0px !important; 2427 } 2428 [id="_index_4_blocks"] > .qk-display--flex.qk-flex--wrap { 2429 gap: 28px; 2430 justify-content: flex-start; 2431 } 2432 [id="_index_4_blocks"] .block { 2433 flex: 0 0 calc((100% - (1 - 1) * 28px) / 1); 2434 } 2435 } 2436 2437 .video-block-loading { 2438 background-color: #eeee; 2439 position: absolute; 2440 top: 0; 2441 bottom: 0; 2442 left: 0; 2443 width: 100%; 2444 height: 100%; 2445 } 2446</style> 2447
2448<script> 2449 2450 $(document).ready(function() { 2451 let isDynamicLoading = false; 2452 if (isDynamicLoading) { 2453 window.DynamicLoading.setupComponent({ 2454 sectionId:'_index_4_blocks', 2455 componentType:'liquid', 2456 }); 2457 } 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 }) 2470</script>
2470 2471
2472<script> 2473 function buildYoutubeEmbedUrl(url, options) { 2474 const YT_REGEX = /^.*(youtu\.be\/|v\/|u\/\w\/|embed\/|watch\?v=|&v=|shorts\/)([^#&?]*).*/; 2475 const match = (url || '').match(YT_REGEX); 2476 const videoId = match && match[2].length === 11 ? match[2] : ''; 2477 2478 if (!videoId) { 2479 return ''; 2480 } 2481 2482 const autoPlay = options && options.autoPlay; 2483 const hideControls = options && options.hideControls; 2484 const loop = options && options.loop; 2485 2486 const searchParams = new URLSearchParams(); 2487 2488 searchParams.set('autoplay', autoPlay ? '1' : '0'); 2489 // è¥èªåææ¾ï¼é è¨éé³ä»¥ç¬¦åç覽å¨éå¶ 2490 searchParams.set('mute', autoPlay ? '1' : '0'); 2491 searchParams.set('playsinline', '1'); 2492 2493 searchParams.set('controls', hideControls ? '0' : '1'); 2494 searchParams.set('rel', '0'); 2495 2496 if (loop) { 2497 searchParams.set('loop', '1'); 2498 searchParams.set('playlist', videoId); 2499 } 2500 2501 return 'https://www.youtube.com/embed/' + videoId + '?' + searchParams.toString(); 2502 } 2503 2504 function parseYtUrlOnLoad(target, url, autoPlay, hideControls, loop) { 2505 const finalUrl = buildYoutubeEmbedUrl(url, { 2506 autoPlay: autoPlay, 2507 hideControls: hideControls, 2508 loop: loop, 2509 }); 2510 2511 if (!finalUrl || target.src === finalUrl) { 2512 return; 2513 } 2514 2515 const handleVideoLoad = function () { 2516 try { 2517 const wrapper = $(target).closest('.embed-responsive')[0]; 2518 if (wrapper) { 2519 // éé loading skeleton 2520 const loading = wrapper.querySelector('.video-block-loading'); 2521 if (loading) { 2522 loading.style.display = 'none'; 2523 } 2524 } 2525 } catch (e) { 2526 console.error('iframe onload èç失æ', e); 2527 } finally { 2528 target.removeEventListener('load', handleVideoLoad); 2529 } 2530 }; 2531 2532 target.addEventListener('load', handleVideoLoad); 2533 2534 target.src = finalUrl; 2535 if (hideControls && autoPlay) { 2536 target.style.pointerEvents = 'none'; 2537 } 2538 2539 // 夿·æ¯ä¸æ¯ YouTube shortsï¼æ±ºå®è¦ä¸è¦å ä¸ .short-youtube class 2540 try { 2541 const isShort = (url || '').indexOf('/shorts/') !== -1; 2542 if (isShort) { 2543 const wrapper = $(target).closest('.embed-responsive')[0]; 2544 if (wrapper) { 2545 wrapper.classList.add('short-youtube'); 2546 } 2547 } 2548 } catch (e) { 2549 console.error('isShort 夿·å¤±æ', e); 2550 } 2551 } 2552 2553 2554 window.addEventListener('load', function () { 2555 const sectionEl = document.getElementById('_index_4_blocks'); 2556 if (!sectionEl) return; 2557 2558 const options = { 2559 threshold: 0.25, 2560 }; 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 }); 2574</script>
2574 2575 2576<section id="_index_4_blocks" class="index-4-blocks"> 2577 <div class="qk-display--flex qk-flex--wrap"> 2578 2579 2580 2581 2582 <div class="block image mobile-1-col block-default-width-margin last-row" style="width: calc(20.0% - 32.0px);"> 2583 2584 <div class="img-card" id="1715274488005_0"> 2585 2586 2587 2588 <a href="/products/a68" class="banner qk-hidden--mobile" target="" rel=""> 2589 <img src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE2NzAxMjk0X2E2LVcxMDAweEgxMDAwLTEwMC5qcGcuanBlZyJdXQ.jpeg?sha=5c811ab7a8cb4967" class="qk-w--100" alt=""> 2590 </a> 2591 2592 2593 2594 2595 <a 2596 href="/products/a68" 2597 class="banner qk-display--bk qk-hidden--phone qk-hidden--pc" 2598 target="" 2599 rel="" 2600 > 2601 <img 2602 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE2NzAxMjk0X2E2LVcxMDAweEgxMDAwLTEwMC5qcGcuanBlZyJdXQ.jpeg?sha=5c811ab7a8cb4967" 2603 class="qk-w--100" 2604 alt="" 2605 > 2606 </a> 2607 2608 2609 2610 2611 <a 2612 href="/products/a68" 2613 class="banner qk-display--bk qk-hidden--pc qk-hidden--tablet" 2614 target="" 2615 rel="" 2616 > 2617 <img 2618 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE2NzAxMjk0X2E2LVcxMDAweEgxMDAwLTEwMC5qcGcuanBlZyJdXQ.jpeg?sha=5c811ab7a8cb4967" 2619 class="qk-w--100" 2620 alt="" 2621 > 2622 </a> 2623 2624 2625 2626 <div class="advance-rich-text-content-container"> 2627 2628 </div> 2629 </div> 2630 2631 </div> 2632 2633 2634 2635 <div class="block image mobile-1-col block-default-width-margin last-row" style="width: calc(20.0% - 32.0px);"> 2636 2637 <div class="img-card" id="1715274486572_0"> 2638 2639 2640 2641 <a href="/products/a5" class="banner qk-hidden--mobile" target="" rel=""> 2642 <img src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc0MjExX2E1LVcxMDAweEgxMDAwLTEwMC5qcGcuanBlZyJdXQ.jpeg?sha=1fe75f3dbcfb7940" class="qk-w--100" alt=""> 2643 </a> 2644 2645 2646 2647 2648 <a 2649 href="/products/a5" 2650 class="banner qk-display--bk qk-hidden--phone qk-hidden--pc" 2651 target="" 2652 rel="" 2653 > 2654 <img 2655 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc0MjExX2E1LVcxMDAweEgxMDAwLTEwMC5qcGcuanBlZyJdXQ.jpeg?sha=1fe75f3dbcfb7940" 2656 class="qk-w--100" 2657 alt="" 2658 > 2659 </a> 2660 2661 2662 2663 2664 <a 2665 href="/products/a5" 2666 class="banner qk-display--bk qk-hidden--pc qk-hidden--tablet" 2667 target="" 2668 rel="" 2669 > 2670 <img 2671 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzE1Mjc0MjExX2E1LVcxMDAweEgxMDAwLTEwMC5qcGcuanBlZyJdXQ.jpeg?sha=1fe75f3dbcfb7940" 2672 class="qk-w--100" 2673 alt="" 2674 > 2675 </a> 2676 2677 2678 2679 <div class="advance-rich-text-content-container"> 2680 2681 </div> 2682 </div> 2683 2684 </div> 2685 2686 2687 2688 <div class="block image mobile-1-col block-default-width-margin last-row" style="width: calc(20.0% - 32.0px);"> 2689 2690 <div class="img-card" id="1721378186690_0"> 2691 2692 2693 2694 <a href="/products/a3" class="banner qk-hidden--mobile" target="" rel=""> 2695 <img src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIxMzgxMjc1XzE3MTUyNzQyMTFfYTQtVzEwMDB4SDEwM
2695DAtMTAwLmpwZy0oMSkuanBnLmpwZWciXV0.jpeg?sha=d72deee16f821e61" class="qk-w--100" alt=""> 2696 </a> 2697 2698 2699 2700 2701 <a 2702 href="/products/a3" 2703 class="banner qk-display--bk qk-hidden--phone qk-hidden--pc" 2704 target="" 2705 rel="" 2706 > 2707 <img 2708 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIxMzgxMjc1XzE3MTUyNzQyMTFfYTQtVzEwMDB4SDEwMDAtMTAwLmpwZy0oMSkuanBnLmpwZWciXV0.jpeg?sha=d72deee16f821e61" 2709 class="qk-w--100" 2710 alt="" 2711 > 2712 </a> 2713 2714 2715 2716 2717 <a 2718 href="/products/a3" 2719 class="banner qk-display--bk qk-hidden--pc qk-hidden--tablet" 2720 target="" 2721 rel="" 2722 > 2723 <img 2724 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIxMzgxMjc1XzE3MTUyNzQyMTFfYTQtVzEwMDB4SDEwMDAtMTAwLmpwZy0oMSkuanBnLmpwZWciXV0.jpeg?sha=d72deee16f821e61" 2725 class="qk-w--100" 2726 alt="" 2727 > 2728 </a> 2729 2730 2731 2732 <div class="advance-rich-text-content-container"> 2733 2734 </div> 2735 </div> 2736 2737 </div> 2738 2739 2740 2741 <div class="block image mobile-1-col block-default-width-margin last-row" style="width: calc(20.0% - 32.0px);"> 2742 2743 <div class="img-card" id="1722312400782_0"> 2744 2745 2746 2747 <a href="/products/a4z" class="banner qk-hidden--mobile" target="" rel=""> 2748 <img src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIzNjkyNDMyX2E0ei5qcGcuanBlZyJdXQ.jpeg?sha=1c087743a8914e78" class="qk-w--100" alt=""> 2749 </a> 2750 2751 2752 2753 2754 <a 2755 href="/products/a4z" 2756 class="banner qk-display--bk qk-hidden--phone qk-hidden--pc" 2757 target="" 2758 rel="" 2759 > 2760 <img 2761 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIzNjkyNDMyX2E0ei5qcGcuanBlZyJdXQ.jpeg?sha=1c087743a8914e78" 2762 class="qk-w--100" 2763 alt="" 2764 > 2765 </a> 2766 2767 2768 2769 2770 <a 2771 href="/products/a4z" 2772 class="banner qk-display--bk qk-hidden--pc qk-hidden--tablet" 2773 target="" 2774 rel="" 2775 > 2776 <img 2777 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzIzNjkyNDMyX2E0ei5qcGcuanBlZyJdXQ.jpeg?sha=1c087743a8914e78" 2778 class="qk-w--100" 2779 alt="" 2780 > 2781 </a> 2782 2783 2784 2785 <div class="advance-rich-text-content-container"> 2786 2787 </div> 2788 </div> 2789 2790 </div> 2791 2792 2793 2794 <div class="block image mobile-1-col block-default-width-margin last-row" style="width: calc(20.0% - 32.0px);"> 2795 2796 <div class="img-card" id="display_index_4_block_1"> 2797 2798 2799 2800 <a href="/products/a2" class="banner qk-hidden--mobile" target="" rel=""> 2801 <img src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzUzODYzNDUzX0Ey55Si5ZOB5YiG6aGe5ZyWICgyKS5wbmcucG5nIl1d.png?sha=0e9d6c6134b518ae" class="qk-w--100" alt=""> 2802 </a> 2803 2804 2805 2806 2807 <a 2808 href="/products/a2" 2809 class="banner qk-display--bk qk-hidden--phone qk-hidden--pc" 2810 target="" 2811 rel="" 2812 > 2813 <img 2814 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzUzODYzNDUzX0Ey55Si5ZOB5YiG6aGe5ZyWICgyKS5wbmcucG5nIl1d.png?sha=0e9d6c6134b518ae" 2815 class="qk-w--100" 2816 alt="" 2817 > 2818 </a> 2819 2820 2821 2822 2823 <a 2824 href="/products/a2" 2825 class="banner qk-display--bk qk-hidden--pc qk-hidden--tablet" 2826 target="" 2827 rel="" 2828 > 2829 <img 2830 src="//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzUzODYzNDUzX0Ey55Si5ZOB5YiG6aGe5ZyWICgyKS5wbmcucG5nIl1d.png?sha=0e9d6c6134b518ae" 2831 class="qk-w--100" 2832 alt="" 2833 > 2834 </a> 2835 2836 2837 2838 <div class="advance-rich-text-content-container"> 2839 2840 </div> 2841 </div> 2842 2843 </div> 2844 2845 </div> 2846</section> 2847 2848 2849 2850 2851 2852 2853<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/_index_4_blogs-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 2854 2855 2856<style> 2857 [id="1746692951347_3"] { 2858 margin: 0 0px 50px !important; 2859 --article-columns: 4; 2860 } 2861 [id="1746692951347_3"] .tab-pane.active .article:nth-child(n+5) { 2862 display: none; 2863 } 2864 @media (max-width: 991px) { 2865 [id="1746692951347_3"] { 2866 margin: 0 0px 50px !important; 2867 } 2868 } 2869</style> 2870 2871<section id="1746692951347_3" class="index_4_blogs"> 2872 <div class="container qk-container"> 2873 2874 <div class="section-heading qk-pos--rel qk-text--center qk-bd--none qk-pd--0 "> 2875 <h2 class="qk-h2 qk-text--heading qk-display--il_bk qk-fs--hd1 qk-pos--rel qk-mg_b--0">æ´å¤è³è¨</h2> 2876 </div> 2877 <div class="form-group"> 2878 <form> 2879 <select id="form-blogs-1746692951347_3" class="form-blogs form-control qk-display--none qk-bd--border"> 2880 2881 2882 2883 <option value="#block_1746692951349_0">åå¡ç¥è</option> 2884 2885 2886 2887 2888 <option value="#block_1746693105187_0">è·äººæ¨è¦</option> 2889 2890 2891 </select> 2892 </form> 2893 <ul 2894 id="tab-blogs" 2895 class="nav nav-pills mb-3 tab-blogs qk-display--flex qk-justify--around qk-w--50" 2896 role="tablist" 2897 > 2898 2899 2900 2901 2902 <li class="nav-item"> 2903 <a 2904 id="block_1746692951349_0_tab" 2905 class="blog-nav-link qk-text--heading qk-text--accent_hover qk-fs--body qk-cursor--pointer qk-pos--rel" 2906 data-toggle="pill" 2907 href="#block_1746692951349_0" 2908 role="tab" 2909 aria-controls="1746692951349_0" 2910 aria-selected="true" 2911 > 2912 åå¡ç¥è 2913 </a> 2914 </li> 2915 2916 2917 2918 2919 2920 <li class="nav-item"> 2921 <a 2922 id="block_1746693105187_0_tab" 2923 class="blog-nav-link qk-text--heading qk-text--accent_hover qk-fs--body qk-cursor--pointer qk-pos--rel" 2924 data-toggle="pill" 2925 href="#block_1746693105187_0" 2926 role="tab" 2927 aria-controls="1746693105187_0" 2928 aria-selected="" 2929 > 2930 è·äººæ¨è¦ 2931 </a> 2932 </li> 2933 2934 2935 </ul> 2936 <div class="tab-content"> 2937 2938 2939 2940 2941 <div 2942 id="block_1746692951349_0" 2943 class="tab-pane fade qk-bd--default qk-bd--product_border" 2944 role="tabpanel" 2945 aria-labelledby="pills-coffee-information-tab" 2946 data-blog-url="/blogs/coffee-information" 2947 > 2948 2949 2950 <div class="article"> 2951 <div class="article-image qk-w--100"> 2952 <a 2953 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 2954 href="/blogs/coffee-information/coffee-defects" 2955 title="èªèåå¡ççµè±ï½4 å辨èééµï¼åå°æªå³
2955å å¾è±åæ¥èµ·" 2956 style="background-image: url('//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2Jsb2dzLzQ4MTQwL2ltYWdlMV9mOTA5OWU0M2Y0MTljNTc4ZWIyMS5wbmciXSxbInAiLCJ0aHVtYiIsIjUwMHg1MDAiXV0.png?sha=989fde6e6d6f0fd7')" 2957 ></a> 2958 </div> 2959 <div class="caption qk-flex--1"> 2960 <div class="article-title"> 2961 <a 2962 href="/blogs/coffee-information/coffee-defects" 2963 title="èªèåå¡ççµè±ï½4 å辨èééµï¼åå°æªå³å å¾è±åæ¥èµ·" 2964 class="qk-text--heading qk-fs--body qk-text--heading_hover" 2965 > 2966 èªèåå¡ççµè±ï½4 å辨èééµï¼åå°æªå³å å¾è±åæ¥èµ· 2967 </a> 2968 </div> 2969 <div class="article_readmore qk-w--100"> 2970 <a href="/blogs/coffee-information/coffee-defects" class="qk-text--text qk-fs--body"> 2971 ç¹¼çºé±è® 2972 </a> 2973 </div> 2974 </div> 2975 </div> 2976 2977 <div class="article"> 2978 <div class="article-image qk-w--100"> 2979 <a 2980 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 2981 href="/blogs/coffee-information/la-flor-del-cafe" 2982 title="è±ç¥åå¡4大ç¹è²ï¼ä¸æ¬¡ææé¦æ°£è風å³é å" 2983 style="background-image: url('//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2Jsb2dzLzQ4MTQwL2ltYWdlMV84NzhlNGY4Y2UyZmYxZDg0N2ZmNC5wbmciXSxbInAiLCJ0aHVtYiIsIjUwMHg1MDAiXV0.png?sha=b1bbd7f47f4e1964')" 2984 ></a> 2985 </div> 2986 <div class="caption qk-flex--1"> 2987 <div class="article-title"> 2988 <a 2989 href="/blogs/coffee-information/la-flor-del-cafe" 2990 title="è±ç¥åå¡4大ç¹è²ï¼ä¸æ¬¡ææé¦æ°£è風å³é å" 2991 class="qk-text--heading qk-fs--body qk-text--heading_hover" 2992 > 2993 è±ç¥åå¡4大ç¹è²ï¼ä¸æ¬¡ææé¦æ°£è風å³é å 2994 </a> 2995 </div> 2996 <div class="article_readmore qk-w--100"> 2997 <a href="/blogs/coffee-information/la-flor-del-cafe" class="qk-text--text qk-fs--body"> 2998 ç¹¼çºé±è® 2999 </a> 3000 </div> 3001 </div> 3002 </div> 3003 3004 <div class="article"> 3005 <div class="article-image qk-w--100"> 3006 <a 3007 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 3008 href="/blogs/coffee-information/latte-art" 3009 title="å塿è±4æ¥é©ç·´ç¿ï¼æ°æå¨å®¶ä¹è½æåºæ¼äº®çå" 3010 style="background-image: url('//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2Jsb2dzLzQ4MTQwL2ltYWdlM180OTRhMTRlYzM1YzY5NDVhYzdhZC5wbmciXSxbInAiLCJ0aHVtYiIsIjUwMHg1MDAiXV0.png?sha=9b51ccf252918ffa')" 3011 ></a> 3012 </div> 3013 <div class="caption qk-flex--1"> 3014 <div class="article-title"> 3015 <a 3016 href="/blogs/coffee-information/latte-art" 3017 title="å塿è±4æ¥é©ç·´ç¿ï¼æ°æå¨å®¶ä¹è½æåºæ¼äº®çå" 3018 class="qk-text--heading qk-fs--body qk-text--heading_hover" 3019 > 3020 å塿è±4æ¥é©ç·´ç¿ï¼æ°æå¨å®¶ä¹è½æåºæ¼äº®çå 3021 </a> 3022 </div> 3023 <div class="article_readmore qk-w--100"> 3024 <a href="/blogs/coffee-information/latte-art" class="qk-text--text qk-fs--body"> 3025 ç¹¼çºé±è® 3026 </a> 3027 </div> 3028 </div> 3029 </div> 3030 3031 <div class="article"> 3032 <div class="article-image qk-w--100"> 3033 <a 3034 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 3035 href="/blogs/coffee-information/green-coffee-beans" 3036 title="æéº¼å¤æ·åå¡çè±å¥½å£ï¼é4åé鵿æ¨è¦å ææ" 3037 style="background-image: url('//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2Jsb2dzLzQ4MTQwL2ltYWdlMV8zN2M1NGIxODE5MTU5ZWQ4NDVjNC5wbmciXSxbInAiLCJ0aHVtYiIsIjUwMHg1MDAiXV0.png?sha=9920c34408c16d9e')" 3038 ></a> 3039 </div> 3040 <div class="caption qk-flex--1"> 3041 <div class="article-title"> 3042 <a 3043 href="/blogs/coffee-information/green-coffee-beans" 3044 title="æéº¼å¤æ·åå¡çè±å¥½å£ï¼é4åé鵿æ¨è¦å ææ" 3045 class="qk-text--heading qk-fs--body qk-text--heading_hover" 3046 > 3047 æéº¼å¤æ·åå¡çè±å¥½å£ï¼é4åé鵿æ¨è¦å ææ 3048 </a> 3049 </div> 3050 <div class="article_readmore qk-w--100"> 3051 <a href="/blogs/coffee-information/green-coffee-beans" class="qk-text--text qk-fs--body"> 3052 ç¹¼çºé±è® 3053 </a> 3054 </div> 3055 </div> 3056 </div> 3057 3058 <div class="article"> 3059 <div class="article-image qk-w--100"> 3060 <a 3061 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 3062 href="/blogs/coffee-information/coffee-cherry" 3063 title="å塿«»æ¡æ¯ä»éº¼ï¼åå¡è±å便¯å®ç種å" 3064 style="background-image: url('//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2Jsb2dzLzQ4MTQwL2ltYWdlMV85ZmNmMzViZTNjNmVlYjczNWI2Ni5wbmciXSxbInAiLCJ0aHVtYiIsIjUwMHg1MDAiXV0.png?sha=fa2a9e202f914286')" 3065 ></a> 3066 </div> 3067 <div class="caption qk-flex--1"> 3068 <div class="article-title"> 3069 <a 3070 href="/blogs/coffee-information/coffee-cherry" 3071 title="å塿«»æ¡æ¯ä»éº¼ï¼åå¡è±å便¯å®ç種å" 3072 class="qk-text--heading qk-fs--body qk-text--heading_hover" 3073 > 3074 å塿«»æ¡æ¯ä»éº¼ï¼åå¡è±å便¯å®ç種å 3075 </a> 3076 </div> 3077 <div class="article_readmore qk-w--100"> 3078 <a href="/blogs/coffee-information/coffee-cherry" class="qk-text--text qk-fs--body"> 3079 ç¹¼çºé±è® 3080 </a> 3081 </div> 3082 </div> 3083 </div> 3084 3085 </div> 3086 3087 3088 3089 3090 3091 <div 3092 id="block_1746693105187_0" 3093 class="tab-pane fade qk-bd--default qk-bd--product_border" 3094 role="tabpanel" 3095 aria-labelledby="pills-reviews-tab" 3096 data-blog-url="/blogs/reviews" 3097 > 3098 3099 3100 <div class="article"> 3101 <div class="article-image qk-w--100"> 3102 <a 3103 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 3104 href="/blogs/reviews/20250813" 3105 title="Femobook A4Z é»åç£¨è±æ©ä½¿ç¨å¿å¾âæ³åå塿²ç ®å è»Charity Cheung" 3106 style="background-image: url('//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2Jsb2dzLzQ3OTc2L0NoYXJpdHkg5Lit5paH5a6Y57ay5Li76aCBIOipleWDueWbnumliyAoMylfMjIzN2M2ZjFmZDdjMzU4NDZjMmIucG5nIl0sWyJwIiwidGh1bWIiLCI1MDB4NTAwIl1d.png?sha=7c5944dbd6631660')" 3107 ></a> 3108 </div> 3109 <div class="caption qk-flex--1"> 3110 <div class="article-title"> 3111 <a 3112 href="/blogs/reviews/20250813" 3113 title="Femobook A4Z é»åç£¨è±æ©ä½¿ç¨å¿å¾âæ³åå塿²ç ®å è»Charity Cheung" 3114 class="qk-text--heading qk-fs--body qk-text--heading_hover" 3115 > 3116 Femobook A4Z é»åç£¨è±æ©ä½¿ç¨å¿å¾âæ³åå塿²ç ®å è»Charity Cheung 3117 </a> 3118 </div> 3119 <div class="article_readmore qk-w--100"> 3120 <a href="/blogs/reviews/20250813" class="qk-text--text qk-fs--body"> 3121 ç¹¼çºé±è® 3122 </a> 3123 </div> 3124 </div> 3125 </div> 3126 3127 <div class="article"> 3128 <div class="article-image qk-w--100"> 3129 <a 3130 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 3131 href="/blogs/reviews/182701" 3132 title="Femobook A2 é»åç£¨è±æ©æ°åéç®±âå é£åå¡ç´æå享" 3133 style="background-image: url('//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2Jsb2dzLzQ3OTc2L-S_iuWFgyDkuK3mloflrpjntrLkuLvpoIEg6KmV5YO55Zue6aWLX2QzMDg5ZjVlZWUzMzRjYzkyM2YzLnBuZyJdLFsicCIsInRodW1iIiwiNTAweDUwMCJdXQ.png?sha=c0ff4ee483175b32')" 3134 ></a> 3135 </div> 3136 <div class="caption qk-flex--1"> 3137 <div class="article-title"> 3138 <a 3139 href="/blogs/reviews/182701" 3140 title="Femobook A2 é»åç£¨è±æ©æ°åéç®±âå é£åå¡ç´æå享" 3141 class="qk-text--heading qk-fs--body qk-text--heading_hover" 3142 > 3143 Femobook A2 é»åç£¨è±æ©æ°åéç®±âå é£åå¡ç´æå享 3144 </a> 3145 </div> 3146 <div class="article_readmore qk-w--100"> 3147 <a href="/blogs/reviews/182701" class="qk-text--text qk-fs--body"> 3148 ç¹¼çºé±è® 3149 </a> 3150 </div> 3151 </div> 3152 </div> 3153 3154 <div class="article"> 3155 <div class="article-image qk-w--100"> 3156 <a 3157 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 3158 href="/blogs/reviews/177170" 3159 title="Femobook A68é»åç£¨è±æ©éç®±å享âDaddy Got Coffee" 3160 style="background-image: url('//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2Jsb2dzLzQ3OTc2L0p1c3RpbiDkuK3mloflrpjntrLkuLvpoIEg6KmV5YO55Zue6aWLICgzKV82YzA2M2UwMTQx
3160Mjk3YTIwZWUzMS5wbmciXSxbInAiLCJ0aHVtYiIsIjUwMHg1MDAiXV0.png?sha=6103fc8113a1fc35')" 3161 ></a> 3162 </div> 3163 <div class="caption qk-flex--1"> 3164 <div class="article-title"> 3165 <a 3166 href="/blogs/reviews/177170" 3167 title="Femobook A68é»åç£¨è±æ©éç®±å享âDaddy Got Coffee" 3168 class="qk-text--heading qk-fs--body qk-text--heading_hover" 3169 > 3170 Femobook A68é»åç£¨è±æ©éç®±å享âDaddy Got Coffee 3171 </a> 3172 </div> 3173 <div class="article_readmore qk-w--100"> 3174 <a href="/blogs/reviews/177170" class="qk-text--text qk-fs--body"> 3175 ç¹¼çºé±è® 3176 </a> 3177 </div> 3178 </div> 3179 </div> 3180 3181 <div class="article"> 3182 <div class="article-image qk-w--100"> 3183 <a 3184 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 3185 href="/blogs/reviews/165616" 3186 title="A5é»åç£¨è±æ©å享âThe Coffee Chronicler" 3187 style="background-image: url('//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2Jsb2dzLzQ3OTc2L0Fzc2VyIOS4reaWh-WumOe2suS4u-mggSDoqZXlg7nlm57ppYtfYzliZTFhMTRlNDNhZjgwMjYxNDkucG5nIl0sWyJwIiwidGh1bWIiLCI1MDB4NTAwIl1d.png?sha=1b14299a2a6fa286')" 3188 ></a> 3189 </div> 3190 <div class="caption qk-flex--1"> 3191 <div class="article-title"> 3192 <a 3193 href="/blogs/reviews/165616" 3194 title="A5é»åç£¨è±æ©å享âThe Coffee Chronicler" 3195 class="qk-text--heading qk-fs--body qk-text--heading_hover" 3196 > 3197 A5é»åç£¨è±æ©å享âThe Coffee Chronicler 3198 </a> 3199 </div> 3200 <div class="article_readmore qk-w--100"> 3201 <a href="/blogs/reviews/165616" class="qk-text--text qk-fs--body"> 3202 ç¹¼çºé±è® 3203 </a> 3204 </div> 3205 </div> 3206 </div> 3207 3208 <div class="article"> 3209 <div class="article-image qk-w--100"> 3210 <a 3211 class="qk-display--il_bk qk-w--100 qk-pd_t--75" 3212 href="/blogs/reviews/a68-ply" 3213 title="Femobook A68 é»åç£¨è±æ©ä½¿ç¨å¿å¾âå æ¿å¤§å塿²ç ®å è»Ply" 3214 style="background-image: url('//cdn-general.cybassets.com')" 3215 ></a> 3216 </div> 3217 <div class="caption qk-flex--1"> 3218 <div class="article-title"> 3219 <a 3220 href="/blogs/reviews/a68-ply" 3221 title="Femobook A68 é»åç£¨è±æ©ä½¿ç¨å¿å¾âå æ¿å¤§å塿²ç ®å è»Ply" 3222 class="qk-text--heading qk-fs--body qk-text--heading_hover" 3223 > 3224 Femobook A68 é»åç£¨è±æ©ä½¿ç¨å¿å¾âå æ¿å¤§å塿²ç ®å è»Ply 3225 </a> 3226 </div> 3227 <div class="article_readmore qk-w--100"> 3228 <a href="/blogs/reviews/a68-ply" class="qk-text--text qk-fs--body"> 3229 ç¹¼çºé±è® 3230 </a> 3231 </div> 3232 </div> 3233 </div> 3234 3235 </div> 3236 3237 3238 </div> 3239 <div id="view-more-1746692951347_3"> 3240 <a 3241 href="#" 3242 class="btn-seemore qk-text--center qk-text--heading qk-text--accent_hover qk-fw--500 qk-display--bk" 3243 > 3244 æ¥çæ´å¤ 3245 </a> 3246 </div> 3247 </div> 3248 </div> 3249</section>
3250<script> 3251 $(document).ready(function () { 3252 const sectionId = '1746692951347_3'; 3253 3254 function updateViewMoreLink() { 3255 const blogUrl = $('#' + sectionId + ' .tab-pane.active').data('blog-url'); 3256 $('#view-more-' + sectionId + ' a').attr('href', blogUrl || '#'); 3257 } 3258 3259 $('#' + sectionId + ' a[data-toggle="pill"]').on('shown.bs.tab', updateViewMoreLink); 3260 3261 $('#form-blogs-' + sectionId).on('change', function (e) { 3262 $('#' + sectionId + ' a[href="' + $(this).val() + '"]').tab('show'); 3263 }); 3264 3265 var firstOption = $('#' + sectionId + ' .form-blogs').find('option')[0]; 3266 if (!firstOption) { 3267 return; 3268 } 3269 $('#' + sectionId + ' ' + firstOption.value + '_tab').addClass('show active'); 3270 $('#' + sectionId + ' ' + firstOption.value).addClass('show active'); 3271 3272 updateViewMoreLink(); 3273 }); 3274</script>
3274 3275 3276 3277 3278 <!-- å å ¥è³¼ç©è» --> 3279 3280 <!-- cyb_snippet new_addcart_modal start --> 3281<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/vue_product_modal-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 3282 3283<div id="new-addcart-modal" class="container"> 3284 <transition name="modal"> 3285 <product-modal 3286 v-if="showProductModal" 3287 :only-description="onlyDescription" 3288 :product-url="popProductUrl" 3289 :color="color" 3290 :is-collection="isCollection" 3291 :is-show-description="isShowDescription" 3292 :is-quick-buy="isQuickBuy" 3293 :selected-variant-id="selectedVariantId" 3294 :categories="categories" 3295 :call-back="checkoutAddToCartCallback" 3296 ref="productModal" 3297 > 3298 </product-modal> 3299 </transition> 3300</div> 3301 3302<!-- cyb_snippet components/product_modal/product_modal start -->
3303<script type="text/x-template" id="product-modal"> 3304 <div class="modal-mask qk-h--100 qk-w--100 qk-l--0 qk-t--0 qk-pos--fixed" @click="closeModal"> 3305 <div class="modal-content qk-bd--none qk-center qk-bg--theme_bg" :class="{'only-description': onlyDescription}" @click.stop> 3306 <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> 3307 <div class="modal-body custom-scrollbar qk-w--100"> 3308 <div v-if="!isLoading"> 3309 <div id="checkout-product" class="row"> 3310 <div class="col-sm-6 col-xs-4"> 3311 <photo-swiper 3312 :mediaItems="swiperItems" 3313 :current-image-index="currentImageIndex" 3314 :current-variant="currentVariant" 3315 :video-after-image="videoAfterImage" 3316 ></photo-swiper> 3317 </div> 3318 <div class="col-sm-6 col-xs-8"> 3319 <h4 class="qk-fs--hd2 qk-fw--bold qk-text--heading qk-mg--0" v-html="product.title"></h4> 3320 <p class="product_brief qk-text--text qk-fs--body" v-html="product.brief"></p> 3321 <p class="product_slogan qk-text--heading qk-fs--body" v-html="product.slogan"></p> 3322 <div class="swiper_thumbnails" style="margin-bottom: 10px;"> 3323 <swiper-thumbnails 3324 :mediaItems="swiperItems" 3325 :current-image-index="currentImageIndex" 3326 :title="product.title" 3327 @update-current-image-index="(thumbnailIndex) => { currentImageIndex = thumbnailIndex }" 3328 ></swiper-thumbnails> 3329 </div> 3330 3331 <div v-if="!hidePrice" style="margin-bottom: 10px;"> 3332 3333 <span class="price-title qk-fs--body qk-fw--500 qk-text--heading">${ priceTitleTag }</span> 3334 3335 <div> 3336 <span v-html="variantPrice" class="variant-price qk-fs--hd1 qk-fw--bold" :class="[isDiscountPrice ? 'qk-text--discount_price' : 'qk-text--price']"></span> 3337 <del v-html="marketPrice" class="variant-del-price qk-fs--body qk-fw--500 qk-text--text"></del> 3338 </div> 3339 </div> 3340 <div v-if="!onlyDescription" class="controls"> 3341 <div class="variant-quantity qk-display--flex qk-flex--column"> 3342 <div v-if="hasVariant" class="product-variant-options"> 3343 <div v-for="(option, index) in optionInfo" class="product-variant-option" :class="{'product-variant-option--hidden': shouldHideSingleVariantOptions}"> 3344 <div class="advance variant-select-option" v-if="styledShopMenu==='dropDownType'"> 3345 3346 <label>${option.name}</label> 3347 <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> 3348 <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}`)"> 3349 <option value="null" class="select_option-hidden">è«é¸æ${option.name}</option> 3350 <option :style="{ visibility : isMobileSize ? 'hidden' : 'visible' }" v-for="(types) in option.types" :disabled="!types.isValid" :value="types.name">${types.name}</option> 3351 </select> 3352 <span class="select_placeholder-color" v-if="currentOption[`option${index + 1}`] === null" v-show="isMobileSize" @click="onClickSelectModal(option,`option${index + 1}`)">è«é¸æ${option.name}</span>
3353 <span v-else :value="currentOption[`option${index + 1}`]" v-show="isMobileSize" @click="onClickSelectModal(option,`option${index + 1}`)" v-html="currentOption[`option${index + 1}`]"></span> 3354 </div> 3355 <advance-option v-else :option-key="'option' + (index + 1)" :option="option" :current-option="currentOption" :toggle-current-option="toggleCurrentOption"/> 3356 </div> 3357 </div> 3358 <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)"> 3359 <div class="list_block custom-scrollbar qk-of_x--hidden"> 3360 <h4 class="qk-text--heading qk-fs--body">æ¤åååèçåªæ æ´»å 3361 </h4> 3362 <template v-if="displayPeriodicSalesPages"> 3363 <div v-for="salesPage in product.showableSalesPages" class="discount-list"> 3364 <span class="discount-label qk-fs--breadcrumb qk-bd--default qk-bd--accent qk-bg--white qk-display--il_bk qk-text--accent">宿å®é¡ 3365 </span> 3366 <a class="discount-title qk-text--accent qk-fs--body" :href="salesPage.path">${ salesPage.title }</a> 3367 </div> 3368 </template> 3369 <template v-for="discounts in discountsList"> 3370 <div v-for="discount in discounts" class="discount-list"> 3371 <a v-if="discount.url" :href="discount.url" class="discount-title qk-text--accent qk-fs--body"> 3372 ${ discount.title } 3373 </a> 3374 <span v-else class="discount-title qk-text--accent qk-fs--body">${ discount.title }</span> 3375 </div> 3376 </template> 3377 </div> 3378 </div> 3379 <div v-if="showPurchaseControls" class="product-quantity qk-bd--product_border" v-show="!isMobileSize"> 3380 <div class="btn-group qk-w--100" role="group" aria-label="First group"> 3381 <button class="btn add-down qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityDecrease">ï¼</button> 3382 <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"> 3383 <button class="btn add-up qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityIncrease">ï¼</button> 3384 </div> 3385 </div> 3386 </div> 3387 <div v-if="showPurchaseControls" class="add-button-wrapper"> 3388 <!-- cyb_snippet _product_modal_button start --> 3389<button 3390 class="btn btn-default add-button qk-cursor--pointer qk-w--100 qk-btn--primary" 3391 :class="{selected: isChoose, adding: adding || isHideAddCartBtn, secondary: isSecondaryBtn, 'qk-btn--disabled': isHideAddCartBtn && isNewNnCollection, 'qk-bd--none': isHideAddCartBtn && isNewNnCollection}" 3392 type="button" 3393 :disabled="isHideAddCartBtn" 3394 @click="addProduct" 3395> 3396 ${ addCartText } 3397</button> 3398 3399<!-- cyb_snippet _product_modal_button end --> 3400 </div> 3401 <div class="product-others qk-fs--body"> 3402 <span class="product-love"> 3403 <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"> 3404 <svg 3405 width="15" 3406 height="15"
3407 viewBox="0 0 24 24" 3408 fill="none" 3409 xmlns="http://www.w3.org/2000/svg"> 3410 <path 3411 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" 3412 stroke="currentColor" 3413 stroke-width="2" 3414 stroke-linecap="round" 3415 stroke-linejoin="round" /> 3416 </svg> 3417 å å ¥ææ 3418 </a> 3419 </span> 3420 <span class="product_sold qk-text--text" v-if="false"> 3421 <span>å·²é·å®ï¼ 3422 ${ product.totalSold } 3423 ä»¶ 3424 </span> 3425 </span> 3426 <span class="product_bonus qk-text--text" v-if="false"> 3427 æ¤åå ã æé« ãå¯ä»¥ææµç´ å© 3428 <span class="val qk-fw--600 qk-fs--hd2" v-if="currentVariant">${currentVariant.maxUsableBonus}</span> 3429 <span class="val qk-fw--600 qk-fs--hd2" v-else>${maxUsableBonus}</span> 3430 é» 3431 <span v-html="bonusToPrice"/> 3432 </span> 3433 </div> 3434 <div class='product_limit_buy qk-fs--body' v-show="product.minBuy > 0 || product.limitBuy > 0"> 3435 ${limitBuyText} 3436 </div> 3437 </div> 3438 </div> 3439 </div> 3440 <div v-if="isShowDescription" class="row"> 3441 <div class="col-sm-12"> 3442 3443 <div v-if="product.bodyHtml"> 3444 <h5 class="section-heading qk-bd--heading qk-fs--hd2 qk-text--heading"> 3445 ååä»ç´¹ 3446 </h5> 3447 <div class="ckeditor"> 3448 <div v-html="product.bodyHtml"></div> 3449 </div> 3450 </div> 3451 3452 3453 <div v-if="otherDescriptions['product_description_section_spec']"> 3454 <h5 class="section-heading qk-bd--heading qk-fs--hd2 qk-text--heading"> 3455 è¦æ ¼èªªæ 3456 </h5> 3457 <div class="ckeditor"> 3458 <div v-html="otherDescriptions['product_description_section_spec']"></div> 3459 </div> 3460 </div> 3461 3462 3463 <div v-if="otherDescriptions['product_description_section_shipping']"> 3464 <h5 class="section-heading qk-bd--heading qk-fs--hd2 qk-text--heading"> 3465 ééæ¹å¼ 3466 </h5> 3467 <div class="ckeditor"> 3468 <div v-html="otherDescriptions['product_description_section_shipping']"></div> 3469 </div> 3470 </div> 3471 3472 </div> 3473 </div> 3474 </div> 3475 <div v-show="isLoading" style="text-align: center; padding-bottom: 20px;"> 3476 <i class="fas fa-spinner fa-spin fa-fw fa-2x"></i> 3477 </div> 3478 </div> 3479 <!-- cyb_snippet _product_modal_button_mobile start --> 3480 <div 3481 v-if="showPurchaseControls" 3482 v-show="isMobileSize" 3483 class="mobile_footer" 3484 :class="{'mobile_footer-z': variantSize > 1 }"> 3485 <div class="product-quantity"> 3486 <div class="btn-group qk-w--100" role="group" aria-label="First group"> 3487 <button class="btn add-down qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityDecrease">ï¼</button> 3488 <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"> 3489 <button class="btn add-up qk-bd--default qk-bd--border qk-text--text" type="button" @click="quantityIncrease">ï¼</button> 3490 </div> 3491 </div> 3492 <button 3493 v-if="!isLoading && !onlyDescription" 3494 class="btn btn-mobile add-button qk-btn qk-btn--primary qk-btn--lg" 3495 :class="{selected: isChoose, adding: adding || isHideAddCartBtn, 'qk-btn--disabled': isHideAddCartBtn && isNewNnCollection, 'qk-bd--none': isHideAddCartBtn && isNewNnCollection}" 3496 type="button" 3497 :disabled="isHideAddCartBtn" 3498 @click="addProduct"> 3499 ${ addCartText } 3500 </button> 3501</div> 3502<div 3503 class="mobile-modal" 3504 :class="{ 'modal-open': isModalSelectShow && isMobileSize }"> 3505 <div class="mobile_modal-content"> 3506 <div class="modal_close-button"> 3507 <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> 3508 </div> 3509 3510 <p>è«é¸æ${modalOption.name}</p> 3511 <div class="modal_select-templete qk-display--flex qk-of_y--auto qk-w--100"> 3512 <div class="options-container"> 3513 <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> 3514 </div> 3515 </div> 3516 <div v-if="variantSize > 1" class="modal_select_footer qk-display--flex"> 3517 <button type="button" class="modal_cancel qk-bd--default qk-btn--secondary qk-bd--button qk-text--button" @click="onChangeModalSelect(false,false)">åæ¶</button> 3518 <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> 3519 </div> 3520 </div> 3521</div> 3522 3523<!-- cyb_snippet _product_modal_button_mobile end --> 3524 </div> 3525 </div> 3526</script>
3526 3527 3528<!-- cyb_snippet components/product_modal/color_image_option start -->
3529<script id="color-image-option" type="text/x-template"> 3530 <div class="color-image qk-display--flex qk-flex--wrap qk-align--center"> 3531 <div class="title">é¡è²</div> 3532 <div 3533 v-for="(imageColor, index) in imageColors" 3534 :class="{ 3535 'focus': !currentOption[optionKey] === option.types[index].name && currentImageIndex === index, 3536 'selected': currentOption[optionKey] === option.types[index].name, 3537 'disabled': !option.types[index].isValid 3538 }" 3539 class="image-option img-flex qk-bd--default qk-bd--transparent qk-display--block qk-pos--rel" 3540 @mouseleave="setCurrentImageIndex(index)" 3541 @mouseover="getOptionImageIndex(index)" 3542 @click="setOption(optionKey, index)" 3543 > 3544 <img v-if="imageColor !== 'noColorImage'" :src="imageColor.large" alt="image"> 3545 <img v-else src="/assets/no-image-large.png" alt="image"> 3546 </div> 3547 </div> 3548</script>
3548 3549
3550<script type="text/javascript"> 3551 $(document).ready(function() { 3552 window.themeHelper.productModalComponents['color-image-option'] = { 3553 template: '#color-image-option', 3554 delimiters: ['${', '}'], 3555 props: { 3556 optionKey: String, 3557 option: Object, 3558 product: Object, 3559 imageColors: Array, 3560 isChoose: Boolean, 3561 currentImageIndex: Number, 3562 setCurrentImageIndex: Function, 3563 getOptionImageIndex: Function, 3564 currentOption: Object, 3565 toggleCurrentOption: Function, 3566 }, 3567 methods: { 3568 setOption: function(optionKey, index) { 3569 const type = this.option.types[index]; 3570 if(type.isValid){ 3571 this.toggleCurrentOption(optionKey, type.name); 3572 } 3573 } 3574 } 3575 }; 3576 }); 3577</script>
3577 3578 3579<!-- cyb_snippet components/product_modal/color_image_option end --> 3580<!-- cyb_snippet components/product_modal/advance_option start -->
3581<script id="advance-option" type="text/x-template"> 3582 <div class="advance"> 3583 <div class="title qk-text--heading qk-fs--body">${option.name}</div> 3584 <div 3585 v-for="type in option.types" 3586 :class="{ 3587 'selected': currentOption[optionKey] === type.name, 3588 'disabled': !type.isValid 3589 }" 3590 @click="setOption(optionKey, type)" 3591 class="option qk-btn qk-bd--button qk-text--button qk-pd_x--1" 3592 > 3593 ${type.name} 3594 </div> 3595 </div> 3596</script>
3596 3597
3598<script type="text/javascript"> 3599 $(document).ready(function() { 3600 window.themeHelper.productModalComponents['advance-option'] = { 3601 template: '#advance-option', 3602 delimiters: ['${', '}'], 3603 props: { 3604 optionKey: String, 3605 option: Object, 3606 product: Object, 3607 currentOption: Object, 3608 toggleCurrentOption: Function, 3609 }, 3610 methods: { 3611 setOption: function(optionKey, type) { 3612 if(type.isValid){ 3613 this.toggleCurrentOption(optionKey, type.name); 3614 } 3615 } 3616 } 3617 }; 3618 }); 3619</script>
3619 3620 3621<!-- cyb_snippet components/product_modal/advance_option end --> 3622 3623<!-- cyb_snippet components/product_modal/photo_swiper start --> 3624 3625
3626<script id="photo-swiper" type="text/x-template"> 3627 <div ref="photoSwiper" id="photo_swiper" class="photos swiper swiper-container"> 3628 <div class="swiper-wrapper"> 3629 <template v-if="hasImage"> 3630 <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"> 3631 <video-player v-if="item.url" :video="item" 3632 :video-poster=" !!mediaItems[firstImageIndex] ? mediaItems[firstImageIndex].large : '//cdn-general.cybassets.com/img_loading.svg' " 3633 > 3634 </video-player> 3635 <img v-else class="qk-center" :src="item.large" alt="image"/> 3636 </div> 3637 </template> 3638 <div v-else class="photo swiper-slide qk-align--center qk-display--flex qk-justify--center qk-vert--text_top default_scale"> 3639 <img src="//cdn-general.cybassets.com/assets/no-image-large-2b95ea56c455be9ce081d81c14eded925df68bf8fa38809e46f6af8fcdd5f9bc.png" alt="image" /> 3640 </div> 3641 </div> 3642 <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> 3643 <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> 3644 3645 <div class="photo-pagination qk-bd--default qk-bd--body qk-text--center qk-text--body qk-fs--breadcrumb qk-visible-sm"> 3646 <span class="current-index qk-text--default_dark">${currentImageIndex +1 }</span><span class="pagination-slash">/</span> 3647 <span>${mediaItems.length}</span> 3648 </div> 3649 </div> 3650</script>
3650 3651
3652<script> 3653 $(document).ready(function () { 3654 window.themeHelper.productModalComponents['photo-swiper'] = { 3655 template: '#photo-swiper', 3656 delimiters: ['${', '}'], 3657 props: { 3658 mediaItems: Array, 3659 currentImageIndex: Number, 3660 currentVariant: Object, 3661 videoAfterImage: Boolean, 3662 }, 3663 data: function () { 3664 return { 3665 swiper: {}, 3666 swiperOption: { 3667 preventInteractionOnTransition: true, 3668 rewind: true, 3669 spaceBetween: 5, 3670 slidesPerView: 1, 3671 navigation: { 3672 nextEl: '.photo-next', 3673 prevEl: '.photo-prev' 3674 } 3675 }, 3676 showBtn: true, 3677 isVariantReposition: false, 3678 } 3679 }, 3680 mounted: function() { 3681 this.swiper = new Swiper('#photo_swiper', this.swiperOption); 3682 this.swiper.on('slideChange', this.slideOnChange); 3683 }, 3684 watch: { 3685 currentImageIndex: function() { 3686 this.slideToIndex(); 3687 }, 3688 currentVariant: { 3689 immediate: true, 3690 handler: function() { 3691 this.showBtn = this.mediaItems.length > 1; 3692 this.isVariantReposition = true; 3693 this.$nextTick(() => { 3694 if (this.swiper) { 3695 this.swiper.update(); 3696 this.swiper.slideToLoop(this.initialItemIndex) 3697 this.slideOnChange(); 3698 this.isVariantReposition = false; 3699 } 3700 }); 3701 }, 3702 }, 3703 }, 3704 computed: { 3705 hasImage: function() { 3706 return this.mediaItems.length > 0; 3707 }, 3708 hasVideo: function() { 3709 return this.mediaItems.findIndex(item => !!item.url) !== -1; 3710 }, 3711 variantPhotos: function() { 3712 if (this.currentVariant?.photos?.length) { 3713 return this.currentVariant.photos; 3714 } else { 3715 return null; 3716 } 3717 }, 3718 initialItemIndex: function() { 3719 if (this.hasVideo && !this.videoAfterImage) { 3720 // Focus on photo if "variant with photos" selected, video otherwise 3721 return this.variantPhotos?.length ? 1 : 0; 3722 } else { 3723 // Focus on first photo 3724 return 0; 3725 } 3726 }, 3727 }, 3728 methods: { 3729 slideOnChange: function() { 3730 themeHelper.EventBus.$emit('photoOnChange', this.swiper.realIndex, this.isVariantReposition); 3731 }, 3732 slideToIndex: function() { 3733 if(this.swiper.realIndex != this.currentImageIndex) { 3734 this.swiper.slideToLoop(this.currentImageIndex); 3735 this.swiper.update(); 3736 } 3737 }, 3738 } 3739 }; 3740 }); 3741</script>
3741 3742 3743 3744<!-- cyb_snippet components/product_modal/video_player start -->
3745<script id="video-player" type="text/x-template"> 3746 <div class="videoPlayer__wrapper" @click="handleVideoClick"> 3747 <video 3748 id='modal-video' 3749 class="videoPlayer__video qk-cursor--pointer qk-center" 3750 :poster="videoPoster" 3751 loop defaultMuted muted playsinline webkit-playsinline autoplay 3752 > 3753 <source :src="videoUrl" type="video/mp4"> 3754 <p>ä½ çç覽å¨ä¸æ¯æ´ HTML 5 video</p> 3755 </video> 3756 <button id="modal-video-button" class="videoPlayer__pauseButton"></button> 3757 </div> 3758</script>
3758 3759
3760<script> 3761 $(document).ready(function () { 3762 window.themeHelper.productModalComponents['video-player'] = { 3763 template: '#video-player', 3764 delimiters: ['${', '}'], 3765 props: { 3766 video: Object, 3767 videoPoster: String, 3768 }, 3769 data: function() { 3770 return { 3771 videoElement: null, 3772 buttonElement: null, 3773 }; 3774 }, 3775 mounted: function() { 3776 this.videoElement = $('#modal-video')[0]; 3777 this.buttonElement = $('#modal-video-button'); 3778 this.setVideoVolumeZero(); 3779 this.videoElement.addEventListener('canplay', (event) => { 3780 this.sendGtag('play'); 3781 }, { once: true }); 3782 }, 3783 computed: { 3784 videoUrl: function() { 3785 return this.video.url; 3786 } 3787 }, 3788 methods: { 3789 sendGtag: function(action) { 3790 window.productVideoView && productVideoView(action); 3791 }, 3792 setVideoVolumeZero: function() { 3793 this.videoElement.volume = 0; 3794 }, 3795 handleVideoClick: function() { 3796 if (this.videoElement.paused){ 3797 this.videoElement.play(); 3798 this.sendGtag('play'); 3799 } else { 3800 this.videoElement.pause(); 3801 this.sendGtag('paused'); 3802 } 3803 this.handleVideoButtonDisplay(this.buttonElement, this.videoElement); 3804 }, 3805 handleVideoButtonDisplay: function(button, video) { 3806 button.toggleClass('videoPlayer__playButton', video.paused); 3807 button.toggleClass('videoPlayer__pauseButton', !video.paused); 3808 }, 3809 } 3810 }; 3811 }); 3812</script>
3812 3813 3814<!-- cyb_snippet components/product_modal/video_player end --> 3815 3816<!-- cyb_snippet components/product_modal/photo_swiper end --> 3817<!-- cyb_snippet components/product_modal/swiper_thumbnails start -->
3818<script id="swiper-thumbnails" type="text/x-template"> 3819 <div 3820 v-for="(thumbnail, index) in allThumbnails" 3821 :key="index" 3822 class="product-thumbnail img-flex qk-of--hidden qk-display--il_bk qk-cursor--pointer qk-bd--default qk-bd--transparent default_scale" 3823 :class="{ focus: index === currentImageIndex }" 3824 @mouseover="updateCurrentImageIndex(index)" 3825 > 3826 <template v-if="thumbnail.isVideo"> 3827 <video class="qk-w--100 qk-h--100" :src="thumbnail.url" defaultMuted playsinline></video> 3828 <button class="videoPlayer__playButton"></button> 3829 </template> 3830 <img v-else :src="thumbnail.url" :alt="title" class="qk-w--100 qk-h--100"> 3831 </div> 3832</script>
3832 3833
3834<script type="text/javascript"> 3835 $(document).ready(function () { 3836 window.themeHelper.productModalComponents['swiper-thumbnails'] = { 3837 template: '#swiper-thumbnails', 3838 delimiters: ['${', '}'], 3839 props: { 3840 title: String, 3841 mediaItems: Array, 3842 currentImageIndex: Number, 3843 }, 3844 emits: ['updateCurrentImageIndex'], 3845 methods: { 3846 updateCurrentImageIndex: function(thumbnailIndex) { 3847 if (thumbnailIndex !== this.currentImageIndex ) { 3848 this.$emit('updateCurrentImageIndex', thumbnailIndex); 3849 } 3850 }, 3851 }, 3852 mounted() { 3853 // can be removed after replacing video thumbnail with img 3854 const thumbnailVideo = $('.product-thumbnail video')[0]; 3855 if (!!thumbnailVideo) { 3856 thumbnailVideo.volume = 0; 3857 const promise = thumbnailVideo.play(); 3858 promise.then(() => { 3859 thumbnailVideo.pause(); 3860 }) 3861 } 3862 }, 3863 computed: { 3864 allThumbnails: function() { 3865 return this.mediaItems.map(item => ({ 3866 isVideo: !!item.url, 3867 url: item.url || item.medium 3868 })); 3869 }, 3870 }, 3871 watch: { 3872 allThumbnails: { 3873 handler(){ 3874 this.updateCurrentImageIndex(this.currentImageIndex); 3875 } 3876 } 3877 } 3878 }; 3879 }); 3880</script>
3880 3881 3882<!-- cyb_snippet components/product_modal/swiper_thumbnails end --> 3883 3884 3885<!-- cyb_snippet _product_modal_js start -->
3886<script type="text/javascript"> 3887 $(document).ready(function() { 3888 var categoryLevels = []; 3889 var productCategoryLevels = null; 3890 var pageMainProductId = null; 3891 window.themeHelper.productModalComponents['product-modal'] = { 3892 template: '#product-modal', 3893 delimiters: [ 3894 '${', '}' 3895 ], 3896 props: { 3897 onlyDescription: Boolean, 3898 cartItems: Array, 3899 groupId: Number, 3900 productUrl: String, 3901 color: String, // unused 3902 collectionId: Number, 3903 categories: Array, 3904 // 夿·æ¯å¦æè²ç¥¨å±é 3905 isCollection: { 3906 type: Boolean, 3907 required: false, 3908 default: false, 3909 }, 3910 // 夿·å å ¥è³¼ç©è»çæ¹æ³ 3911 isNnCollection: Boolean, 3912 isNewNnCollection: Boolean, 3913 isBundleDiscount: Boolean, 3914 3915 // 夿·æ¯å¦é¡¯ç¤ºååæè¿° 3916 isShowDescription: { 3917 type: Boolean, 3918 default: true 3919 }, 3920 3921 // 夿·æ¯å¦çºç«å³è³¼è²· 3922 isQuickBuy: { 3923 type: Boolean, 3924 default: false 3925 }, 3926 selectedVariantId: Number, 3927 callBack: Function 3928 }, 3929 data: function() { 3930 return { 3931 styledShopMenu: "buttonType", 3932 selectOption: '', 3933 selectCurrentStr:'', 3934 isModalSelectShow: false, 3935 modalOption: {}, 3936 adding: false, 3937 currentImageIndex: 0, 3938 _navState: { variantId: null, photoIndex: 0 }, 3939 currentOption: { 3940 option1: null, 3941 option2: null, 3942 option3: null 3943 }, 3944 currentVariant: null, 3945 variantNotifications: null, 3946 currentVariantIndex: null, 3947 product: {}, 3948 isChoose: false, 3949 isLoading: true, 3950 isEmptyClickable: liquidHelper.isEmptyClickable, 3951 quantity: 1, 3952 maxUsableBonus: 0, 3953 isDiscountPrice: false, 3954 displayProductDiscountsList: true, 3955 displayPeriodicSalesPages:false, 3956 discountsList: null, 3957 hasVideoPlugin: true, 3958 videoDisplayLocation: "before", 3959 hasStockNotificationPlugin: true, 3960 isDisplayPriceRange: null, 3961 hasVariantPriceRangePlugin: true, 3962 hasHideSingleVariantOptionsPlugin: false, 3963 } 3964 }, 3965 mounted: function() { 3966 this.getProductDetail(); 3967 $('.custom-scrollbar').addCustomScrollbar(); 3968 themeHelper.EventBus.$on('photoOnChange', this.photoOnChange); 3969 }, 3970 beforeUnmount: function() { 3971 themeHelper.EventBus.$off('photoOnChange', this.photoOnChange); 3972 }, 3973 computed: { 3974 photoUrls: function() { 3975 return this.product.photoUrls.length > 0 3976 ? this.product.photoUrls 3977 : [this.featuredImage]; 3978 }, 3979 photoUrlsMap: function() { 3980 var map = {}; 3981 var urls = this.product.photoUrls; 3982 this.product.photos.forEach(function(photo, index) { 3983 map[photo.photo.id] = urls[index]; 3984 }); 3985 3986 return map; 3987 }, 3988 featuredImage: function() { 3989 return this.product.featuredImage; 3990 }, 3991 swiperPhotos: function() { 3992 if (!this.photoUrls.length) { 3993 return [this.featuredImage]; 3994 } 3995 3996 if (this.currentVariant && this.currentVariant.photos.length) { 3997 var map = this.photoUrlsMap; 3998 return this.currentVariant.photos.map(function(p) { 3999 return map[p.id]; 4000 }); 4001 } 4002 4003 return this.photoUrls; 4004 }, 4005 productVideo: function() { 4006 return this.product.video; 4007 }, 4008 videoAfterImage: function() { 4009 return this.videoDisplayLocation === 'after'; 4010 }, 4011 swiperItems: function() { 4012 const media = [...this.swiperPhotos]; 4013 if ( 4014 this.hasVideoPlugin && this.productVideo.url 4015 ) { 4016 this.videoAfterImage 4017 ? media.push(this.productVideo) 4018 : media.unshift(this.productVideo); 4019 } 4020 return media; 4021 }, 4022 firstImageIndex: function() { 4023 return this.hasVideoPlugin && this.productVideo.url && !this.videoAfterImage 4024 ? 1 4025 : 0 4026 }, 4027 otherDescriptions: function() { 4028 var descriptions = {}; 4029 this.product.otherDescriptions.forEach(function(od) { 4030 descriptions[od.settingName] = od.bodyHtml; 4031 }) 4032 return descriptions 4033 }, 4034 variantOptions: function() { 4035 return themeHelper.variantOptions(this.product); 4036 }, 4037 firstValidVariant: function() { 4038 var self = this; 4039 var result = this.product.variants.find(function(variant) { 4040 // å¢å product modal è¯çµ¡åºå®¶ property 4041 variant.imgUrl = ""; 4042 variant.productTitle = ""; 4043 4044 return variant.available; 4045 }); 4046 4047 return result 4048 ? result 4049 : null; 4050 }, 4051 selectedValidVariant: function() { 4052 var self = this; 4053 var result = this.variantOptions.find(function(variant) { 4054 return variant.id === self.selectedVariantId; 4055 }); 4056 4057 return result 4058 ? result 4059 : null; 4060 }, 4061 totalInventoryQuantity: function(product) { 4062 return themeHelper.totalInventoryQuantity(this.product) 4063 }, 4064 addCartText: function() { 4065 var variants = parseInt(""); 4066 let isRegisteredNotification = this.currentVariant && this.variantNotifications && this.variantNotifications[this.currentVariant.id] 4067 if (this.isNnCollection || this.isBundleDiscount) { 4068 if (this.currentVariant && !themeHelper.variantIsAvailable(this.currentVariant)) { 4069 if (this.currentVariant.inventoryPolicy === 'continue') { 4070 if (this.isNnCollection) { 4071 return this.isChoose && !this.isNewNnCollection 4072 ? 'å·²é è³¼' 4073 : 'é è³¼åå'; 4074 } 4075 } else { 4076 return 'å·²å®å®'; 4077 } 4078 } 4079 if (this.totalInventoryQuantity === 0) { 4080 return 'å·²å®å®'; 4081 } 4082 return this.isChoose && !this.isNewNnCollection 4083 ? 'å·²é¸è³¼' 4084 : 'é¸è³¼'; 4085 } else { 4086 if (this.isQuickBuy) { 4087 if (this.currentVariant && !themeHelper.variantIsAvailable(this.currentVariant)) { 4088 if (this.currentVariant.inventoryPolicy === 'continue'){ 4089 return 'ç«å³é è³¼' 4090 } 4091 return this.hasStockNotificationPlugin 4092 ? (isRegisteredNotification 4093 ? 'å·²ç»è¨è£è²¨éç¥' 4094 : 'å·²å®å®ï¼è²¨å°éç¥æ') 4095 : 'è¯çµ¡åºå®¶' 4096 } 4097 return 'ç«å³è³¼è²·'; 4098 } else { 4099 if (this.currentVariant) { 4100 if (!themeHelper.variantIsAvailable(this.currentVariant)) { 4101 if (this.currentVariant.inventoryPolicy === 'continue'){ 4102 return 'é è³¼åå' 4103 } 4104 return this.hasStockNotificationPlugin 4105 ? (isRegisteredNotification 4106 ? 'å·²ç»è¨è£è²¨éç¥' 4107 : 'å·²å®å®ï¼è²¨å°éç¥æ') 4108 : 'è¯çµ¡åºå®¶' 4109 } 4110 } else { 4111 if (this.totalInventoryQuantity === 0) { 4112 return 'å·²å®å®'; 4113 } 4114 } 4115 return 'å å ¥è³¼ç©è»'; 4116 } 4117 } 4118 }, 4119 cartItem: function() { 4120 if (!this.currentVariant) { 4121 return null 4122 } 4123 return { 4124 id: this.currentVariant.id, 4125 groupId: this.groupId, 4126 productId: this.product.id, 4127 title: this.product.title, 4128 photo: this.currentVariant.imgUrl || this.featuredImage.large, 4129 quantity: this.quantity, 4130 price: this.currentVariant.price, 4131 variant: this.currentVariant, 4132 product: this.product 4133 } 4134 }, 4135 options: function() { 4136 return this.product.options; 4137 }, 4138 optionTypes: function() { 4139 4140 // å æ ¹æè¨å®çvariantsä¾æåº 4141 var self = this; 4142 4143 var option1 = []; 4144 var option2 = []; 4145 var option3 = [];
4146 this.product.variants.forEach(function(item) { 4147 if (item.option1 !== null) { 4148 option1.push(item.option1); 4149 } 4150 if (item.option2 !== null) { 4151 option2.push(item.option2); 4152 } 4153 if (item.option3 !== null) { 4154 option3.push(item.option3); 4155 } 4156 }) 4157 var filteredOptionTypes = []; 4158 this.product.optionTypes.forEach(function(item, index) { 4159 filteredOptionTypes.push(self.getUniqueVariant(eval('option' + ( 4160 index + 1 4161 ))).join(',')); 4162 }); 4163 return filteredOptionTypes; 4164 }, 4165 optionInfo: function() { 4166 var self = this; 4167 4168 return self.options.map(function(option, index) { 4169 return { 4170 name: option, 4171 types: self.getOptions('option' + ( 4172 index + 1 4173 ), self.optionTypes[index].split(',')) 4174 } 4175 }); 4176 }, 4177 hasVariant: function() { 4178 return this.product.options.length > 0; 4179 }, 4180 shouldHideSingleVariantOptions: function() { 4181 return this.hasHideSingleVariantOptionsPlugin && 4182 this.product.variants && 4183 this.product.variants.length <= 1; 4184 }, 4185 variantSize: function() { 4186 if(this.product.options){ 4187 return this.product.options.length; 4188 } 4189 }, 4190 firstVariant: function() { 4191 return this.product.variants[0]; 4192 }, 4193 firstCheapestVariant: function() { 4194 return this.product.variants.find((v)=> (v.price === this.priceStats.minPrice)); 4195 }, 4196 priceStats: function() { 4197 return this.product.variants.reduce(function(acc, variant) { 4198 return { 4199 minPrice: variant.price < acc.minPrice ? variant.price : acc.minPrice, 4200 maxPrice: variant.price > acc.maxPrice ? variant.price : acc.maxPrice, 4201 }; 4202 }, { 4203 minPrice: this.firstVariant.price, 4204 maxPrice: this.firstVariant.price, 4205 }); 4206 }, 4207 hidePrice: function() { 4208 return this.product && this.product.hidePrice === true; 4209 }, 4210 salesModePurchasable: function() { 4211 return !(this.product && this.product.salesModePurchasable === false); 4212 }, 4213 // - 任鏿æ£ï¼ç´ é ç¶ ï¼ã鏿ãåªæ¯å é²è©¦ç®æ¸ å®ï¼ä¸æç´æ¥ä¸å®ï¼æ åªæèå¹åå 4214 // - å ¶ä»æ å¢ï¼ååé ã群çµé ãå¤å±¤ç´åé¡ãæå°ãé¦é åååå¡ï¼ï¼ä¸å¯è³¼è²·ï¼å«èå¹ï¼å°±æ´çµæ¶æ 4215 showPurchaseControls: function() { 4216 if (this.isNnCollection || this.isBundleDiscount) { 4217 return !this.hidePrice; 4218 } 4219 return this.salesModePurchasable; 4220 }, 4221 variantPrice: function() { 4222 if (this.hidePrice) { 4223 return ''; 4224 } 4225 var from = liquidHelper.defaultCurrency; 4226 if (this.currentVariant) { 4227 return moneySymbol(this.currentVariant.price, from); 4228 } 4229 if (this.product.variants.length === 1) { 4230 return moneySymbol(this.firstVariant.price, from); 4231 } 4232 4233 var minPrice = this.priceStats.minPrice; 4234 var maxPrice = this.priceStats.maxPrice; 4235 4236 if (minPrice !== maxPrice && (!this.hasVariantPriceRangePlugin || this.isDisplayPriceRange)) { 4237 this.isDiscountPrice = false; 4238 return moneySymbol(minPrice, from) + '~' + moneySymbol(maxPrice, from); 4239 } else { 4240 return moneySymbol(minPrice, from); 4241 } 4242 }, 4243 marketPrice: function() { 4244 if (this.hidePrice) { 4245 this.isDiscountPrice = false; 4246 return; 4247 } 4248 var from = liquidHelper.defaultCurrency; 4249 if (this.currentVariant) { 4250 this.isDiscountPrice = false; 4251 if (this.currentVariant.compareAtPrice && this.currentVariant.compareAtPrice > this.currentVariant.price) { 4252 this.isDiscountPrice = true; 4253 return moneySymbol(this.currentVariant.compareAtPrice, from); 4254 } 4255 } else { 4256 if (!_.includes(this.variantPrice, '~')) { 4257 const price = Number(this.variantPrice.replace(/[^0-9.
4257-]/g, "")) 4258 // æªé¸ææ¬¾å¼ä¹ä¸é¡¯ç¤ºåéæï¼é¡¯ç¤ºç¬¬ä¸åæä¾¿å®ç款å¼çå®å¹ 4259 if (this.firstCheapestVariant.compareAtPrice && this.firstCheapestVariant.compareAtPrice > price){ 4260 this.isDiscountPrice = true; 4261 return moneySymbol(this.firstCheapestVariant.compareAtPrice, from); 4262 } 4263 // æªé¸ææ¬¾å¼æè¦æ¹åä¸è¬å¹æ ¼é¡è² 4264 this.isDiscountPrice = false; 4265 } 4266 } 4267 }, 4268 isShowDropdownList: function() { 4269 if (this.product.options.length > 0) { 4270 return true; 4271 } 4272 return this.product.variants.length > 1 4273 }, 4274 priceTitleTag: function() { 4275 return this.marketPrice 4276 ? getDiscountPriceName() 4277 : getDiscountPriceSuggestionName(); 4278 }, 4279 isHideAddCartBtn: function() { 4280 if (this.addCartText === 'å·²å®å®') { 4281 return true; 4282 } 4283 return false; 4284 }, 4285 isSecondaryBtn: function() { 4286 if (this.addCartText === 'è¯çµ¡åºå®¶') { 4287 return true; 4288 } 4289 return false; 4290 }, 4291 variantsMaxUsableBonus: function() { 4292 var variants = this.product.variants; 4293 var maxUsableBonusArray = variants.map(function(item) { 4294 return item.maxUsableBonus 4295 }); 4296 return Math.max.apply(null, maxUsableBonusArray); 4297 }, 4298 bonusToPrice: function() { 4299 const bonus = this.currentVariant 4300 ? this.currentVariant.maxUsableBonus 4301 : this.maxUsableBonus; 4302 const price = Math.floor(bonus / window.liquidHelper.conversionBonus); 4303 const priceWithMoney = window.themeHelper.productDisplayCurrencyBlock(price); 4304 return "(ç´çæ¼ value )".replace('value', priceWithMoney); 4305 }, 4306 isMobileSize: function() { 4307 return window.innerWidth <= 580 4308 }, 4309 limitBuyText: function () { 4310 const minCount = this.product.minBuy; 4311 const maxCount = this.product.limitBuy; 4312 if (minCount > 0 && maxCount > 0) { 4313 return 'æ¤å忝çè¨å®æå°é購買 minCount ä»¶ï¼æå¤å¯è³¼è²· maxCount ä»¶'.replace('minCount', minCount).replace('maxCount', maxCount); 4314 } 4315 if (minCount > 0) { 4316 return 'æ¤å忝çè¨å®æå°é購買 minCount ä»¶'.replace('minCount', minCount); 4317 } 4318 if (maxCount > 0) { 4319 return 'æ¤å忝çè¨å®æå¤å¯è³¼è²· maxCount ä»¶'.replace('maxCount', maxCount); 4320 } 4321 return ''; 4322 } 4323 }, 4324 methods: { 4325 onClickSelectModal: function(objData, selectOptionStr) { 4326 this.isModalSelectShow = true; 4327 this.modalOption = objData; 4328 this.selectOption = selectOptionStr 4329 this.selectCurrentStr = this.currentOption && (String(this.currentOption[selectOptionStr]) || null) 4330 }, 4331 onChangeModalSelect: function(flag, isSelect) { 4332 if(!isSelect){ 4333 this.setOption(this.selectOption,this.selectCurrentStr,this.modalOption.types) 4334 } 4335 this.isModalSelectShow = flag; 4336 }, 4337 setOption: function(optionKey, type, dataArr) { 4338 let flag = true 4339 dataArr.forEach(item => { 4340 if (item.name === type) { 4341 flag = item.isValid 4342 } 4343 }) 4344 if (flag) { 4345 this.toggleCurrentOption(optionKey, type) 4346 } 4347 }, 4348 addToWishListEvent: function() { 4349 try { 4350 if (appMarketAddToWishListEvent) { 4351 var product = this.product; 4352 var currentVariant = this.currentVariant 4353 var element = $(`.btn[data-id=${product.id}]`); 4354 var index; 4355 var listName; 4356 if (element) { 4357 index = element.data('position') 4358 listName = element.data('list') 4359 } 4360 // sku_properties:é¸ä¸æ¬¾å¼ç option pairs(ç¶åèªç³»),é¡åå zip å¼ 4361 var optionValues = [currentVariant.option1, currentVariant.option2, currentVariant.option3]; 4362 var properties = [];
4363 (product.options || []).forEach(function(optionName, i) { 4364 if (optionName && optionValues[i]) { 4365 properties.push({ name: optionName, value: optionValues[i] }); 4366 } 4367 }); 4368 var dataSet = { 4369 name: product.title, 4370 category: product.productType, 4371 categories: (this.categories && this.categories.length) ? this.categories : (categoryLevels.length ? categoryLevels : (product.id === pageMainProductId ? productCategoryLevels : undefined)), 4372 sku: currentVariant.sku, 4373 price: currentVariant.price, 4374 compare_at_price: currentVariant.compareAtPrice, 4375 properties: properties, 4376 quantity: currentVariant.inventoryQuantity, 4377 variant: currentVariant.title, 4378 listName: listName || null, 4379 productId: product.id, 4380 variantId: currentVariant.id, 4381 index: Number(index) || 0, 4382 } 4383 appMarketAddToWishListEvent(dataSet) 4384 } 4385 } catch (e) { 4386 console.error(e) 4387 } 4388 }, 4389 addWishList: function() { 4390 if (this.currentVariant === null) { 4391 window.msg('è«é¸æå忬¾å¼', 'warning').show(); 4392 return; 4393 } 4394 var productVariantId = this.currentVariant.id; 4395 var addToWishListEvent = this.addToWishListEvent 4396 $.ajax({ 4397 method: 'POST', 4398 url: '/tracking_items', 4399 dataType: 'json', 4400 data: { 4401 product_variant_id: productVariantId 4402 }, 4403 success: function(response) { 4404 if (response.message) { 4405 window.msg(response.message, 'success').show(); 4406 addToWishListEvent() 4407 } 4408 4409 if (response.error) { 4410 window.msg(response.error, 'error').show(); 4411 4412 } 4413 if (response.info) { 4414 window.msg(response.info, 'info').show(); 4415 } 4416 if (response.success === false) { 4417 if (window.liquidHelper && window.liquidHelper.language && window.liquidHelper.language.handle) { 4418 window.location = "/" + window.liquidHelper.language.handle + "/account/login"; 4419 } else { 4420 window.location = "/account/login"; 4421 } 4422 } 4423 } 4424 }); 4425 }, 4426 setChoose: function(currentVariant) { 4427 this.maxUsableBonus = 0; 4428 var quantity = 1; 4429 var cartItem = null; 4430 if (!this.isNnCollection && this.cartItems) { 4431 cartItem = this.normalGetChoosenItem(currentVariant); 4432 } 4433 if (this.isNnCollection) { 4434 cartItem = this.nnCollectionGetChoosenItem(currentVariant); 4435 } 4436 this.isChoose = !! cartItem; 4437 if (this.isNewNnCollection) { 4438 return 4439 } 4440 this.quantity = cartItem 4441 ? cartItem.quantity 4442 : this.quantity; 4443 4444 // product modal è¯çµ¡åºå®¶æ å¢ 4445 if (currentVariant) { 4446 var photoIndex = 0; 4447 if (! currentVariant.imgUrl) { 4448 currentVariant.imgUrl = this.swiperPhotos.length > 0 4449 ? (this.swiperPhotos[photoIndex] && this.swiperPhotos[photoIndex].large) 4450 : this.featuredImage.large; 4451 } 4452 currentVariant.productTitle = this.product.title + ' - ' + this.currentVariant.title; 4453 } 4454 }, 4455 normalGetChoosenItem: function(currentVariant) { 4456 return this.cartItems.find(function(cartItem) { 4457 return currentVariant && cartItem.id === currentVariant.id; 4458 }); 4459 }, 4460 nnCollectionGetChoosenItem: function(currentVariant) { 4461 var isSelected = null; 4462 if (! currentVariant) { 4463 return isSelected; 4464 } 4465 if (this.isNewNnCollection) { 4466 var cart = store.get(`SpecialCollectionCart_${this.collectionId}`); 4467 isSelected = cart && cart.find((item) => item.variant_id == currentVariant.id) || null; 4468 } else { 4469 store.each(function(value, key) { 4470 var productId = _.includes(key, 'Pro' + currentVariant.productId); 4471 var variantID = _.includes(key, 'Var' + currentVariant.id); 4472 if (productId && variantID) { 4473 isSelected = store.get(key); 4474 } 4475 }); 4476 } 4477 4478 return isSelected; 4479 }, 4480 // get product detail 4481 getProductDetail: function() { 4482 var self = this; 4483 4484 $.ajax({ 4485 url: self.productUrl + '.json', 4486 type: 'GET', 4487 timeout: 30000, 4488 beforeSend: function() { 4489 self.isLoading = true; 4490 }, 4491 error: function(xhr) { 4492 self.closeModal(); 4493 if (xhr.status === 429) { 4494 window.showAddCartRateLimitModal(5); 4495 return; 4496 } 4497 window.msg('網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç', 'error').show(); 4498 } 4499 }).done(function(data) { 4500 if (data.id) { 4501 var productData = [themeHelper.toCamelCase(data)]; 4502 self.product = themeHelper.priceWithDiscount(productData, liquidHelper.hasPriceWithDiscountPlugin)[0]; 4503 self.maxUsableBonus = self.variantsMaxUsableBonus; 4504 if (self.product.variants.length === 1 || liquidHelper.isFirstVariantSelected || self.selectedVariantId) { 4505 self.currentVariant = self.firstValidVariant; 4506 // 妿已ç¶èªé¸ååï¼åååé 䏿»å å ¥è³¼ç©è»é¡¯ç¤ºèªé¸åå 4507 if (self.selectedVariantId) { 4508 self.currentVariant = self.selectedValidVariant; 4509 } 4510 if (self.currentVariant) { 4511 self.setChoose(self.currentVariant); 4512 self.setDefaultOption(); 4513 } 4514 } 4515 if (self.displayProductDiscountsList) { 4516 self.setUpDiscountsTag(data); 4517 } 4518 self.isLoading = false;
4519 if (self.product && self.product.variants) { 4520 self.product.variants.forEach(function(discountedVariant) { 4521 var rawVariant = data.variants.find(function(v) { return v.id === discountedVariant.id; }); 4522 if (rawVariant) { rawVariant.price = discountedVariant.price; } 4523 }); 4524 } 4525 viewItem && viewItem(data, { collectionId: '', collectionName: null, categories: (self.categories && self.categories.length) ? self.categories : (categoryLevels.length ? categoryLevels : (data.id === pageMainProductId ? productCategoryLevels : undefined)) }); 4526 4527 (function() { 4528 // Read login status from cacheable, skip GET /pv_notification if not login. 4529 if (window.store && window.store.get('customer')) { 4530 var cacheableCustomer = window.store.get('customer'); 4531 if (cacheableCustomer.notLogin) { 4532 return; 4533 } 4534 } 4535 $.ajax({ 4536 url: '/pv_notification', 4537 method: 'GET', 4538 dataType: 'json', 4539 data: { 4540 product_id: parseInt(data.id) 4541 }, 4542 success: function(response) { 4543 self.variantNotifications = response.variants; 4544 } 4545 }) 4546 })(); 4547 } else { 4548 window.msg('網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç', 'error').show(); 4549 self.closeModal() 4550 } 4551 }) 4552 }, 4553 // product image btn 4554 photoOnChange: function(photoIndex, isVariantReposition) { 4555 var visiblePhotos = (this.currentVariant && this.currentVariant.photos.length) 4556 ? this.currentVariant.photos 4557 : this.product.photos.map(function(p) { return p.photo; }); 4558 var result = themeHelper.buildNavigateItemImagePayload(this._navState, { 4559 product: this.product, 4560 currentVariant: this.currentVariant, 4561 visiblePhotos: visiblePhotos, 4562 slideIndex: photoIndex, 4563 videoOffset: this.firstImageIndex, 4564 }); 4565 this._navState = result.nextState; 4566 if (result.payload && !isVariantReposition) { 4567 window.navigateItemImage(result.payload); 4568 } 4569 this.currentImageIndex = photoIndex; 4570 }, 4571 toggleCurrentOption: function(key, value) { 4572 this.currentOption[key] = 4573 (this.currentOption[key] === value || value === 'null') ? null : value; 4574 var variantIndex = this.getVariantIndex(); 4575 if (variantIndex !== -1) { 4576 this.currentVariant = this.product.variants[variantIndex]; 4577 } else { 4578 this.currentVariant = null; 4579 } 4580 this.setChoose(this.product.variants[variantIndex]); 4581 if (this.currentOption[key] !== null) { 4582 var optionIndex = parseInt(key.replace('option', '')) - 1; 4583 appStoreSelectItemEvent(this.product, this.product.options[optionIndex], this.currentOption[key], this.currentVariant); 4584 } 4585 }, 4586 toggleNotification: function() { 4587 var self = this; 4588 var variantId = this.currentVariant.id; 4589 4590 $.ajax({ 4591 url: '/toggle_pv_notification', 4592 method: 'POST', 4593 dataType: 'json', 4594 data: { 4595 product_variant_id: variantId 4596 }, 4597 success: function(response) { 4598 self.variantNotifications[variantId] = response.notice; 4599 window.msg(response.message, "success").show(); 4600 }, 4601 error: function(xhr) { 4602 var response = xhr.responseJSON; 4603 var msg = response && response.error || "網路é£ç·ç°å¸¸ï¼è«éæ°æ´ç"; 4604 window.msg(msg, "error").show(); 4605 } 4606 }) 4607 }, 4608 getOptionImageIndex: function(index) { 4609 this.currentImageIndex = index; 4610 }, 4611 quantityDecrease: function() { 4612 if (this.cartItem) { 4613 themeHelper.EventBus.$emit('quantityDecrease', this.cartItem, false); 4614 this.quantity = this.cartItem.quantity 4615 } else { 4616 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 4617 } 4618 }, 4619 quantityIncrease: function() { 4620 if (this.cartItem) { 4621 themeHelper.EventBus.$emit('quantityIncrease', this.cartItem, false); 4622 this.quantity = this.cartItem.quantity 4623 } else { 4624 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 4625 } 4626 }, 4627 quantityChange: function(el) { 4628 if (this.cartItem) { 4629 themeHelper.EventBus.$emit('quantityChange', parseInt(el.target.value), this.cartItem, false); 4630 this.quantity = this.cartItem.quantity; 4631 el.target.value = this.cartItem.quantity; 4632 } else { 4633 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 4634 } 4635 }, 4636 addProduct: function() { 4637 if (this.addCartText === 'è¯çµ¡åºå®¶') { 4638 $('#messagebuy-Modal').data('variant', this.currentVariant); 4639 $('#messagebuy-Modal').modal('show'); 4640 $('#messagebuy-Modal').css("background-color", "rgba(0, 0, 0, .6)"); 4641 } else if ( 4642 this.addCartText === 'å·²ç»è¨è£è²¨éç¥' || 4643 this.addCartText === 'å·²å®å®ï¼è²¨å°éç¥æ' 4644 ) { 4645 this.toggleNotification(); 4646 } else { 4647 if (this.cartItem) { 4648 try { 4649 if (this.isChoose) { 4650 themeHelper.EventBus.$emit('updateStore', 'update', this.cartItem, this.callBack) 4651 } else { 4652 themeHelper.EventBus.$emit('updateStore', 'add', this.cartItem, this.callBack) 4653 } 4654 4655 this.adding = true; 4656 this.closeModal(); 4657 } catch (e) { 4658 window.msg("å忬¾å¼ç°å¸¸", 'error').show(); 4659 } 4660 } else { 4661 window.msg("è«é¸æå忬¾å¼", 'warning').show(); 4662 } 4663 } 4664 }, 4665 closeModal: function() { 4666 themeHelper.EventBus.$emit('closeProductModal'); 4667 }, 4668 setDefaultOption: function() { 4669 var self = this; 4670 Object.keys(self.currentOption).map(function(optionKey) { 4671 self.currentOption[optionKey] = self.currentVariant[optionKey]; 4672 }); 4673 }, 4674 getVariantIndex: function() { 4675 var self = this; 4676 return self.product.variants.findIndex(function(variant, index) { 4677 var isVariant = true;
4678 Object.keys(self.currentOption).forEach(function(option) { 4679 if (variant[option] !== self.currentOption[option]) { 4680 isVariant = false; 4681 } 4682 }); 4683 return isVariant; 4684 }); 4685 }, 4686 4687 // 篩é¸éè¤åé 4688 getUniqueVariant: function(variants) { 4689 return variants.filter(function(value, index, self) { 4690 return self.indexOf(value) === index; 4691 }); 4692 }, 4693 groupBy(xs, key) { 4694 return xs.reduce(function(rv, x) { 4695 (rv[x[key]] = rv[x[key]] || []).push(x); 4696 return rv; 4697 }, {}); 4698 }, 4699 setUpDiscountsTag(data) { 4700 var self = this; 4701 var languagePrefix = '/' + ((window.shopScriptHelper && window.shopScriptHelper.i18nLocale) || 'zh-TW'); 4702 $.ajax({ 4703 url: languagePrefix + self.productUrl + '/discounts_list', 4704 method: 'GET', 4705 success: function(result) { 4706 if (result.length > 0) { 4707 var discounts_list = self.groupBy(result, 'campaign_type'); 4708 self.discountsList = discounts_list; 4709 } else { 4710 self.discountsList = null; 4711 } 4712 } 4713 }); 4714 }, 4715 getOptions: function(optionKey, optionTypes) { 4716 var self = this; 4717 return optionTypes.map(function(optionType, index) { 4718 var isValid = true; 4719 4720 // é¸åºå å«ç®åtypeçvariant 4721 var matchVariants = self.product.variants.filter(function(variant) { 4722 return variant[optionKey] === optionType; 4723 }); 4724 4725 // 篩é¸å·²å¾é¸type 4726 Object.keys(self.currentOption).forEach(function(currentOptionKey) { 4727 if (currentOptionKey !== optionKey) { 4728 matchVariants = matchVariants.filter(function(variant) { 4729 if (self.currentOption[currentOptionKey]) { 4730 return variant[currentOptionKey] === self.currentOption[currentOptionKey] 4731 } else { 4732 return true; 4733 } 4734 }); 4735 } 4736 }); 4737 if (matchVariants.length === 0) { 4738 isValid = false; 4739 } 4740 if (! self.isEmptyClickable) { 4741 isValid = false; 4742 matchVariants.find(function(item) { 4743 if (item.inventoryQuantity === null || item.inventoryQuantity > 0 || item.inventoryPolicy === 'continue') { 4744 isValid = true; 4745 } 4746 }); 4747 } 4748 return {name: optionType, isValid: isValid} 4749 }); 4750 } 4751 } 4752 }; 4753 }); 4754</script>
4754 4755 4756<!-- cyb_snippet _product_modal_js end --> 4757 4758<!-- cyb_snippet components/product_modal/product_modal end --> 4759 4760<!-- cyb_snippet messagebuy_modal start --> 4761 4762 4763<!-- cyb_snippet messagebuy_modal end --> 4764<!-- cyb_snippet components/rate_limit_modal start --> 4765<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/rate_limit_modal-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 4766 4767<div class="modal fade" id="rate-limit-modal" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static" data-keyboard="false"> 4768 <div class="modal-dialog modal-dialog-centered" role="document"> 4769 <div class="modal-content"> 4770 <div class="modal-body"> 4771 <div class="qk-text--default_dark rate-limit-text"> 4772 <p id="rate-limit-title">ç®åæ¶è³¼äººæ½®ç¾å¤ï¼è«èå¿çå</p> 4773 <p class="qk-fs--body qk-fw--500 rate-limit-message"> 4774 <span class="qk-text--error" id="rate-limit-countdown"></span> 4775 <span id="rate-limit-desc"></span> 4776 </p> 4777 <p class="qk-fs--body qk-fw--500 rate-limit-message" id="rate-limit-warn">è¥é¢éæ¤é é¢ï¼å¯è½æå»¶é·çå¾ æéã</p> 4778 </div> 4779 <button id="rate-limit-btn" class="btn qk-btn qk-btn--primary" disabled>éæ°é²å ¥ååé </button> 4780 </div> 4781 </div> 4782 </div> 4783</div> 4784
4785<script> 4786 window.showRateLimitModal = function(countdownSec) { 4787 var countdown = countdownSec || 5; 4788 var $modal = $('#rate-limit-modal'); 4789 var $btn = $modal.find('#rate-limit-btn'); 4790 var $countdownEl = $modal.find('#rate-limit-countdown'); 4791 4792 $btn.show(); 4793 $modal.find('#rate-limit-desc').text(language["product_rate_limit_desc"]); 4794 $countdownEl.text(countdown); 4795 $btn.prop('disabled', true); 4796 $modal.modal('show'); 4797 4798 var timer = setInterval(function() { 4799 countdown--; 4800 $countdownEl.text(countdown); 4801 if (countdown <= 0) { 4802 clearInterval(timer); 4803 $btn.prop('disabled', false); 4804 } 4805 }, 1000); 4806 4807 $btn.off('click').on('click', function() { 4808 location.reload(); 4809 }); 4810 } 4811 4812 window.showAddCartRateLimitModal = function(countdownSec) { 4813 var countdown = countdownSec || 5; 4814 var $modal = $('#rate-limit-modal'); 4815 var $countdownEl = $modal.find('#rate-limit-countdown'); 4816 4817 $modal.find('#rate-limit-btn').hide(); 4818 $modal.find('#rate-limit-desc').text(language["addcart_rate_limit_desc"]); 4819 $countdownEl.text(countdown); 4820 $modal.modal('show'); 4821 4822 var timer = setInterval(function() { 4823 countdown--; 4824 $countdownEl.text(countdown); 4825 if (countdown <= 0) { 4826 clearInterval(timer); 4827 $modal.modal('hide'); 4828 } 4829 }, 1000); 4830 } 4831</script>
4831 4832 4833<!-- cyb_snippet components/rate_limit_modal end --> 4834
4835<script> 4836 $(document).ready(function() { 4837 const shouldSkipQuantityCheck = false; 4838 const newAddCartModalApp = new window.themeHelper.LiquidVueHandler({ 4839 componentNames: Object.keys(window.themeHelper.productModalComponents), 4840 mountSelector: '#new-addcart-modal', 4841 autoMount: false, 4842 }); 4843 4844 newAddCartModalApp.createApp({ 4845 el: '#new-addcart-modal', 4846 delimiters: ['${', '}'], 4847 data() { 4848 return { 4849 collectionId: 0, 4850 categories: [], 4851 color: '', // unused 4852 isCollection: true, 4853 productQuantity: 0, 4854 onlyDescription: false, 4855 showProductModal: false, 4856 popProductUrl: '', 4857 loading: false, 4858 }; 4859 }, 4860 mounted: function() { 4861 themeHelper.EventBus.$on('closeProductModal',this.closeProductModal); 4862 themeHelper.EventBus.$on('updateStore', this.addProduct); 4863 themeHelper.EventBus.$on('quantityDecrease', this.quantityDecrease); 4864 themeHelper.EventBus.$on('quantityIncrease', this.quantityIncrease); 4865 themeHelper.EventBus.$on('quantityChange', this.quantityChange); 4866 }, 4867 methods: { 4868 addProduct: function(actionType, productData, checkoutAddToCartCallback){ 4869 var self = this; 4870 var pageViewId = window.CYBERBIZ && window.CYBERBIZ.dis && window.CYBERBIZ.dis.pageViewId; 4871 $.ajax({ 4872 method: 'POST', 4873 url: '/cart/add', 4874 headers: pageViewId ? { 'X-Cyb-Page-View-Id': pageViewId } : {}, 4875 data: { 4876 id: productData.id, 4877 quantity: productData.quantity, 4878 }, 4879 dataType: 'json', 4880 beforeSend: function() { 4881 self.loading = true; 4882 themeHelper.ajaxLoadingMsg('loading'); 4883 $('.shopcart').dropdown('hide') 4884 $('.global-cart-count').hide(); 4885 $('.global-cart-loading').show(); 4886 $('.global-cart-loading').html('<i class="fa fa-spinner fa-pulse" style="vertical-align: middle;"></i>'); 4887 }, 4888 error: function(xhr) { 4889 $('.global-cart-loading').hide(); 4890 $('.global-cart-count').show(); 4891 self.loading = false; 4892 if (xhr.status === 429) { 4893 themeHelper.ajaxLoadingMsg('hide', 0); 4894 self.closeProductModal(); 4895 window.showAddCartRateLimitModal(5); 4896 return; 4897 } 4898 themeHelper.ajaxLoadingMsg('fail', 2000); 4899 } 4900 }).done(function(data, status, request){ 4901 // product modal ç«å³è³¼è²·æé 4902 window.sendAddToCartEvent && sendAddToCartEvent({ 4903 price: productData.price, 4904 quantity: productData.quantity, 4905 id: productData.product.id, 4906 name: productData.product.title, 4907 category: productData.product.productType, 4908 brand: productData.product.vendor, 4909 qc: productData.variant.qc, 4910 variant: { 4911 id: productData.variant.id, 4912 title: productData.variant.title, 4913 sku: productData.variant.sku, 4914 price: productData.variant.price, 4915 qc: productData.variant.qc, 4916 }, 4917 position: "ååå½åºè¦çª", 4918 request, 4919 }) 4920 if (self.isQuickBuy) { 4921 if (window.liquidHelper && window.liquidHelper.language && window.liquidHelper.language.handle) { 4922 window.location = "/" + window.liquidHelper.language.handle + "/cart"; 4923 } else { 4924 window.location = "/cart"; 4925 } 4926 } else { 4927 themeHelper.ajaxLoadingMsg('success'); 4928 pullNavCart(); 4929 $('.shopcart').dropdown('show') 4930 $('.global-cart-loading').hide(); 4931 self.loading = false; 4932 } 4933 if(typeof checkoutAddToCartCallback === 'function'){ 4934 var callbackData = { 4935 id: productData.id, 4936 quantity: productData.quantity, 4937 title: productData.product ? productData.product.title : productData.title || '' 4938 }; 4939 checkoutAddToCartCallback(callbackData) 4940 } 4941 peh.emit('product:add_to_cart', [{ 4942 variantId: productData.id, 4943 quantity: productData.quantity 4944 }], self.collectionId); 4945 }).fail(function(e){ 4946 if (e.status === 429) { 4947 return; 4948 } 4949 let err_msg = e.responseJSON.err_msg; 4950 err_msg && err_msg.length > 0 ? 4951 window.msg(e.responseJSON.err_msg, 'warning').show(): 4952 window.msg("å å ¥è³¼ç©è»æèª¤ï¼è«éæ°å試", 'warning').show(); 4953 }) 4954 }, 4955 quantityDecrease: function(cartItem, isAdded){ 4956 if (cartItem.quantity > 1) { 4957 cartItem.quantity -= 1; 4958 } else { 4959 window.msg("æ¸éä¸å¾çºä½æ¼ 1", 'warning').show(); 4960 } 4961 }, 4962 quantityIncrease: function(cartItem, isAdded){ 4963 const limitQuantity = cartItem.variant.inventoryQuantity; 4964 const limitBuy = cartItem.product.limitBuy 4965 if (limitBuy && cartItem.quantity >= limitBuy) { 4966 product_limit_buy = "æ¤ååéè³¼ limitBuy ä»¶".replace('limitBuy', limitBuy) 4967 window.msg(product_limit_buy, 'warning').show(); 4968 return; 4969 } else if (cartItem.quantity >= liquidHelper.cartQuantityLimit) { 4970 window.msg("æ¸éè¶ é購買ä¸é", 'warning').show(); 4971 } else if ( cartItem.quantity < limitQuantity || limitQuantity === null || 4972 cartItem.variant.inventoryPolicy == "continue" || shouldSkipQuantityCheck) { 4973 cartItem.quantity += 1; 4974 } else { 4975 this.showInventoryMessage(limitQuantity); 4976 } 4977 },
4978 quantityChange: function(quantity, cartItem, isAdded){ 4979 const limitBuy = cartItem.product.limitBuy 4980 var limitQuantity = cartItem.variant.inventoryQuantity; 4981 var inventoryPolicy = cartItem.variant.inventoryPolicy; 4982 if (Number.isInteger(quantity)) { 4983 if (quantity >= 1) { 4984 if (limitBuy && quantity >= limitBuy) { 4985 product_limit_buy = "æ¤ååéè³¼ limitBuy ä»¶".replace('limitBuy', limitBuy) 4986 window.msg(product_limit_buy, 'warning').show(); 4987 } else if (quantity > liquidHelper.cartQuantityLimit) { 4988 window.msg("æ¸éè¶ é購買ä¸é", 'warning').show(); 4989 } else if (quantity <= limitQuantity || limitQuantity === null || inventoryPolicy == "continue" || shouldSkipQuantityCheck) { 4990 cartItem.quantity = quantity; 4991 } else { 4992 cartItem.quantity = limitQuantity; 4993 this.showInventoryMessage(limitQuantity); 4994 } 4995 } else { 4996 window.msg("æ¸éä¸å¾çºä½æ¼ 1", 'warning').show(); 4997 } 4998 } else { 4999 window.msg("æ¸éè¼¸å ¥é¯èª¤", 'warning').show(); 5000 } 5001 }, 5002 popModal: function(productUrl, collectionId, color, isCollection, isShowDescription, isQuickBuy, variantId, checkoutAddToCartCallback, categories){ 5003 this.showProductModal = true; 5004 this.collectionId = collectionId; 5005 this.categories = categories || []; 5006 this.popProductUrl = productUrl; 5007 this.color = color || ''; // unused 5008 this.isCollection = isCollection || false; 5009 this.isShowDescription = isShowDescription != false; 5010 this.isQuickBuy = isQuickBuy || false; 5011 this.selectedVariantId = parseInt(variantId) || undefined; 5012 this.checkoutAddToCartCallback = checkoutAddToCartCallback; 5013 document.body.style.overflow = "hidden"; 5014 }, 5015 closeProductModal: function() { 5016 this.showProductModal = false; 5017 document.body.style.overflow = ""; 5018 }, 5019 showInventoryMessage: function(inventoryQuantity) { 5020 const stockMessage = "åå庫åå©é¤ count ä»¶".replace('count', inventoryQuantity || 0); 5021 window.msg(stockMessage, 'warning').show(); 5022 }, 5023 } 5024 }); 5025 5026 for (const componentName in window.themeHelper.productModalComponents) { 5027 newAddCartModalApp.component( 5028 componentName, 5029 window.themeHelper.productModalComponents[componentName], 5030 ); 5031 } 5032 5033 window.new_addcart_modal = newAddCartModalApp.mount(); 5034 }); 5035</script>
5035 5036 5037<!-- cyb_snippet new_addcart_modal end --> 5038
5038<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/new_cart-3a2e378145f8a165.js' type='text/javascript'></script>
5038 5039 5040</div> 5041<style> 5042 [id="1716791046824_5"] { 5043 display: none; 5044 } 5045 [id="1716620994813_0"] { 5046 max-width: calc((100vw - 240px) / 2); 5047 display: inline-block; 5048 } 5049 [id="1716620994813_0"] .qk-swiper_btn { 5050 display: none; 5051 } 5052 [id="1716620994813_0"] .qk-swiper_pg { 5053 display: none; 5054 } 5055 [id="1715271445372_0"] { 5056 max-width: calc((100vw - 240px) / 2); 5057 display: inline-block; 5058 } 5059 [id="1715271445372_0"] .qk-swiper_btn { 5060 display: none; 5061 } 5062 [id="1715271445372_0"] .qk-swiper_pg { 5063 display: none; 5064 } 5065 #wrapper { 5066 text-align: center; 5067 margin-bottom: 54px; 5068 } 5069 #graphic_introduction-1715369570801_6 .graphic_introduction_group-content { 5070 flex-direction: row; 5071 gap: 30px; 5072 } 5073 #graphic_introduction-1715369570801_6 .graphic_introduction_group .graphic_introduction_group-content .group_content[data-v-aa70c9f2] { 5074 margin-bottom: 0px !important; 5075 } 5076 [id="1715274387306_7"] { 5077 margin-top: 20px !important; 5078 } 5079 #mobile-yt { 5080 display: none; 5081 } 5082 .fb_fanpage { 5083 display: none; 5084 } 5085 .media .social_media { 5086 margin-top: 0px; 5087 } 5088@media (max-width: 991px) { 5089 [id="1716620994813_0"] { 5090 max-width: calc((100vw - 52px) / 2); 5091 } 5092 [id="1715271445372_0"] { 5093 max-width: calc((100vw - 52px) / 2); 5094 } 5095} 5096@media (max-width: 502px) { 5097 #graphic_introduction-1715369570801_6 .graphic_introduction_group-content { 5098 flex-direction: column; 5099 gap: 5px; 5100 } 5101 #desktop-yt { 5102 display: none; 5103 } 5104 #mobile-yt { 5105 display: block; 5106 } 5107} 5108@media (max-width: 425px) { 5109 #wrapper { 5110 margin-bottom: 40px; 5111 } 5112 [id="1716620994813_0"] { 5113 max-width: calc((100vw - 52px)); 5114 display: block; 5115 margin: 0 auto !important; 5116 } 5117 [id="1715271445372_0"] { 5118 max-width: calc((100vw - 52px)); 5119 display: block; 5120 margin: 0 auto !important; 5121 } 5122} 5123</style>
5124<script> 5125 $(document).ready(function() { 5126 var $element1 = $('#1716620994813_0'); 5127 var $element2 = $('#1715271445372_0'); 5128 5129 // 建ç«ä¸åæ°ç div å 裹å ç´ 5130 var $wrapper = $('<div id="wrapper"></div>'); 5131 5132 // å¨ element1 ä¹åæå ¥ wrapper 5133 $element1.before($wrapper); 5134 5135 // å° element1 å element2 æå ¥ wrapper ä¸ 5136 $wrapper.append($element1); 5137 $wrapper.append($element2); 5138 $('#1716791046824_5').show(); 5139 }); 5140</script>
5140 5141 </div> 5142 5143 <!-- Footer --> 5144 5145 5146 5147 5148 5149 5150 5151<style> 5152 5153 5154 @media(min-width: 991px) { 5155 .display_x .left-content > div { 5156 max-width: calc(100% / 3); 5157 } 5158 } 5159</style> 5160 5161<div id="index-recommendation"></div> 5162 5163<footer id="footer" class="qk-fs--body qk-bg--footer_bg"> 5164 5165 5166 <div class="qk-container display_x"> 5167 <div class="footer_content qk-mg--0 qk-display--flex qk-justify--between"> 5168 <div class="left-content qk-flex--1"> 5169 5170 5171 <div class="link-list-container"> 5172 5173 <p class="footer_title qk-fs--title qk-text--footer_text">éæ¼æå</p> 5174 5175 <div class="item horizontal qk-text--left"> 5176 <ul class="qk-display--flex qk-flex--wrap"> 5177 5178 5179 <li class="qk-display--il_bk"> 5180 5181 <a 5182 class="qk-text--footer_text" 5183 href="/pages/ourbrand" 5184 rel="noopener noreferrer" 5185 target="_blank">åçç念</a> 5186 5187 </li> 5188 5189 <li class="qk-display--il_bk"> 5190 5191 <a 5192 class="qk-text--footer_text" 5193 href="/pages/reviews" 5194 rel="noopener noreferrer" 5195 target="_blank">ç¢åè©å¹</a> 5196 5197 </li> 5198 5199 <li class="qk-display--il_bk"> 5200 5201 <a 5202 class="qk-text--footer_text" 5203 href="/blogs/coffee-information" 5204 rel="noopener noreferrer" 5205 target="_blank">åå¡ç¥è</a> 5206 5207 </li> 5208 5209 5210 </ul> 5211 </div> 5212 </div> 5213 5214 5215 5216 <div class="link-list-container"> 5217 5218 <p class="footer_title qk-fs--title qk-text--footer_text">è³¼ç©è³è¨</p> 5219 5220 <div class="item horizontal qk-text--left"> 5221 <ul class="qk-display--flex qk-flex--wrap"> 5222 5223 5224 <li class="qk-display--il_bk"> 5225 5226 <a 5227 class="qk-text--footer_text" 5228 href="/pages/faq-purchasepolicy" 5229 rel="noopener noreferrer" 5230 target="_blank">è³¼ç©èªªæ</a> 5231 5232 </li> 5233 5234 <li class="qk-display--il_bk"> 5235 5236 <a 5237 class="qk-text--footer_text" 5238 href="/pages/faq-warranty" 5239 rel="noopener noreferrer" 5240 target="_blank">å®å¾æå</a> 5241 5242 </li> 5243 5244 <li class="qk-display--il_bk"> 5245 5246 <a 5247 class="qk-text--footer_text" 5248 href="https://www.femobook.com.tw/pages/ourstore" 5249 rel="noopener noreferrer" 5250 target="_blank">éå¸è³è¨</a> 5251 5252 </li> 5253 5254 5255 </ul> 5256 </div> 5257 </div> 5258 5259 5260 5261 <div class="link-list-container"> 5262 5263 <p class="footer_title qk-fs--title qk-text--footer_text">æ¢æ¬¾æ¿ç</p> 5264 5265 <div class="item horizontal qk-text--left"> 5266 <ul class="qk-display--flex qk-flex--wrap"> 5267 5268 5269 <li class="qk-display--il_bk"> 5270 5271 <a 5272 class="qk-text--footer_text" 5273 href="/pages/privacy" 5274 rel="noopener noreferrer" 5275 target="_blank">é±ç§æ¿ç</a> 5276 5277 </li> 5278 5279 <li class="qk-display--il_bk"> 5280 5281 <a 5282 class="qk-text--footer_text" 5283 href="/pages/terms" 5284 rel="noopener noreferrer" 5285 target="_blank">æåæ¢æ¬¾</a> 5286 5287 </li> 5288 5289 <li class="qk-display--il_bk"> 5290 5291 <a 5292 class="qk-text--footer_text" 5293 href="/pages/refund" 5294 rel="noopener noreferrer" 5295 target="_blank">éæè²¨æ¿ç</a> 5296 5297 </li> 5298 5299 5300 </ul> 5301 </div> 5302 </div> 5303 5304 5305 </div> 5306 <div class="right-content qk-display--flex qk-flex--column"> 5307 5308 <div class="fb_fanpage qk-hidden--mobile"> 5309 <div class="fb_fans_page_area"> 5310 <div 5311 class="fb-page" 5312 data-href="https://www.facebook.com/707334345791024" 5313 data-width="500" 5314 data-adapt-container-width="true" 5315 data-hide-cover="false" 5316 data-show-facepile="true"> 5317 <blockquote cite="https://www.facebook.com/707334345791024" class="fb-xfbml-parse-ignore"> 5318 <a target="_blank" rel="noopener noreferrer" href="https://www.facebook.com/707334345791024"></a> 5319 </blockquote> 5320 </div> 5321 </div> 5322 </div> 5323 5324 <div class="media qk-display--il"> 5325 <div class="item social_media qk-h--auto qk-float--l"> 5326 <ul> 5327 5328 <li class="qk-display--il_bk"> 5329 <a target="_blank" rel="noopener noreferrer" href="https://www.facebook.com/femobookTW"> 5330 <svg 5331 class="facebook-svg" 5332 xmlns="http://www.w3.org/2000/svg" 5333 width="40" 5334 height="40"
5335 viewBox="0 0 40 40"> 5336 <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" /> 5337 </svg> 5338 </a> 5339 </li> 5340 5341 5342 <li class="qk-display--il_bk"> 5343 <a target="_blank" rel="noopener noreferrer" href="https://www.instagram.com/femobook_taiwan/"> 5344 <svg 5345 class="instagram-svg" 5346 xmlns="http://www.w3.org/2000/svg" 5347 width="40" 5348 height="40" 5349 viewBox="0 0 40 40"> 5350 <rect class="qk-svg--footer_text" width="40" height="40" rx="20" /> 5351 <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
535111.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" /> 5352 </svg> 5353 </a> 5354 </li> 5355 5356 5357 <li class="qk-display--il_bk"> 5358 <a target="_blank" rel="noopener noreferrer" href="https://lin.ee/iOSBDQ1"> 5359 <svg 5360 class="line-svg" 5361 xmlns="http://www.w3.org/2000/svg" 5362 width="40" 5363 height="40"
5364 viewBox="0 0 40 40"> 5365 <rect class="qk-svg--footer_text" width="40" height="40" rx="20" /> 5366 <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" /> 5367 <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" /> 5368 <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" /> 5369 <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" /> 5370 <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" /> 5371 </svg> 5372 </a> 5373 </li> 5374 5375 5376 <li class="qk-display--il_bk"> 5377 <a target="_blank" rel="noopener noreferrer" href="https://youtube.com/@femobook?si=6pEjEuT9H4d5BGk7"> 5378 <svg 5379 class="youtube-svg" 5380 xmlns="http://www.w3.org/2000/svg" 5381 width="40" 5382 height="40"
5383 viewBox="0 0 40 40"> 5384 <rect class="qk-svg--footer_text" width="40" height="40" rx="20" /> 5385 <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" /> 5386 </svg> 5387 </a> 5388 </li> 5389 5390 </ul> 5391 </div> 5392 </div> 5393 </div> 5394 </div> 5395 </div> 5396 5397 <div class="copyright qk-text--footer_text qk-bd--footer_text qk-text--left qk-bd_t--default"> 5398 <div class="qk-container container qk-fw--500"> 5399 <span>Copyright ©</span> 5400 <a class="qk-text--link" href="/"> 5401 <span>femobook</span> 5402 </a> 5403 <span>All Rights Reserved.</span> 5404 <span>Designed by 5405 </span> 5406 <a 5407 class="qk-text--link" 5408 href="https://www.cyberbiz.io?utm_source=poweredbycyberbiz" 5409 target="_blank" 5410 rel="noopener noreferrer" 5411 title="Designed by CYBERBIZ">CYBERBIZ</a>. 5412 </div> 5413 </div> 5414 5415</footer>
5416<script> 5417 $(document).ready(function() { 5418 let isDynamicLoading = false; 5419 5420 let menusData = { 5421 5422 5423 "éæ¼æå": { 5424 5425 "type": "items", 5426 "data": [ 5427 5428 5429 5430 { 5431 "title": "åçç念", 5432 "url": "/pages/ourbrand", 5433 "item_type": "page" 5434 }, 5435 5436 { 5437 "title": "ç¢åè©å¹", 5438 "url": "/pages/reviews", 5439 "item_type": "page" 5440 }, 5441 5442 { 5443 "title": "åå¡ç¥è", 5444 "url": "/blogs/coffee-information", 5445 "item_type": "blog" 5446 } 5447 5448 5449 ] 5450 5451 }, 5452 5453 5454 5455 "è³¼ç©è³è¨": { 5456 5457 "type": "items", 5458 "data": [ 5459 5460 5461 5462 { 5463 "title": "è³¼ç©èªªæ", 5464 "url": "/pages/faq-purchasepolicy", 5465 "item_type": "page" 5466 }, 5467 5468 { 5469 "title": "å®å¾æå", 5470 "url": "/pages/faq-warranty", 5471 "item_type": "page" 5472 }, 5473 5474 { 5475 "title": "éå¸è³è¨", 5476 "url": "https://www.femobook.com.tw/pages/ourstore", 5477 "item_type": "http" 5478 } 5479 5480 5481 ] 5482 5483 }, 5484 5485 5486 5487 "æ¢æ¬¾æ¿ç": { 5488 5489 "type": "items", 5490 "data": [ 5491 5492 5493 5494 { 5495 "title": "é±ç§æ¿ç", 5496 "url": "/pages/privacy", 5497 "item_type": "page" 5498 }, 5499 5500 { 5501 "title": "æåæ¢æ¬¾", 5502 "url": "/pages/terms", 5503 "item_type": "page" 5504 }, 5505 5506 { 5507 "title": "éæè²¨æ¿ç", 5508 "url": "/pages/refund", 5509 "item_type": "page" 5510 } 5511 5512 5513 ] 5514 5515 } 5516 5517 5518 }; 5519 5520 if (isDynamicLoading) { 5521 window.DynamicLoading.setupComponent({ 5522 sectionId: '#footer', 5523 callbackData:{ 5524 section: {"type":"footer","visible":true,"settings":{"footer_link":"footer","display_facebook":true,"shop_facebook":"https://www.facebook.com/femobookTW","display_instagram":true,"shop_instagram":"https://www.instagram.com/femobook_taiwan/","display_line":true,"shop_line":"https://lin.ee/iOSBDQ1","display_youtube":true,"shop_youtube":"https://youtube.com/@femobook?si=6pEjEuT9H4d5BGk7","footer_link_arrangement":"display_x","display_facebook_fan_block":true},"block_order":["default_link_list","1715275917129_0","1715275918567_0"],"blocks":{"default_link_list":{"type":"link_list_setting","custom_name":"é¸å®","thumbnail":"list","draggable":true,"visible":true,"settings":{"dict_link_list_block_title":"éæ¼æå","footer_link":"éæ¼æå"}},"default_contact_info":{"type":"contact_info_setting","custom_name":"è¯çµ¡è³è¨","thumbnail":"contactInfo","draggable":true,"visible":true,"settings":{"dict_contact_info_block_title":"è¯çµ¡è³è¨","display_phone":"true","dict_phone_number":"02-22687300","display_fax_number":false,"dict_shop_fax_number":"0222345678","display_shop_email":"true","dict_shop_email":"[email protected]","display_shop_address":true,"dict_shop_address":"æ°åå¸åååä¸å¤®è·¯3段281å··11å¼9è12æ¨","display_office_time":"true","dict_shop_office_time":"10:00-17:00"}},"1715275917129_0":{"type":"link_list_setting","custom_name":"é¸å®","visible":true,"settings":{"dict_link_list_block_title":"è³¼ç©è³è¨","footer_link":"è³¼ç©è³è¨"}},"1715275918567_0":{"type":"link_list_setting","custom_name":"é¸å®","visible":true,"settings":{"dict_link_list_block_title":"æ¢æ¬¾æ¿ç","footer_link":"æ¢æ¬¾æ¿ç"}}},"custom_name":"é è ³"}, 5525 shop: { 5526 name: 'femobook', 5527 cyberbiz_link: 'https://www.cyberbiz.io?utm_source=poweredbycyberbiz', 5528 facebook_fan_page: 'https://www.facebook.com/707334345791024', 5529 }, 5530 menus: menusData, 5531 is_display_facebook_fan_block: true 5532 }, 5533 entryName:'renderFooterSection', 5534 source:'//cdn-general.cybassets.com/frontend/shop/footerSection-3a2e378145f8a165.js', 5535 }); 5536 } 5537 }); 5538</script>
5538 5539 5540<!-- cyb_snippet _tracking_code start --> 5541
5541<script> 5542 window.fbAsyncInit = function() { 5543 FB.init({ 5544 appId : '1087021145614748', 5545 xfbml : true, 5546 version : 'v24.0', 5547 }); 5548 }; 5549 (function(d, s, id){ 5550 var js, fjs = d.getElementsByTagName(s)[0]; 5551 if (d.getElementById(id)) {return;} 5552 js = d.createElement(s); 5553 js.id = id; 5554 js.src = 'https://connect.facebook.net/zh_TW/sdk.js'; 5555 fjs.parentNode.insertBefore(js, fjs); 5556 }(document, 'script', 'facebook-jssdk')); 5557 </script>
5557 5558 5559
5560<script> 5561 // for scupio 5562 if (document.querySelector("meta[name=\"scupio_mid\"]")) { 5563 mid = document.querySelector("meta[name=\"scupio_mid\"]").content; 5564 } else { 5565 mid = ""; 5566 } 5567 if (!window.is_scupio_sent && mid) { 5568 window._bwtm = window._bwtm || [] 5569 window._bwtm.push({ 5570 "mid": mid, 5571 "uid": "" 5572 }); 5573 } 5574</script>
5574 5575 5576<!-- cyb_snippet _tracking_code end --> 5577
5578<script> 5579 $(document).ready(function(){ 5580 if(window.location.pathname != '' && window.location.pathname != '/' ){ 5581 document.getElementById('index-recommendation').style.display = 'none' 5582 } 5583 }); 5584</script>
5584 5585 5586 5587 5588 <!-- Fast-Events --> 5589 <!-- cyb_snippet fast_events start --> 5590 5591
5592<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/fast_events-3a2e378145f8a165.js' type='text/javascript'></script>
5592 5593<link href='//cdn-general.cybassets.com/frontend/shop/beta_theme/css/fast_events-3a2e378145f8a165.css' rel='stylesheet' type='text/css' media='all' /> 5594 5595<!-- cyb_snippet fast_events end --> 5596 5597 <div class="bottom-right qk-pos--fixed"> 5598 <!-- gototop --> 5599 <div id="gototop" class="qk-display--none qk-text--center"> 5600 <a href="javascript:void(0)" class="qk-circle qk-circle--lg qk-pos--relative qk-text--center"> 5601 <i class="fas fa-chevron-up"></i> 5602 </a> 5603 </div> 5604 5605 <!-- popup --> 5606 5607 5608 5609 5610<div id="popup-wrapper" class="qk-display--none"></div> 5611 5612<template id="popup-template"> 5613 <div 5614 :class="status" 5615 v-if="hasContent" 5616 id="popup-section" 5617 > 5618 <transition name="backdrop"> 5619 <div 5620 v-if="shouldShowPopup" 5621 @click.capture="minifyPopup" 5622 id="popup-backdrop" 5623 class="qk-w--100vw qk-h--100vh qk-pos--fixed qk-t--0 qk-l--0 qk-tst" 5624 > 5625 </div> 5626 </transition> 5627 <transition name="onShow"> 5628 <div 5629 @click.self="showPopup" 5630 @transitionstart="updateGameStatus('start', this)" 5631 @transitionend="updateGameStatus('end', this)" 5632 class="popup-content qk-display--flex qk-align--center qk-tst qk-tst_dur--30 qk-tst_timing--ease_o" 5633 > 5634 <div 5635 v-for="block in blocks" 5636 :key="block.id" 5637 :class="[block.type, minifiedBlockClasses, block.settings.icon_size]" 5638 class="block qk-tst qk-tst_dur--30 qk-tst_timing--ease_o qk-of--auto" 5639 > 5640 <div v-if="block.type === 'image'" class="qk-pos--rel"> 5641 <img 5642 v-show="!shouldShowPopup" 5643 :src="block.settings.dict_icon_image_url" 5644 class="qk-tst qk-tst_dur--30 qk-tst_timing--ease_o" 5645 alt="popup button" 5646 > 5647 <a 5648 v-show="shouldShowPopup" 5649 :href="block.settings.dict_link" 5650 :target="block.settings.target" 5651 :rel="block.settings.rel" 5652 class="qk-display--flex qk-align--center" 5653 @click="linkClicked" 5654 > 5655 <picture> 5656 <source :srcset="block.settings.dict_mobile_image_url" media="(max-width: 576px)"> 5657 <source :srcset="block.settings.dict_tablet_image_url" media="(max-width: 992px)"> 5658 <img 5659 :src="block.settings.dict_image_url" 5660 class="qk-tst qk-tst_dur--30 qk-tst_timing--ease_o" 5661 alt="popup picture" 5662 /> 5663 </picture> 5664 </a> 5665 </div> 5666 <div v-if="block.type === 'video'"> 5667 <iframe 5668 :src="block.settings.dict_video_link" 5669 frameborder="0" 5670 class="qk-center--y qk-w--100 qk-h--100" 5671 ></iframe> 5672 </div> 5673 <div v-if="block.type === 'game'"> 5674 <div v-show="gameStatus === 'show'" :class="{ 'show-game': gameStatus === 'show' }"> 5675 <iframe 5676 class="cb-game-iframe iframe-loading" 5677 :src="getGameIframeSrc(block)" 5678 style="border: none;" 5679 > 5680 Loading 5681 </iframe> 5682 </div> 5683 <div v-show="gameStatus === 'minified'"> 5684 <img 5685 src="//cdn-general.cybassets.com/game_assets/game_minified_new.png" 5686 class="qk-h--100 qk-w--100" 5687 alt="game minified icon" 5688 /> 5689 </div> 5690 </div> 5691 <div 5692 v-if="block.type === 'carousel'" 5693 :id="`popup-carousel-${block.id}`" 5694 > 5695 </div> 5696 </div> 5697 </div> 5698 </transition> 5699 <transition name="backdrop"> 5700 <div 5701 v-if="shouldShowPopup" 5702 @click.capture="minifyPopup" 5703 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" 5704 > 5705 </div> 5706 </transition> 5707 </div> 5708</template> 5709
5710<script> 5711 $(document).ready(function() { 5712 const CDN_HOST = '//cdn-general.cybassets.com'; 5713 const section = {"type":"popup","visible":true,"blocks":{"popup_block_1":{"type":"image","visible":false,"settings":{"dict_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg5OTY3NzczX0ZFTU9CT09LXyjkuK3np4sp6YCj5YGH5YWs5ZGK5ZyWXzE5MjAuanBnLmpwZWciXV0.jpeg?sha=7eefa7ae65baf094","icon_size":"middle","dict_tablet_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg5OTY3Nzg3X0ZFTU9CT09LXyjkuK3np4sp6YCj5YGH5YWs5ZGK5ZyWXzk2MC5qcGcuanBlZyJdXQ.jpeg?sha=1fd544fc9fea809d","dict_mobile_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg5OTY3ODQ5X0ZFTU9CT09LXyjkuK3np4sp6YCj5YGH5YWs5ZGK5ZyWXzQ4MC5qcGcuanBlZyJdXQ.jpeg?sha=3a8144f6f4b91d03","dict_link":"","dict_icon_image_url":"//cdn-general.cybassets.com/media/W1siZiIsIjI4OTc2L2F0dGFjaGVkX3Bob3Rvcy8xNzg5OTY3ODA4X0ZFTU9CT09LXyjkuK3np4sp6YCj5YGH5YWs5ZGK5ZyWXzQ4MC5qcGcuanBlZyJdXQ.jpeg?sha=9704da9f633e7dd9","link_open_in_new_tab":false},"custom_name":"åç"}},"block_order":["popup_block_1"],"settings":{},"custom_name":"å½çªå»£å"}; 5714 var popupSection = Vue.createApp({ 5715 template: '#popup-template', 5716 delimiters: ['${', '}'], 5717 data() { 5718 const isOmniauthPage = ['omniauth_terms_agreement', 'omniauth_mobile/'] 5719 .some(path => location.pathname.includes(path)); 5720 return { 5721 status: 'minified', 5722 gameStatus: 'show', 5723 blocks: isOmniauthPage 5724 ? [] 5725 : section.block_order && section.block_order.reduce( 5726 function(acc, blockId) { 5727 const block = section.blocks[blockId]; 5728 if (block && block.visible) { 5729 acc.push({ 5730 ...block, 5731 id: blockId, 5732 }); 5733 } 5734 return acc; 5735 }, 5736 [], 5737 ), 5738 hasAddedGameScript: false, 5739 }; 5740 }, 5741 computed: { 5742 hasContent: function() { 5743 return !!(this.blocks && this.blocks.length > 0); 5744 }, 5745 minifiedBlockClasses: function() { 5746 return this.status === 'minified' ? 'qk-pointer--none qk-unselectable' : ''; 5747 }, 5748 shouldShowPopup: function() { 5749 return this.status === 'show'; 5750 } 5751 }, 5752 methods: { 5753 unhidePopup: function(storedStatus) { 5754 this.status = storedStatus; 5755 $('#popup-wrapper').removeClass('qk-display--none'); 5756 }, 5757 showPopup: function() { 5758 if (this.status !== 'show') { 5759 this.status = 'show'; 5760 this.saveStatus(this.status); 5761 } 5762 }, 5763 minifyPopup: function() { 5764 this.status = 'minified'; 5765 this.saveStatus('minified'); 5766 }, 5767 loadStatus: function() { 5768 return JSON.parse(localStorage.getItem('popupStatus')); 5769 }, 5770 saveStatus: function(status) { 5771 if (status) { 5772 localStorage.setItem('popupStatus', JSON.stringify({ 5773 status: status, 5774 setTime: new Date().getTime(), 5775 })); 5776 } 5777 }, 5778 linkClicked: function() { 5779 this.saveStatus('minified'); 5780 }, 5781 parseVideoLink: function(settings) { 5782 settings.dict_video_link = themeHelper.parseYtUrl(settings.dict_video_link); 5783 }, 5784 setupImageSrc: function (settings) { 5785 settings.dict_image_url = this.addCdnHost(settings.dict_image_url); 5786 if (settings.dict_tablet_image_url) { 5787 settings.dict_tablet_image_url = this.addCdnHost(settings.dict_tablet_image_url); 5788 } 5789 if (settings.dict_mobile_image_url) { 5790 settings.dict_mobile_image_url = this.addCdnHost(settings.dict_mobile_image_url); 5791 } 5792 settings.dict_icon_image_url = this.addCdnHost(settings.dict_icon_image_url) || settings.dict_image_url; 5793 }, 5794 addCdnHost: function(url) { 5795 if (!url) { 5796 return url; // only add cdn host if url is not empty 5797 } 5798 5799 try { 5800 new URL(url); 5801 return url; // already a valid url, cdn host not needed 5802 } catch { 5803 return `${CDN_HOST}${url}`; 5804 } 5805 }, 5806 initStatus: function() { 5807 let newStatus = 'show'; 5808 const popupStatus = this.loadStatus(); 5809 const currentTime = new Date().getTime(); 5810 const oneDay = 1000 * 60 * 60 * 24; 5811 const hasStoredStatus = popupStatus && currentTime - popupStatus.setTime < oneDay; 5812 const redirectedByGameLogin = !this.hasRedirectUrl() && this.redirectedByGameLogin(); 5813 const isLoggingIn = this.isLoggingIn(); 5814 const isCartPage = window.location.pathname.split('/').includes('carts'); 5815 5816 if (hasStoredStatus && !redirectedByGameLogin) { 5817 newStatus = popupStatus.status; 5818 } 5819 5820 if (isLoggingIn) { 5821 newStatus = 'minified'; 5822 } else { 5823 localStorage.removeItem('redirectedByPopup'); 5824 } 5825 5826 setTimeout(() => { 5827 this.status = newStatus; 5828 this.gameStatus = newStatus; 5829 this.saveStatus(newStatus); 5830 if(!isCartPage){ 5831 this.unhidePopup(newStatus); 5832 } 5833 }, 1000); 5834 }, 5835 initBlocks: function() { 5836 if (this.hasContent) { 5837 this.blocks.forEach(block => { 5838 switch(block.type) { 5839 case 'image': 5840 this.setupImageSrc(block.settings); 5841 5842 const isOpenInNewTab = block.settings.link_open_in_new_tab; 5843 if (isOpenInNewTab) { 5844 block.settings.target = '_blank'; 5845 block.settings.rel = 'noopener noreferrer'; 5846 } 5847 5848 break; 5849 case 'video': 5850 this.parseVideoLink(block.settings); 5851 break; 5852 } 5853 }) 5854 } 5855 }, 5856 getGameIframeSrc: function (block) { 5857 return `/games/${block.settings.dict_game_handle}` 5858 }, 5859 updateGameStatus: function(type, element) { 5860 if ( 5861 (type === 'start' && this.status === 'minified') 5862 || (type === 'end' && this.status === 'show') 5863 ) { 5864 this.gameStatus = this.status; 5865 } 5866 }, 5867 setupGameRedirects: function() { 5868 window.addEventListener('pagehide', () => { 5869 const isGameActive = document.body.getElementsByClassName('show-game').length; 5870 if (isGameActive) { 5871 localStorage.setItem('redirectedByPopup', 'true'); 5872 this.saveStatus('minified'); 5873 } 5874 }); 5875 }, 5876 hasRedirectUrl: function() { 5877 return (new URLSearchParams(location.search)).has('redirect_url'); 5878 }, 5879 redirectedByGameLogin: function() { 5880 return localStorage.getItem('redirectedByPopup'); 5881 }, 5882 isLoggingIn: function() { 5883 const loginRelatedPathnames = [ 5884 'account/signup', 5885 'account/login', 5886 'account/customer/password/new', 5887 'pages/terms' 5888 ]; 5889 return loginRelatedPathnames.some(path => location.pathname.includes(path)); 5890 } 5891 }, 5892 created: function() { 5893 this.initStatus(); 5894 this.initBlocks(); 5895 this.setupGameRedirects(); 5896 }, 5897 mounted: function() { 5898 this.blocks.forEach((block) => { 5899 if (block.type === 'carousel' && block.settings.dict_c
5899arousel) { 5900 renderCarousel(`#popup-carousel-${block.id}`, { 5901 title: block.settings.dict_carousel, 5902 CDN_HOST, 5903 onLinkClick: () => this.linkClicked(), 5904 }); 5905 } 5906 }); 5907 }, 5908 }); 5909 popupSection.mount('#popup-wrapper'); 5910 }); 5911</script>
5911 5912 5913 5914 5915 </div> 5916 5917 <!-- ajaxloading --> 5918 <div id="ajaxloading" class="qk-display--none qk-h--100vh qk-w--100vw qk-l--0 qk-t--0 qk-pos--fixed"> 5919 <div class="ajaxbody qk-pos--abs qk-l--50 qk-t--50 qk-text--center"> 5920 <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"> 5921 <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"/> 5922 <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 "/> 5923 <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"/> 5924 <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"/> 5925 <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"/> 5926 <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"/> 5927 </svg> 5928 <div class="success_msg title qk-display--none qk-pos--abs qk-l--0 qk-w--100 qk-text--center">å·²å å ¥è³¼ç©è»</div> 5929 <div class="success_update_msg title qk-display--none qk-pos--abs qk-l--0 qk-w--100 qk-text--center">å·²æ´æ°è³¼ç©è»</div> 5930 <div class="fail_msg title qk-display--none qk-pos--abs qk-l--0 qk-w--100 qk-text--center">網路ç°å¸¸ï¼è«éæ°æ´ç</div> 5931 </div> 5932 </div> 5933 5934
5934<script> 5935 if (typeof(check_order_token_cookie) !== 'function' || check_order_token_cookie()) { 5936 gtag('event', 'conversion', {"send_to":"AW-18440271667/3u9JCMzj7vQcELPugNlE"}); 5937 } 5938 </script>
5938 5939
5939<script src="//cdn-general.cybassets.com/assets/referral-code-trace-5fcbbe026a61c36b5f09a1615a1c168688205205d9d3e7ee854181a66b64a6ed.js"></script>
5939</body> 5940 5941 5942 5943
5943<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/sub_vendor-3a2e378145f8a165.js' type='text/javascript'></script>
5943 5944
5944<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/theme_helper-3a2e378145f8a165.js' type='text/javascript'></script>
5944 5945 5946 <!-- theme assets --> 5947
5947<script src='//cdn-general.cybassets.com/s/files/28976/theme/106642/assets/js/1714381120_b2d3ac7c_main.js?1714381120' type='text/javascript'></script>
5947 5948
5948<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/theme-3a2e378145f8a165.js' type='text/javascript'></script>
5948 5949 5950 <!-- for cache --> 5951
5951<script src='//cdn-general.cybassets.com/frontend/shop/beta_theme/js/cacheable-3a2e378145f8a165.js' type='text/javascript'></script>
5951 5952 <style> 5953 #login .qk-container .row .col .form_container p { 5954 color: #000 !important; 5955 } 5956 #customer_login label { 5957 color: #000 !important; 5958 } 5959 #customer_login span { 5960 color: #000 !important; 5961 } 5962 #register .qk-container .row .col .form_container p { 5963 color: #000 !important; 5964 } 5965 #create_customer label { 5966 color: #000 !important; 5967 } 5968 #create_customer span { 5969 color: #000 !important; 5970 } 5971 </style> 5972
5972<script> 5973 $(document).ready(function(){ 5974 var prevScrollpos = window.pageYOffset; 5975 $(window).on('scroll', function () { 5976 var currentScrollPos = window.pageYOffset; 5977 var headerHeight = $('#header').height(); 5978 if (prevScrollpos > headerHeight - 10 && currentScrollPos > prevScrollpos) { 5979 //$('#header').css('top',`${headerHeight * -1 }px`); 5980 $('#header').css('top','0px'); 5981 } else { 5982 $('#header').css('top','0px'); 5983 } 5984 prevScrollpos = currentScrollPos; 5985 }); 5986 $('.copyright.qk-text--footer_text.qk-bd--footer_text .qk-container').html('<span>Copyright ©Femobook Co., Ltd. 強嵿©æ¢°ç§ææéå ¬å¸ çµ±ç·¨ï¼90261878 All Rights Reserved.</span>'); 5987 5988 }); 5989 </script>
5989 5990
5990<script defer src="https://static.getbutton.io/widget/bundle.js?id=GALZO" ></script>
5990 5991</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.