{"title":"All S1","description":"","products":[{"product_id":"s1-32g","title":"MIOFIVE Dash Cam S1 4K UHD Front Dash Camera With Free 32GB Card","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #ffffff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 7.5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #DE7921;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\t\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n\t\u003cdiv class=\"description-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\t\n    \u003c!-- item4 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 可选搭配配件 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 产品规格对比 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_1.webp?v=1762504411',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_1_mb.webp?v=1762504423',\n            },\n            item2: [\n                {\n                    title: '4K Front',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_2.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_2_mb.webp?v=1762504423',\n                },\n                {\n                    title: '140°-Wide Angle',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_3.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_3_mb.webp?v=1762504423',\n                },\n                {\n                    title: 'OTA Updates',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_4.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_4_mb.webp?v=1762504423',\n                }\n            ],\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_5.webp?v=1762504411',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_5_mb.webp?v=1762504423',\n            },\n\t\t\titem4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_6.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_6_mb.webp?v=1762504423',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_7.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_7_mb.webp?v=1762504423',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_8.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_8_mb.webp?v=1762504423',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_9.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_9_mb.webp?v=1762504423',\n                }\n            ],\n\t\t\titem5: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_10.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_10_mb.webp?v=1762504423',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_11.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_11_mb.webp?v=1762504423',\n                }\n            ],\n            item6: [\n                {\n                    title: 'Package Contents',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_12.webp?v=1762504410',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_12_mb.webp?v=1762504423',\n                },\n                {\n                    title: 'Support Max 512GB',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_13.webp?v=1762504410',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_13_mb.webp?v=1762504423',\n                },\n                {\n                    title: 'Easy Installation',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_14.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_14_mb.webp?v=1762504423',\n                }\n            ],\n            item7: [\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_16.jpg?v=1729668807',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_16_mb.jpg?v=1729668807',\n                    link: '\/products\/s1-32g',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_17.jpg?v=1729668950',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_17_mb.jpg?v=1729668950',\n                    link: '\/products\/s1-ultra',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_18.jpg?v=1729668950',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_18_mb.jpg?v=1729668950',\n                    link: '\/products\/s1-pro',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                }\n            ],\n            item8: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands that use “interpolated 4K” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1+32G features native True 4K recording for genuine ultra-high-definition video quality.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/www.youtube.com\/watch?v=4Rwq_jY_87k\u0026t=710s' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G is equipped with advanced HDR Night Vision technology. This allows the camera to balance exposure in low-light and high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three convenient ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1+32G to your computer using a data cable, or insert the microSD card into your computer to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'professional-looking installation', link: 'https:\/\/youtu.be\/FchdtMLNq5c?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G includes a 32GB microSD card, so you can start recording right out of the box. It also supports storage expansion up to 512GB for extended recording capacity.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item7;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n    addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/2 产品功能 滑动图\n    function addItem2() {\n        addScrollHeaderItem(\"2\", descriptionData.item2);\n    }\n\t\n\tfunction addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\n    \/\/产品功能2\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/可选购配件\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\n    \/\/默认包装配件\n    function addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/滑动描述\n    function addScrollDescriptionItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            let imgOption = '\u003cdiv class=\"description-wrapper-item\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n            let textOption = addItem2Content(item);\n            let option2 = '';\n            if (window.matchMedia(\"(max-width: 767px)\").matches) {\n                option2 = imgOption + textOption;\n            } else {\n                let i = index % 2;\n                if (i == 0) {\n                    option2 = imgOption + textOption;\n                } else {\n                    option2 = textOption + imgOption;\n                }\n            }\n\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + option2 + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-header-scroll-container\"\u003e';\n        headerOption += '\u003cdiv class=\"description-header-flex-container\"\u003e';\n        headerOption += '\u003cdiv class=\"description-header-spacer\"\u003e' + \" \" + '\u003c\/div\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cdiv class=\"description-header-item\" id=\"description-header-button-' + descriptionId + '-' + id + '\"\u003e' + item.title + '\u003c\/div\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003cdiv class=\"description-header-spacer\"\u003e' + \" \" + '\u003c\/div\u003e';\n        headerOption += '\u003c\/div\u003e';\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 3;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 2;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(3, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item8.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\u003c\/script\u003e","brand":"S1+32G(Front 4K)","offers":[{"title":"Default Title","offer_id":47816642986288,"sku":"S1+32g","price":69.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_a92247cd-1444-4dff-a090-fa1deac47eae.webp?v=1779345515"},{"product_id":"s1-ultra","title":"S1 Ultra Dual 4K UHD Front and Rear Dash Camera","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #ffffff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 7.5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #DE7921\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n\t\t\t\t\t\t   \n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n    }\n\u003c\/style\u003e\n\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item2 主图 --\u003e\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 可选搭配配件 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item6 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 产品规格对比 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item9 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_1.webp?v=1762849924',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_1_mb.webp?v=1762850057'\n            },\n\t\t\titem2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_2.webp?v=1762849924',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_2_mb.webp?v=1762850058'\n            },\n            item3: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_3.webp?v=1762849924',\n                    title: '4K + 4K Dual Cameras',\n                    content: [\n                        'Capture every detail on the road with stunning front and rear 4K resolution.'\n\t\t\t\t\t]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_4.webp?v=1762849924',\n                    title: '140° Front + 115° Rear Wide-Angle View',\n                    content: [\n                        'Enjoy a broader field of vision and a more reliable eyewitness perspective.'\n                    ]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_5.webp?v=1762849924',\n                    title: '360° Adjustable Rear Camera',\n                    content: [\n                        'Adjust the rear camera freely for the best angle and full coverage.',\n\t\t\t\t\t]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_6.webp?v=1762849924',\n                    title: 'Seamless Loop Recording',\n                    content: [\n                        'Never worry about running out of storage—when the memory card is full, the oldest footage is automatically overwritten.'\n                    ]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_7.webp?v=1762849924',\n                    title: 'G-Sensor',\n                    content: [\n                        'In the event of a collision, the G-sensor instantly locks crucial footage to prevent accidental overwriting.'\n                    ]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_8.webp?v=1762849924',\n                    title: '24-Hour Parking Surveillance',\n                    content: [\n                        'Day or night, MIOFIVE dashcams keep a constant watch on your vehicle, even when you’re away. (Hardwire Kit Purchase separately)'\n                    ]\n                }\n            ],\n            item4: [\n                {\n                    title: '4K+4K Dashcam',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_9.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_9_mb.webp?v=1762850058',\n                },\n                {\n                    title: 'Wi-Fi\u0026App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_10.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_10_mb.webp?v=1762850058',\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_11.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_11_mb.webp?v=1762850058',\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_12.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_12_mb.webp?v=1762850058',\n                }\n            ],\n            item5: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_13.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_13_mb.webp?v=1762850058',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_14.webp?v=1762849925',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_14_mb.webp?v=1762850058',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_15.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_15_mb.webp?v=1762850058',\n                }\n            ],\n\t\t\titem6: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_16.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_16_mb.webp?v=1762850058',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_17.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_17_mb.webp?v=1762850058',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_18.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_18_mb.webp?v=1762850058',\n                }\n            ],\n\t\t\titem7: [\n                {\n                    title: 'CPL Filter',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_19.webp?v=1762849925',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_19_mb.webp?v=1762850058',\n                },\n                {\n                    title: 'Recommended Card',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_20.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_20_mb.webp?v=1762850058',\n                },\n            ],\n            item8: [\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_17.jpg?v=1729668950',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_17_mb.jpg?v=1729668950',\n                    link: '\/products\/s1-ultra',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_16.jpg?v=1729668807',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_16_mb.jpg?v=1729668807',\n                    link: '\/products\/s1-32g',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_18.jpg?v=1729668950',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_18_mb.jpg?v=1729668950',\n                    link: '\/products\/s1-pro',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                }\n            ],\n            item9: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands that use \\“interpolated 4K\\” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1 Ultra features native True 4K recording for genuine ultra-high-definition video quality.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/bxV5oAT_EHU?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=782' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is equipped with advanced HDR night vision technology, which balances exposure in low-light and high-contrast conditions to capture sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three convenient ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the built-in display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Ultra to your computer using a data cable, or insert the microSD card to view and back up recordings. Compatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. The parking monitor helps detect impacts and suspicious activity while your vehicle is parked.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'To enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra includes a 64GB microSD card, so you can start recording right out of the box. It also supports storage expansion up to 512GB for extended recording capacity.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item8;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\taddItem7();\n    addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\t\n\tfunction addItem2() {\n        addSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n    \/\/产品功能 滑动图\n    function addItem3() {\n        addScrollDescriptionItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/产品功能2 滑动图\n    function addItem4() {\n        addScrollHeaderItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/滑动图\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/可选购配件\n    function addItem6() {\n        addScrollItem(\"6\", descriptionData.item6);\n    }\n\t\n\t\/\/产品功能2 滑动图\n    function addItem7() {\n        addScrollHeaderItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/滑动描述\n    function addScrollDescriptionItem(descriptionId, list) {\n        const dots = [];\n\t\t\t\t\t\t\t\t\t\t \n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            let imgOption = '\u003cdiv class=\"description-wrapper-item\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n            let textOption = addItem2Content(item);\n            let option2 = '';\n            if (window.matchMedia(\"(max-width: 767px)\").matches) {\n                option2 = imgOption + textOption;\n            } else {\n                let i = index % 2;\n                if (i == 0) {\n                    option2 = imgOption + textOption;\n                } else {\n                    option2 = textOption + imgOption;\n                }\n            }\n\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + option2 + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n\t\t\t\t\t\t\t\t\t\t \n        let headerCount = list.length;\n        let selectIndex = 0;\n\t\t\t\t\t\t\t\t\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 3;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 2;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\t\t\t\t\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\t\t\t\t\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(3, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n\t\t\t\t\t\t\t\t\t\t \n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item9.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\n\n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option;\n        if (item.img_mb) {\n            option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option = '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\t\n\t\n\tfunction getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\n\u003c\/script\u003e","brand":"S1-Ultra(Front 4K+Rear 4K)","offers":[{"title":"Default Title","offer_id":48643969614128,"sku":"S1 Ultra-TUS","price":139.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/77ad065df0cdbabb08cf4475f046f61b.webp?v=1775704264"},{"product_id":"s1-pro","title":"MIOFIVE Dash Cam S1 Pro 4K+2K Dual Dash Camera","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\t\n\t\t\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n\n\t\u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\t\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-8\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item9 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-9\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item10 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item11 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_1.webp?v=1768877968',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_1_mb.webp?v=1768877985'\n\t\t\t},\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_2.webp?v=1768877968',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_2_mb.webp?v=1768877986'\n            },\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_3.webp?v=1768877968',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_3_mb.webp?v=1768877986'\n            },\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_4.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_4_mb.webp?v=1768877986'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_5.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_5_mb.webp?v=1768877986'\n                }\n            ],\n            item5: [\n                {\n                    title: '5GHz Wi-Fi',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_6.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_6_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Smart App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_7.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_7_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_8.webp?v=1768877969',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_8_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_9.jpg?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_9_mb.webp?v=1768877986'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_11.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_11_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Seamless Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_12.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_12_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Hardwire Kit Wiring',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_13.jpg?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_13_mb.webp?v=1768877986'\n                }\n            ],\n\t\t\titem7: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_14.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_14_mb.webp?v=1768877986'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_15.jpg?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_15_mb.webp?v=1768877986'\n                }\n            ],\n\t\t\titem8: {\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_16_mb.webp?v=1768877986'\n\t\t\t},\n            item9: {\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_17_mb.webp?v=1768877986'\n            },\n            item10: [\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_Pro.jpg?v=1739505290',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_Pro_mb.jpg?v=1739505290',\n                    link: '\/products\/s1-pro',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_32G.jpg?v=1739505290',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_32G_mb.jpg?v=1739505289',\n                    link: '\/products\/s1-32g',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_Ultra.jpg?v=1739505291',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_Ultra_mb.jpg?v=1739505290',\n                    link: '\/products\/s1-ultra',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                }\n            ],\n            item11: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands that use “interpolated 4K” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1 Pro features native True 4K recording for genuine ultra-high-definition video quality.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with advanced HDR Night Vision technology. This allows the camera to balance exposure in low-light and high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three convenient ways:\u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Pro to your computer using a data cable, or insert the microSD card into your computer to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro includes a 32GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item10;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\taddItem7();\n\taddItem8();\n\taddItem9();\n    addSpecification();\n    addFAQs();\n\n    \/\/item1\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/item2\n    function addItem2() {\n        addSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\t\n\t\/\/item3\n    function addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\t\n\t\/\/item4\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\t\n\t\/\/item5\n\tfunction addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/item6\n\tfunction addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n    \/\/item7\n    function addItem7() {\n        addScrollItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/item8\n    function addItem8() {\n        addSinglePicture2Item(\"description-item-8\", descriptionData.item8);\n    }\n\t\n\t\/\/item9\n    function addItem9() {\n        addSinglePicture2Item(\"description-item-9\", descriptionData.item9);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePicture2Item(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture2(item);\n    }\n\t\n\t\/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 3;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 2;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(3, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item11.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        return option;\n    }\n\t\n\t\/\/图片\n    function addPicture2(item) {\n\t\tlet option = '\u003cdiv class=\"description-invisible\"\u003e'\n\t\t\t+ '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img_mb + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e'\n\t\t\t+ '\u003c\/div\u003e';\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\u003c\/script\u003e","brand":"S1-Pro(Front 4K+Rear 2K)","offers":[{"title":"Default Title","offer_id":48644080959792,"sku":"Pro-US","price":46.49,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_01c7af6e-69cb-4494-813f-01b41508c455.webp?v=1775704255"},{"product_id":"s1-32g-uk","title":"MIOFIVE Dash Cam S1 4K UHD Front Dash Camera(32GB Card Included)(UK)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n    .description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n        min-width: 100%;\n        \/* 强制最小宽度为100% *\/\n        height: auto;\n        \/* 保持宽高比 *\/\n        display: block;\n        \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-invisible {\n        visibility: hidden;\n        display: none;\n    }\n\n    .description-bold-link {\n        font-weight: bold;\n        \/* 或者使用 font-weight: 700; *\/\n        text-decoration: none;\n        \/* 可选：去除下划线 *\/\n        color: #000000;\n        \/* 可选：设置链接颜色 *\/\n    }\n\n    \/* 鼠标悬停时保持加粗并改变颜色 *\/\n    .description-bold-link:hover {\n        color: #004499;\n        text-decoration: underline;\n    }\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\n        .description-invisible {\n            visibility: visible;\n            display: block;\n        }\n    }\n\u003c\/style\u003e\n\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item9 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_1.jpg?v=1778470087',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_1_mb.jpg?v=1778470096'\n            },\n            item2: [\n                {\n                    title: 'Speed Camera Alert',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_2.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_2_mb.webp?v=1762942734'\n                }\n            ],\n            item3: [\n                {\n                    title: 'Screen Display',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_3.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_3_mb.webp?v=1762942734'\n                },\n                {\n                    title: 'Easy to set up',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_4.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_4_mb.webp?v=1762942734'\n                }\n            ],\n            item4: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_5.webp?v=1762942625',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_5_mb.webp?v=1762942735'\n            },\n            item5: [\n                {\n                    title: 'Wi-Fi \u0026 Free APP Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_6.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_6_mb.webp?v=1762942734'\n                },\n                {\n                    title: 'GPS Tracking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_7.webp?v=1762942627',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_7_mb.webp?v=1762942735'\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_8.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_8_mb.webp?v=1762942735'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_9.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_9_mb.webp?v=1762942735'\n                },\n                {\n                    title: 'Free 32GB SD Card',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_10.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_10_mb.webp?v=1762942735'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Hour Parking Mode',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_11.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_11_mb.webp?v=1762942735'\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_12.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_12_mb.webp?v=1762942734'\n                }\n            ],\n            item7: [\n                {\n                    title: 'What’s In The Box',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_13.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_13_mb.webp?v=1762942734'\n                },\n                {\n                    title: 'Easy Installation',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_14.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_14_mb.webp?v=1762942734'\n                }\n            ],\n            item8: [\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G_mb.jpg?v=1739441640',\n                    link: '\/products\/s1-32g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1 Pro+64G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G.jpg?v=1779871603',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G_mb.jpg?v=1779871603',\n                    link: '\/products\/miofive-pro-64g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra_mb.jpg?v=1739441641',\n                    link: '\/products\/s1-ultra-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                \/\/ {\n                \/\/     title: 'S1',\n                \/\/     img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1.jpg?v=1739441641',\n                \/\/     img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_mb.jpg?v=1739441641',\n                \/\/     link: '\/products\/s1-uk',\n                \/\/     specifications: [\n                \/\/         '4K(3840x2160) @30fps',\n                \/\/         '-',\n                \/\/         '3\" IPS',\n                \/\/         '2.4G \u0026 5G',\n                \/\/         'Bluetooth 4.2',\n                \/\/         '-'\n                \/\/     ]\n                \/\/ }\n            ],\n            item9: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n                            description: 'Yes. Unlike many brands that use “interpolated 4K” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1+32G features native True 4K recording for genuine ultra-high-definition video quality.',\n                            keywords: [\n                                { text: 'True 4K', link: 'https:\/\/www.youtube.com\/watch?v=4Rwq_jY_87k\u0026t=710s' }\n                            ]\n                        }\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n                        {\n                            description: 'Yes. The S1+32G is equipped with advanced HDR Night Vision technology. This allows the camera to balance exposure in low-light and high-contrast conditions, capturing sharper details and clearer license plates.',\n                            keywords: []\n                        }\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n                        {\n                            description: 'You can access and manage your recordings in three convenient ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n                            keywords: [\n                                { text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n                                { text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n                            ]\n                        },\n                        {\n                            description: '• On the Dash Cam: Review footage directly on the integrated display.',\n                            keywords: []\n                        },\n                        {\n                            description: '• On Your Computer: Connect the S1+32G to your computer using a data cable, or insert the microSD card into your computer to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n                            keywords: []\n                        }\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n                        {\n                            description: 'Yes. The S1+32G uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n                            keywords: []\n                        }\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n                            description: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n                            keywords: [\n                                { text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/usb-c-hwk2' },\n                                { text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable-uk' }\n                            ]\n                        }\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n                        {\n                            description: 'Yes. The S1+32G is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n                            keywords: [\n                                { text: 'professional-looking installation', link: 'https:\/\/youtu.be\/FchdtMLNq5c?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA' }\n                            ]\n                        }\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n                        {\n                            description: 'Yes. The S1+32G includes a 32GB microSD card, so you can start recording right out of the box. It also supports storage expansion up to 512GB for extended recording capacity.',\n                            keywords: []\n                        }\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item8;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\n    addSpecification();\n    addFAQs();\n\n    \/\/1\n    function addItem1() {\n        addSinglePictureItem('description-item-1', descriptionData.item1);\n    }\n\n    \/\/2\n    function addItem2() {\n        \/\/addSinglePictureItem('description-item-2', descriptionData.item2);\n        addScrollHeaderItem(\"2\", descriptionData.item2);\n    }\n\n    \/\/3\n    function addItem3() {\n        addScrollHeaderItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/4\n    function addItem4() {\n        addSinglePictureItem('description-item-4', descriptionData.item4);\n    }\n\n    \/\/5\n    function addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\n    \/\/6\n    function addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n    \/\/7\n    function addItem7() {\n        addScrollHeaderItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = list.length \u003e 1 ? previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next') : '';\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            \/\/ + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + addPicture(item)\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item9.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e'\n\n                    + renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\n\n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\n    function renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\n        if (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n    function getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\u003c\/script\u003e","brand":"S1+32G(Front 4K)","offers":[{"title":"Default Title","offer_id":49462180151600,"sku":"S1+32G-TUK","price":75.42,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_1.webp?v=1779344134"},{"product_id":"s1-ultra-uk","title":"S1 Ultra Dual 4K UHD Front and Rear Dash Camera(UK)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 25px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 可选搭配配件 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 产品规格对比 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_1.webp?v=1763104545',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_1_mb.webp?v=1763105028'\n            },\n            item2: [\n                {\n                    title: 'Speed Camera Alert',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_2.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_2_mb.webp?v=1763105028'\n                },\n                {\n                    title: 'OTA',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_3.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_3_mb.webp?v=1763105028'\n                }\n            ],\n            item3: [\n                {\n                    title: 'Dual 4K Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_4.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_4_mb.webp?v=1763105028'\n                },\n                {\n                    title: '5G Wi-Fi \u0026 App',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_5.webp?v=1763104880',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_5_mb.webp?v=1763105028'\n\n                },\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_6.webp?v=1763104880',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_6_mb.webp?v=1763105028'\n                },\n                {\n                    title: 'Superior Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_7.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_7_mb.webp?v=1763105028'\n                }\n            ],\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_8.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_8_mb.webp?v=1763105028'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_9.webp?v=1763104545',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_9_mb.webp?v=1763105028'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_10.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_10_mb.webp?v=1763105028'\n                }\n            ],\n            item5: [\n                {\n                    title: 'Rear Camera Connect',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_11.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_11_mb.webp?v=1763105028'\n                },\n                {\n                    title: 'What’s in the Box',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_12.webp?v=1763104545',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_12_mb.webp?v=1763105027'\n                },\n                {\n                    title: 'Easy Installation',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_13.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_13_mb.webp?v=1763105028'\n                },\n                {\n                    title: 'Accessories Recommendation',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_14.webp?v=1763104545',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_14_mb.webp?v=1763105028'\n                }\n            ], \n            item6: [\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra_mb.jpg?v=1739441641',\n                    link: '\/products\/s1-ultra-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                {\n                    title: 'S1 Pro+64G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G.jpg?v=1779871603',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G_mb.jpg?v=1779871603',\n                    link: '\/products\/miofive-pro-64g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                \/\/ {\n                \/\/     title: 'S1',\n                \/\/     img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1.jpg?v=1739441641',\n                \/\/     img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_mb.jpg?v=1739441641',\n                \/\/     link: '\/products\/s1-uk',\n                \/\/     specifications: [\n                \/\/         '4K(3840x2160) @30fps',\n                \/\/         '-',\n                \/\/         '3\" IPS',\n                \/\/         '2.4G \u0026 5G',\n                \/\/         'Bluetooth 4.2',\n                \/\/         '-'\n                \/\/     ]\n                \/\/ },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G_mb.jpg?v=1739441640',\n                    link: '\/products\/s1-32g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                }\n            ],\n            item7: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands that use \\“interpolated 4K\\” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1 Ultra features native True 4K recording for genuine ultra-high-definition video quality.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/bxV5oAT_EHU?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=782' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is equipped with advanced HDR night vision technology, which balances exposure in low-light and high-contrast conditions to capture sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the built-in display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Ultra to your computer using a data cable, or insert the microSD card to view and back up recordings. Compatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n\t   \n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. The parking monitor helps detect impacts and suspicious activity while your vehicle is parked.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'To enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/usb-c-hwk2' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable-uk' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra includes a 64GB microSD card, so you can start recording right out of the box. It also supports storage expansion up to 512GB for extended recording capacity.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item6;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/2 产品功能 滑动图\n    function addItem2() {\n        addScrollHeaderItem(\"2\", descriptionData.item2);\n    }\n\n    \/\/产品功能2\n    function addItem3() {\n        addScrollHeaderItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/可选购配件\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/默认包装配件\n    function addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n           index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            \/\/ + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item7.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\n        if (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\t\n\tfunction getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\n\u003c\/script\u003e","brand":"S1-Ultra(Front 4K+Rear 4K)","offers":[{"title":"Default Title","offer_id":49465896567088,"sku":"S1 Ultra-TUK","price":138.37,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_1_4956ab5d-127f-4462-bbcb-637b060d302c.webp?v=1779344298"},{"product_id":"s1-e","title":"MIOFIVE Dash Cam S1 E 4K Front Dash Camera","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #0000;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #232323;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\t\t\t\t\t\t\t\t\t\t\t\t \n\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t\t \n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\n\u003cdiv class=\"description-content\"\u003e\n\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e. Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_1.webp?v=1762767605',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_1_mb.webp?v=1762767592'\n            },\n            item2: [\n                {\n                    title: 'Crystal 4K Resolution',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_2.webp?v=1762767605',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_2_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'Built-In WiFi 6',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_3.webp?v=1762767605',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_3_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'GPS Route Tracking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_4.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_4_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_5.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_5_mb.webp?v=1762767592'\n                }\n            ],\n            item3: [\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_6.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_6_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_7.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_7_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'G-Sensor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_8.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_8_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'USB Type-C Compatibility',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_9.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_9_mb.webp?v=1762767592'\n                }\n            ],\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_10.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_10_mb.webp?v=1762767592'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_11.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_11_mb.webp?v=1762767592'\n                }\n            ],\n            item5: [\n                {\n                    title: 'High Image Sensor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_12.webp?v=1762767607',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_12_mb.webp?v=1741854098'\n                },\n                {\n                    title: 'Supercapacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_13.webp?v=11762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_13_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'Package Contents',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_14.webp?v=1762767605',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_14_mb.webp?v=1762767592'\n                }\n            ],\n            item6: [\n                {\n                    title: '① Is it safe to use in hot weather?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 E uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely even in extreme summer temperatures.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Does it record while my car is parked?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three convenient ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 E to your computer using a data cable, or insert the microSD card into your computer to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 E is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. A microSD card is required and sold separately. High-endurance microSD cards are recommended for continuous recording and long-term reliability.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n        return data;\n    }\n\n    const descriptionData = initData();\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addFAQs();\n\n    function addItem1() {\n        const descriptionItem1 = document.getElementById('description-item-1');\n        descriptionItem1.innerHTML = addPicture(descriptionData.item1);\n    }\n\n    function addItem2() {\n        const headers = [];\n        let list = descriptionData.item2;\n        let headerCount = list.length;\n        let selectIndex = 0;\n        const descriptionId = 2;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    function addItem3() {\n        const headers = [];\n        let list = descriptionData.item3;\n        let headerCount = list.length;\n        let selectIndex = 0;\n        const descriptionId = 3;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    function addItem4() {\n        const dots = [];\n        let list = descriptionData.item4;\n        let dotCount = list.length;\n        let selectIndex = 0;\n        const descriptionId = 4;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    function addItem5() {\n        const headers = [];\n        let list = descriptionData.item5;\n        let headerCount = list.length;\n        let selectIndex = 0;\n        const descriptionId = 5;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    function addFAQs() {\n        let list = descriptionData.item6;\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        list.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option;\n        if (item.img_mb) {\n            option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option = '\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n    function getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\u003c\/script\u003e","brand":"S1 E(Front 4K)","offers":[{"title":"Default Title","offer_id":49519747596592,"sku":"S1 E-US","price":59.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_1.webp?v=1775704153"},{"product_id":"miofive-s1-32g-au","title":"MIOFIVE Dash cam S1 4K UHD Single Dash Camera(32GB SD Card Included)(AU)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\t\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 0;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\t\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        height: 30px;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 28px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n\t\u003cdiv class=\"description-item\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 产品规格对比 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_1.webp?v=1762497648',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_1_mb.webp?v=1762497662'\n            },\n            item2: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_2.webp?v=1762497650',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_2_mb.webp?v=1762497663'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_3.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_3_mb.webp?v=1762497662'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_4.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_4_mb.webp?v=1762497663'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_5.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_5_mb.webp?v=1762497663'\n                }\n            ],\n            item3: [\n                {\n                    title: 'Al Technology',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_6.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_6_mb.webp?v=1762497663'\n                },\n                {\n                    title: 'G-Sensor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_7.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_7_mb.webp?v=1762497663'\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_8.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_8_mb.webp?v=1762497663'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_9.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_9_mb.webp?v=1762497663'\n                }\n            ],\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_10.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_10_mb.webp?v=1762497663'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_11.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_11_mb.webp?v=1762497663'\n                }\n            ],\n            item5: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_12.webp?v=1762497648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_12_mb.webp?v=1762497663'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_13.webp?v=1762497648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_13_mb.webp?v=1762497664'\n                }\n            ],\n\t\t\titem6: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_14.webp?v=1778814852',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_14_mb.webp?v=1778814845'\n            },\n            item7: [\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G_mb.jpg?v=1749194648',\n                    link: '\/en-au\/products\/miofive-s1-32g-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/en-au\/products\/miofive-s1-ultra-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/en-au\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/en-au\/products\/miofive-s1-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item8: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1+32G uses Native True 4K technology. ',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/4Rwq_jY_87k?t=710' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1+32G to your computer using a data cable, or insert the microSD card to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-type-c-hardwire-kit' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1+32G is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'professional-looking install', link: 'https:\/\/youtu.be\/FchdtMLNq5c?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G  includes a 32GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item7;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\t\n    \/\/addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/2 产品功能 滑动图\n    function addItem2() {\n\t\taddScrollItem(\"2\", descriptionData.item2);\n    }\n\t\n\tfunction addItem3() {\n        addScrollHeaderItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/产品功能2\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/可选购配件\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\t\n\tfunction addItem6() {\n        addSinglePictureItem(\"description-item-6\", descriptionData.item6);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n        headerOption += '\u003c\/div\u003e';\n\t\t\t\t\t\t\t\t \n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                \n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\t\t\t\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(3, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\t\t\t\t\t  \n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + addPicture(item)\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item8.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\t\t\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\n        if (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\n\u003c\/script\u003e","brand":"S1+32G(Front 4K)","offers":[{"title":"Default Title","offer_id":49851344781616,"sku":"S1+32G-AU","price":73.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Frame_13.jpg?v=1779353821"},{"product_id":"miofive-s1-pro-au","title":"MIOFIVE Dash cam S1 Pro 4K+2K Dual Dash Camera(AU)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\t\n\t\t\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n\n\t\u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\t\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-8\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item9 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-9\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item10 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item11 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_1.webp?v=1768880130',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_1_mb.webp?v=1768880148'\n\t\t\t},\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_2.webp?v=1768880130',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_2_mb.webp?v=1768880149'\n            },\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_3.webp?v=1768880130',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_3_mb.webp?v=1768880149'\n            },\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_4.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_4_mb.webp?v=1768880149'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_5.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_5_mb.webp?v=1768880149'\n                }\n            ],\n            item5: [\n                {\n                    title: '5GHz Wi-Fi',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_6.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_6_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Smart App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_7.webp?v=1768795030',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_7_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_8.webp?v=1768795030',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_8_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_9.jpg?v=1768795030',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_9_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Speed Camera Alert',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_10.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_10_mb.webp?v=1768880149'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_11.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_11_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Seamless Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_12.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_12_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Hardwire Kit Wiring',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_13.jpg?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_13_mb.webp?v=1768880149'\n                }\n            ],\n\t\t\titem7: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_14.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_14_mb.webp?v=1768880149'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_15.jpg?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_15_mb.webp?v=1768880149'\n                }\n            ],\n\t\t\titem8: {\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_16_mb.webp?v=1768880149'\n\t\t\t},\n            item9: {\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_17_mb.webp?v=1768880149'\n            },\n            item10: [\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-ultra-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-32g-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item11: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1 Pro uses Native True 4K technology.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways:\u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Pro to your computer using a data cable, or insert the microSD card to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-type-c-hardwire-kit' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1 Pro is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro includes a 32GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item10;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\taddItem7();\n\taddItem8();\n\taddItem9();\n    addSpecification();\n    addFAQs();\n\n    \/\/item1\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/item2\n    function addItem2() {\n        addSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\t\n\t\/\/item3\n    function addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\t\n\t\/\/item4\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\t\n\t\/\/item5\n\tfunction addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/item6\n\tfunction addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n    \/\/item7\n    function addItem7() {\n        addScrollItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/item8\n    function addItem8() {\n        addSinglePicture2Item(\"description-item-8\", descriptionData.item8);\n    }\n\t\n\t\/\/item9\n    function addItem9() {\n        addSinglePicture2Item(\"description-item-9\", descriptionData.item9);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePicture2Item(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture2(item);\n    }\n\t\n\t\/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(3, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item11.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        return option;\n    }\n\t\n\t\/\/图片\n    function addPicture2(item) {\n\t\tlet option = '\u003cdiv class=\"description-invisible\"\u003e'\n\t\t\t+ '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img_mb + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e'\n\t\t\t+ '\u003c\/div\u003e';\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\u003c\/script\u003e","brand":"S1-Pro(Front 4K+Rear 2K)","offers":[{"title":"Default Title","offer_id":49851458322736,"sku":"S1 Pro-AU","price":93.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Pro.webp?v=1780455341"},{"product_id":"miofive-s1-ultra-au","title":"S1 Ultra Dual 4K UHD Front and Rear Dash Camera(AU)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n\t.description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 25px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 0;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        height: 30px;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 28px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 产品规格对比 --\u003e \n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_1.webp?v=1762496455',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_1_mb.webp?v=1762496468'\n            },\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_2.webp?v=1762496455',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_2_mb.webp?v=1762496469'\n            },\n            item3: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_3.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_3_mb.webp?v=1762496469'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_4.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_4_mb.webp?v=1762496469'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_5.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_5_mb.webp?v=1762496470'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_6.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_6_mb.webp?v=1762496470'\n                }\n            ],\n            item4: [\n                {\n                    title: '24H Parking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_7.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_7_mb.webp?v=1762496469'\n                },\n                {\n                    title: 'Collision Detection',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_8.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_8_mb.webp?v=1762496469'\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_9.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_9_mb.webp?v=1762496469'\n                }\n            ],\n            item5: [\n                {\n\t\t\t\t\t\t\t\t\t\t\t\t\t \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_10.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_10_mb.webp?v=1762496469'\n                },\n                {\n\t\t\t\t\t\t\t\t\t  \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_11.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_11_mb.webp?v=1762496469'\n                },\n                {\n\t\t\t\t\t\t\t\t\t\t\t\t\t \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_12.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_12_mb.webp?v=1762496469'\n                },\n                {\n\t\t\t\t\t\t\t\t\t\t\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_13.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_13_mb.webp?v=1762496469'\n                }\n            ],\n            item6: [\n                {\n                    title: 'S1 Ultra',\t\t\t\t\t\t   \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-ultra-au',\n                    specifications: [\n\t\t\t\t\t\t\t\t\t\t\t   \n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n\t\t\t\t\t\t\t\t\t\t\t   \n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-32g-au',\n                    specifications: [\n                        '3\" IPS Screen',\n\t\t\t\t\t\t\t\t\t\t\t   \n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-au',\n                    specifications: [\n\t\t\t\t\t\t\t\t\t\t\t   \n\t\t\t\t\t\t\t\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item7: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1 Ultra uses Native True 4K technology. ',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/bxV5oAT_EHU?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=782' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra  is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways:',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Ultra to your computer using a data cable, or insert the microSD card to view and back up recordings. Compatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'To enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-type-c-hardwire-kit' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1 Ultra is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra includes a 64GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item6;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3()\n    addItem4();\n    addItem5();\n\t\n    addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n\t\taddSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/2 产品功能 滑动图\n    function addItem2() {\n\t\taddSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\t\n\t\/\/产品功能2\n    function addItem3() {\n        addScrollItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/可选购配件\n    function addItem4() {\n        addScrollHeaderItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/默认包装配件\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                \n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/默认包装配件\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(3, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\t\t\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\t\t\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + addPicture(item)\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item7.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\t\t\n\t\tif (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\t\n\tfunction getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\n\u003c\/script\u003e","brand":"S1-Ultra(Front 4K+Rear 4K)","offers":[{"title":"Default Title","offer_id":49851461271856,"sku":"S1 Ultra-AU","price":132.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Ultra.webp?v=1780455341"},{"product_id":"miofive-s1-pro-ca","title":"MIOFIVE Dash Cam S1 Pro 4K+2K Dual Dash Camera(CA)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n    .description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\t\n\t\t\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n\t\t\tdisplay: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n\n\t\u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\t\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-8\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item9 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-9\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item10 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item11 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_1.webp?v=1768878740',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_1_mb.webp?v=1768877985'\n\t\t\t},\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_2.webp?v=1768878741',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_2_mb.webp?v=1768877986'\n            },\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_3.webp?v=1768878741',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_3_mb.webp?v=1768877986'\n            },\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_4.webp?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_4_mb.webp?v=1768877986'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_5.webp?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_5_mb.webp?v=1768877986'\n                }\n            ],\n            item5: [\n                {\n                    title: '5GHz Wi-Fi',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_6.webp?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_6_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Smart App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_7.webp?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_7_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_8.webp?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_8_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_9.jpg?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_9_mb.webp?v=1768877986'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_11.webp?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_11_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Seamless Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_12.webp?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_12_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Hardwire Kit Wiring',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_13.jpg?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_13_mb.webp?v=1768877986'\n                }\n            ],\n\t\t\titem7: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_14.webp?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_14_mb.webp?v=1768877986'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_15.jpg?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_15_mb.webp?v=1768877986'\n                }\n            ],\n\t\t\titem8: {\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_16_mb.webp?v=1768803752'\n\t\t\t},\n            item9: {\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_17_mb.webp?v=1768877986'\n            },\n            item10: [\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-ultra-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-32g-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item11: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1 Pro uses Native True 4K technology.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways:\u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Pro to your computer using a data cable, or insert the microSD card to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit-ca' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1 Pro is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro includes a 32GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item10;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\taddItem7();\n\taddItem8();\n\taddItem9();\n    \/\/addSpecification();\n    addFAQs();\n\n    \/\/item1\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/item2\n    function addItem2() {\n        addSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\t\n\t\/\/item3\n    function addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\t\n\t\/\/item4\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\t\n\t\/\/item5\n\tfunction addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/item6\n\tfunction addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n    \/\/item7\n    function addItem7() {\n        addScrollItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/item8\n    function addItem8() {\n        addSinglePicture2Item(\"description-item-8\", descriptionData.item8);\n    }\n\t\n\t\/\/item9\n    function addItem9() {\n        addSinglePicture2Item(\"description-item-9\", descriptionData.item9);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePicture2Item(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture2(item);\n    }\n\t\n\t\/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(3, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item11.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        return option;\n    }\n\t\n\t\/\/图片\n    function addPicture2(item) {\n\t\tlet option = '\u003cdiv class=\"description-invisible\"\u003e'\n\t\t\t+ '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img_mb + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e'\n\t\t\t+ '\u003c\/div\u003e';\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\u003c\/script\u003e","brand":"S1 Pro-CA(4K+2K)","offers":[{"title":"Default Title","offer_id":49851724464432,"sku":"S1 Pro-AU","price":97.6,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_01c7af6e-69cb-4494-813f-01b41508c455.webp?v=1775704255"},{"product_id":"miofive-s1-ultra-ca","title":"S1 Ultra Dual 4K UHD Front and Rear Dash Camera(CA)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item8 产品规格对比 --\u003e \n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item9 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_1.jpg?v=1750928838',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_1_mb.jpg?v=1750928820'\n            },\n            item2: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_2.jpg?v=1750928843',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_2_mb.jpg?v=1750928829',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_3.jpg?v=1750928841',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_3_mb.jpg?v=1750928825',\n                }\n            ],\n            item3: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_4.jpg?v=1750928843',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_4_mb.jpg?v=1750928829',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_5.jpg?v=1750928841',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_5_mb.jpg?v=1750928827',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_6.jpg?v=1750928843',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_6_mb.jpg?v=1750928832',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_7.jpg?v=1750928842',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_7_mb.jpg?v=1750928829',\n                }\n            ],\n            item4: [\n                {\n                    title: '24H Parking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_8.jpg?v=1750928838',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_8_mb.jpg?v=1750928823',\n                },\n                {\n                    title: 'Collision Detection',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_9.jpg?v=1750928841',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_9_mb.jpg?v=1750928827',\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_10.jpg?v=1750928842',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_10_mb.jpg?v=1750928825',\n                }\n            ],\n            item5: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_11.jpg?v=1750928840',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_11_mb.jpg?v=1750928823',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_12.jpg?v=1750928841',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_12_mb.jpg?v=1750928826',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_13.jpg?v=1750928840',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_13_mb.jpg?v=1750928825',\n                }\n            ],\n            item6: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_14.jpg?v=1750928838',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_14_mb.jpg?v=1750928821',\n            },\n            item7: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_15.jpg?v=1750928838',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_15_mb.jpg?v=1750928823',\n            },\n\t\t\titem8: [\n                {\n                    title: 'S1 Ultra',\t\t\t\t\t\t   \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-ultra-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item9: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1 Ultra uses Native True 4K technology. ',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/bxV5oAT_EHU?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=782' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra  is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways:',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Ultra to your computer using a data cable, or insert the microSD card to view and back up recordings. Compatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'To enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit-ca' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1 Ultra is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra includes a 64GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item8;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\n\t\/\/addSpecification();\n    addFAQs();\n\t\n    \/\/item1\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/item2\n    function addItem2() {\n        addScrollItem(\"2\", descriptionData.item2);\n    }\n\n    \/\/item3\n    function addItem3() {\n        addScrollItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/item4\n    function addItem4() {\n        addScrollHeaderItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/item5\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\n    \/\/item6\n    function addItem6() {\n        addSinglePictureItem(\"description-item-6\", descriptionData.item6);\n    }\n\n    \/\/item7\n    function addItem7() {\n        addSinglePictureItem(\"description-item-7\", descriptionData.item7);\n    }\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\t\t\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n\t\t\tindex = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\t\t\t\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n\t\t\tindex = Math.round(index);\n\t\t\t\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 3;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 2;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\t\t\t\t\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\t\t\t\t\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(3, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\t\t   \n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + addPicture(item)\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item9.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\n\t\t\t\t\t\n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\t\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\t\t\n\t\tif (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\t\n\tfunction getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\u003c\/script\u003e","brand":"S1 Ultra-CA(4K+4K)","offers":[{"title":"Default Title","offer_id":49851729576240,"sku":"S1 Ultra-TAU","price":116.35,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Ultra.webp?v=1780455341"},{"product_id":"miofive-pro-64g-uk","title":"Miofive 4K+2K Dual Dash Cam Front and Rear (64GB Card Included)(UK)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\t\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\t\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n\t\t\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item9 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_1.webp?v=1778489106',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_1_mb.webp?v=1778489115'\n            },\n            item2: [\n                {\n                    title: '4K+2K',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_2.webp?v=1775558607',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_2_mb.webp?v=1775558546'\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_3.webp?v=1775558607',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_3_mb.webp?v=1775558546'\n                },\n\t\t\t\t{\n\t\t\t\t\ttitle: 'Fast, Stable Connection',\n\t\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_4.webp?v=1775558605',\n\t\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_4_mb.webp?v=1775558546'\n\t\t\t\t},\n\t\t\t\t{\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_5.webp?v=1775558607',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_5_mb.webp?v=1775558546'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_6.webp?v=1775558607',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_6_mb.webp?v=1775558546'\n                }\n            ],\n            item3: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_7.webp?v=1775558605',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_7_mb.webp?v=1775558546'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_8.webp?v=1775558608',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_8_mb.webp?v=1775558546'\n                }\n            ],\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_9.webp?v=1775558607',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_9_mb.webp?v=1775558546'\n                },\n\t\t\t\t{\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_10.webp?v=1775558607',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_10_mb.webp?v=1775558546'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_11.webp?v=1775558604',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_11_mb.webp?v=1775558546'\n                }\n            ],\n            item5: [\n                {\n                    title: 'Packing List',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_12.webp?v=1775558605',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_12_mb.webp?v=1775558546'\n                },\n                {\n                    title: 'Simple Wiring \u0026 Setup',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_13.webp?v=1775558602',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_13_mb.webp?v=1775558546'\n                },\n\t\t\t\t{\n                    title: 'User-Focused Design',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_14.webp?v=1775558602',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_14_mb.webp?v=1775558546'\n                },\n                {\n                    title: 'With CPL Filter',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_15.webp?v=1775558603',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_15_mb.webp?v=1775558546'\n                }\n            ],\n            item6: {\n\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_16.webp?v=1778489078',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_16_mb.webp?v=1778489083'\n\t\t\t},\n\t\t\titem7: {\n\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_17.webp?v=1775558607',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_64_Description_17_mb.webp?v=1775558546'\n\t\t\t},\n            item8: [\n                {\n                    title: 'S1 Pro+64GB',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G.jpg?v=1779871603',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G_mb.jpg?v=1779871603',\n                    link: '\/products\/miofive-pro-64g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n\t\t\t\t{\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G_mb.jpg?v=1739441640',\n                    link: '\/products\/s1-32g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra_mb.jpg?v=1739441641',\n                    link: '\/products\/s1-ultra-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                \/\/ {\n                \/\/     title: 'S1',\n                \/\/     img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1.jpg?v=1739441641',\n                \/\/     img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_mb.jpg?v=1739441641',\n                \/\/     link: '\/products\/s1-uk',\n                \/\/     specifications: [\n                \/\/         '4K(3840x2160) @30fps',\n                \/\/         '-',\n                \/\/         '3\" IPS',\n                \/\/         '2.4G \u0026 5G',\n                \/\/         'Bluetooth 4.2',\n                \/\/         '-'\n                \/\/     ]\n                \/\/ }\n            ],\n            item9: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many dash cams that use interpolated 4K through software upscaling, the MIOFIVE S1 Pro features native True 4K recording for sharper image quality and more detailed footage.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with advanced HDR and Night Vision technology, helping deliver clearer footage and improved license plate visibility in low-light and nighttime driving conditions.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three convenient ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Pro to your computer using a data cable, or insert the microSD card into your computer to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/usb-c-hwk2' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable-uk' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n\t\t\t\t{\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package also includes cable management tools for a cleaner installation.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n\t\t\t\t{\n                    title: '⑦ Is an SD card included?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro includes a 64GB microSD card, so you can start recording right out of the box. It also supports microSD card expansion up to 512GB for longer recording storage.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item8;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addItem6();\n\taddItem7();\n    addSpecification();\n    addFAQs();\n\n    \/\/1\n    function addItem1() {\n        addSinglePictureItem('description-item-1', descriptionData.item1);\n    }\n\n    \/\/2\n    function addItem2() {\n\t\taddScrollHeaderItem(\"2\", descriptionData.item2);\n    }\n\n    \/\/3\n    function addItem3() {\n        addScrollItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/4\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/5\n    function addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\n    \/\/6\n    function addItem6() {\n        addSinglePictureItem('description-item-6', descriptionData.item6);\n    }\n\n    \/\/7\n    function addItem7() {\n        addSinglePictureItem('description-item-7', descriptionData.item7);\n    }\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\t\n\t\/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            \/\/ + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + addPicture(item)\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item9.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\t\t\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\n        if (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" class=\"lazyload\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\tfunction getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\u003c\/script\u003e","brand":"S1 Pro+64G","offers":[{"title":"Default Title","offer_id":51001220923696,"sku":"S1 Pro-64TUK","price":176.12,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_9986c641-cd79-4029-b31a-eb278e7d59dd.webp?v=1773041006"}],"url":"https:\/\/www.miofive.com\/fr\/collections\/all-s1.oembed","provider":"Miofive","version":"1.0","type":"link"}