{"title":"Popular Products","description":"","products":[{"product_id":"miofive-s1-4k-dash-cam","title":"Miofive S1 4K Dash Cam, Supercapacitor Heat Resistant (32GB Card Included)","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":"Miofive","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=1782108214"},{"product_id":"miofive-s1-ultra-front-rear-dash-cam","title":"Miofive S1 Ultra Dual 4K Dash Cam, Supercapacitor","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":"Miofive","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=1782108263"},{"product_id":"miofive-s1-pro-4k-2k-dual-dash-cam","title":"Miofive S1 Pro 4K+2K Dual Dash Cam, Supercapacitor","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":"Miofive","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=1782108272"},{"product_id":"s1-pro-uk","title":"Miofive S1 Pro 4K+2K Front Rear Dash Cam, Speed Cam (32GB)(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\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\/UK_S1_Pro_Des_1.webp?v=1768879428',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_1_mb.webp?v=1768879448'\n\t\t\t},\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_2.webp?v=1768879429',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_2_mb.webp?v=1768879449'\n            },\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_3.webp?v=1768879430',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_3_mb.webp?v=1768879449'\n            },\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_4.webp?v=1768879430',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_4_mb.webp?v=1768879449'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_5.webp?v=1768879429',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_5_mb.webp?v=1768879449'\n                }\n            ],\n            item5: [\n                {\n                    title: '5GHz Wi-Fi',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_6.webp?v=1768879430',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_6_mb.webp?v=1768879449'\n                },\n                {\n                    title: 'Smart App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_7.webp?v=1768879429',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_7_mb.webp?v=1768879449'\n                },\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_8.webp?v=1768795030',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_8_mb.webp?v=1768879449'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_9.jpg?v=1768795030',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_9_mb.webp?v=1768879449'\n                },\n                {\n                    title: 'Speed Camera Alert',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_10.webp?v=1768879430',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_10_mb.webp?v=1768879449'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_11.webp?v=1768879430',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_11_mb.webp?v=1768879449'\n                },\n                {\n                    title: 'Seamless Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_12.webp?v=1768879430',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_12_mb.webp?v=1768879449'\n                },\n                {\n                    title: 'Hardwire Kit Wiring',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_13.jpg?v=1768879429',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_13_mb.webp?v=1768879449'\n                }\n            ],\n\t\t\titem7: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_14.webp?v=1768879429',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_14_mb.webp?v=1768879449'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_15.jpg?v=1768879430',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_15_mb.webp?v=1768879449'\n                }\n            ],\n\t\t\titem8: {\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_16_mb.webp?v=1768879449'\n\t\t\t},\n            item9: {\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Pro_Des_17_mb.webp?v=1768879449'\n            },\n            item10: [\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_mb.jpg?v=1739441641',\n                    link: '\/products\/s1-pro-uk',\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 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                    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            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\/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 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 Auflösung',\n        'Hinte Auflösung',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD-Karte (enthalten)',\n        'Superkondensator'\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\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\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":"Miofive","offers":[{"title":"Default Title","offer_id":49465975341360,"sku":"Pro-UK","price":101.91,"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=1782108272"},{"product_id":"s1-uk","title":"Miofive S1 4K Dash Cam, Speed Camera Alert Parking Mode(SD Card Not 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\t\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: 60px;\n        color: white;\n        text-align: center;\n        font-size: 18px;\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    .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\t\n\t@media screen and (max-width: 1024px) {\n\t\t.description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\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    }\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 --\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-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\t\n\t\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-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                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_1.webp?v=1762409681',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_1_mb.webp?v=1762409679'\n            },\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_2.webp?v=1762409681',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_2_mb.webp?v=1762409680'\n            },\n\t\t\titem3: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_3.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_3_mb.webp?v=1762409680'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_4.webp?v=1762409680',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_4_mb.webp?v=1762409680'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_5.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_5_mb.webp?v=1762409679'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_12.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_12_mb.webp?v=1762409680'\n                }\n            ],\n\t\t\titem4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_6.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_6_mb.webp?v=1762409680'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_7.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_7_mb.webp?v=1762409679'\n                }\n            ],\n            item5: [\n                {\n                    title: 'Seamless Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_8.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_8_mb.webp?v=1762409679'\n                },\n                {\n                    title: 'G-Sensor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_9.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_9_mb.webp?v=1762409680'\n                },\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_10.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_10_mb.webp?v=1762409680'\n                },\n                {\n                    title: 'Time Lapse',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_11.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_11_mb.webp?v=1762409680'\n                }\n            ],\n            item6: [\n                {\n                    title: '3\" IPS Screen',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_13.webp?v=1762409680',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_13_mb.webp?v=1762409679'\n                },\n                {\n                    title: 'Multiple Ways to Playback',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_14.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_14_mb.webp?v=1762409679'\n                },\n                {\n                    title: 'Easy Installation',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_15.webp?v=1762409681',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_15_mb.webp?v=1762409679'\n                },\n                {\n                    title: 'Package Contents',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_16.webp?v=1762409680',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_16_mb.webp?v=1762409679'\n                },\n                {\n                    title: 'Optional Accessories',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_17.webp?v=1762409680',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_17_mb.webp?v=1762409679'\n                }\n            ],\n            item7:{\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_18.webp?v=1762409680',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_18_mb.webp?v=1762409679'\n            },\n\t\t\titem8: {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_19.webp?v=1762409680',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_19_mb.webp?v=1762409679'\n            },\n            item9: {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_20.webp?v=1762409680',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Description_20_mb.webp?v=1762409680'\n            },\n            item10: [\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 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_mb.jpg?v=1739441641',\n                    link: '\/products\/s1-pro-uk',\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 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+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            item11: [\n\t\t\t\t{\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 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 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 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 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                {\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 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: '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\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    addItem6();\n\taddItem7();\n\taddItem8();\n\taddItem9();\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\taddSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\n    \/\/产品功能2\n    function addItem3() {\n\t\taddScrollItem(\"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\t\n\t\/\/可选购配件\n    function addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n    \/\/默认包装配件\n    function addItem7() {\n        addSinglePictureItem(\"description-item-7\", descriptionData.item7);\n    }\n\n\tfunction addItem8() {\n        addSinglePictureItem(\"description-item-8\", descriptionData.item8);\n    }\n\t\n\tfunction addItem9() {\n        addSinglePictureItem(\"description-item-9\", descriptionData.item9);\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-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\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 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\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\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\t\n\t\/\/上一个按钮\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":"Miofive","offers":[{"title":"Default Title","offer_id":49465995723056,"sku":"S1-UK","price":69.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_6f5efa1e-1bad-4f8c-9eef-3e43245172e0.webp?v=1782108326"},{"product_id":"miofive-s1-e-4k-front-dash-cam","title":"Miofive S1 E 4K Dash Cam, Supercapacitor GPS","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":"Miofive","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=1782108376"},{"product_id":"miofive-mini-s-4k-dash-cam","title":"Miofive Mini S 4K Dash Cam, Speed Camera Alert(No SD Card)(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 img {\n        width: 100%;\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\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    \n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\" 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-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\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\/UK_mini_s_Description_1.webp?v=1778469148',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_1_mb.webp?v=1778469166'\n            },\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_2.webp?v=1778469149',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_2_mb.webp?v=1778469167'\n            },\n            item3: [\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_3.webp?v=1778469149',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_3_mb.webp?v=1778469166'\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_4.webp?v=1778469148',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_4_mb.webp?v=1778469166'\n                },\n                {\n                    title: 'Wi-Fi 6 \u0026 APP Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_5.webp?v=1778469148',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_5_mb.webp?v=1778469166'\n                },\n\t\t\t\t{\n                    title: 'OTA',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_6.webp?v=1778469149',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_6_mb.webp?v=1778469167'\n                }\n            ],\n            item4: [\n                \n                {\n\t\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_7.webp?v=1778469149',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_7_mb.webp?v=1778469166'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_8.webp?v=1778469149',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_8_mb.webp?v=1778469167'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_9.webp?v=1778469149',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_9_mb.webp?v=1778469166'\n                }\n            ],\n            item5: [\n                {\n                    title: 'Speed Camera Alerts',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_10.webp?v=1778469149',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_10_mb.webp?v=1778469166'\n                },\n                {\n                    title: 'Super Capacitors',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_11.webp?v=1778469149',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_11_mb.webp?v=1778469166'\n                },\n                {\n                    title: 'Max Support Up To 512GB',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_12.webp?v=1778469148',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_12_mb.webp?v=1778469166'\n                }\n            ],\n            item6: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_13.webp?v=1778469148',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_13_mb.webp?v=1778469166'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_14.webp?v=1778469149',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_mini_s_Description_14_mb.webp?v=1778469166'\n                }\n            ],\n            item7: [\n                {\n                    title: 'Mini S',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_MiniS.jpg?v=1741747255',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_MiniS_mb.jpg?v=1741747255',\n                    link: '',\n                    specifications: [\n                        '4K(3840x2160) @25fps',\n                        '-',\n                        '-',\n                        '2.4G',\n                        'Bluetooth 4.2',\n                        'NOT Included'\n                    ]\n                },\n                {\n                    title: 'Mini 2',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_Mini2.jpg?v=1741747255',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_Mini2_mb.jpg?v=1741747255',\n                    link: '\/products\/mini-2-uk',\n                    specifications: [\n                        '2K(2560x1440) @30fps',\n                        '1920x1080P @25fps',\n                        '-',\n                        '2.4G',\n                        'Bluetooth 4.2',\n                        'NOT Included'\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                        'NOT Included'\n                    ]\n                }\n            ],\n            item8: [\n                {\n                    title: \"How does the dash cam start working?\",\n                    content: [\n                        \"When using it for the first time, simply power on the dash cam and follow the instructions in the manual to connect the app and activate the device. After the initial setup, the dash cam will automatically start recording whenever it is powered on.\"\n                    ]\n                },\n                {\n                    title: \"Why is the video quality of my dash cam unclear?\",\n                    content: [\n                        \"To ensure smoother video playback, the videos viewed on the app or the dash cam screen are compressed and may not represent the original video quality. Please download the video to your phone's gallery or computer for better clarity.\"\n                    ]\n                },\n                {\n                    title: \"I want to use the parking monitoring function. Do I have to buy a separate hard wire kit?\",\n                    content: [\n                        \"Yes, the hardwire kit enables the Mini S Dash Cam's parking monitoring mode. The hard-wire kit is not included; you need to purchase it separately.\"\n                    ]\n                },\n                {\n                    title: \"Do I need to buy an SD card to use this dash cam? Which memory card is recommended?\",\n                    content: [\n                        \"This dash cam supports memory cards from 32 GB to 512 GB. The SD card is NOT INCLUDED. If you need to purchase a new one, we recommend a U3 Class 10 microSD card from Miofive.\"\n                    ]\n                },\n                {\n                    title: \"How does the dash cam format the memory card?\",\n                    content: [\n                        \"Open the Miofive app, go to My Device → Quick Settings → More → Format Memory Card.\",\n                        \"Please be aware that formatting the memory card will erase all existing data. Ensure that you have backed up important files before proceeding with the forma process.\"\n                    ]\n                }\n            ]\n        };\n        return data;\n    }\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item7;\n    const specificationTitle = \"Miofive Dashcam\";\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    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addItem6();\n    addSpecification();\n    addFAQs();\n\n    function addItem1() {\n\t\taddSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    function addItem2() {\n\t\taddSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\n    function addItem3() {\n\t\taddScrollHeaderItem(\"3\", descriptionData.item3);\n    }\n\n    function addItem4() {\n\t\taddScrollItem(\"4\", descriptionData.item4);\n    }\n\n    function addItem5() {\n\t\taddScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\n    function addItem6() {\n\t\taddScrollItem(\"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\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\n        let dotCount = list.length;\n        let selectIndex = 0;\n\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\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            + '\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            specificationOption += addPicture(item);\n            specificationOption += '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e';\n            specificationOption += addSpecificationListMobile(item.specifications);\n            if (item.link) {\n                specificationOption += '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e';\n            }\n            specificationOption += '\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    function addFAQs() {\n        let list = descriptionData.item8;\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                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' + content + '\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\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 + '\"\u003e\u003c\/picture\u003e';\n        } else {\n            option = '\u003cimg src=\"' + item.img + '\"\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":"Miofive","offers":[{"title":"Default Title","offer_id":49545870016816,"sku":"Mini S-UK","price":49.85,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_691f6c51-46e9-44ce-a9d4-fd1e198b8398.webp?v=1782108380"},{"product_id":"miofive-mini-2-front-rear-dash-cam","title":"Miofive Mini 2 2K+1080P Dash Cam, Speed Camera Alert(SD Card Not 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: 6px;\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 img {\n        width: 100%;\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\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\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\" 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-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\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\/UK_Mini2_Description_1.webp?v=1763032126',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_1_mb.webp?v=1763032189'\n            },\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_2.webp?v=1763032126',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_2_mb.webp?v=1763032189'\n            },\n            item3: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_3.webp?v=1763032126',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_3_mb.webp?v=1763032189'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_4.webp?v=1763032126',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_4_mb.webp?v=1763032189'\n                }\n            ],\n            item4: [\n                {\n                    title: 'Wi-Fi 6 \u0026 App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_5.webp?v=1763032126',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_5_mb.webp?v=1763032190'\n                },\n                {\n                    title: 'GPS Tracking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_6.webp?v=1763032126',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_6_mb.webp?v=1763032189'\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_7.webp?v=1763032126',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_7_mb.webp?v=1763032189'\n                }\n            ],\n            item5: [\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_8.webp?v=1763032126',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_8_mb.webp?v=1763032190'\n                },\n                {\n                    title: 'Collision Sensing',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_9.webp?v=1756199826',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_9_mb.webp?v=1763032190'\n                },\n                {\n                    title: '24H Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_10.webp?v=1763032125',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_10_mb.webp?v=1763032190'\n                }\n            ],\n            item6: [\n                {\n                    title: 'Package Contents',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_11.webp?v=1763032125',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_11_mb.webp?v=1763032189'\n                },\n                {\n                    title: 'Easy to Install',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_12.webp?v=1763032126',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_12_mb.webp?v=1763032190'\n                },\n                {\n                    title: 'Specifications',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_13.webp?v=1763032125',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_Description_13_mb.webp?v=1763032190'\n                }\n            ],\n            item7: [\n                {\n                    title: 'Mini 2',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_Mini2.jpg?v=1741747255',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_Mini2_mb.jpg?v=1741747255',\n                    link: '',\n                    specifications: [\n                        '2K(2560x1440) @30fps',\n                        '1920x1080P @25fps',\n                        '-',\n                        '2.4G',\n                        'Bluetooth 4.2',\n                        'NOT Included'\n                    ]\n                },\n                {\n                    title: 'Mini S',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_MiniS.jpg?v=1741747255',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_MiniS_mb.jpg?v=1741747255',\n                    link: '\/products\/mini-s-uk',\n                    specifications: [\n                        '4K(3840x2160) @25fps',\n                        '-',\n                        '-',\n                        '2.4G',\n                        'Bluetooth 4.2',\n                        'NOT Included'\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                        'NOT Included'\n                    ]\n                }\n            ],\n            item8: [\n                {\n                    title: \"How does the dash cam start working?\",\n                    content: [\n                        \"When using it for the first time, simply power on the dash cam and follow the instructions in the manual to connect the app and activate the device. After the initial setup, the dash cam will automatically start recording whenever it is powered on.\"\n                    ]\n                },\n                {\n                    title: \"Why is the video quality of my dash cam unclear?\",\n                    content: [\n                        \"To ensure smoother video playback, the videos viewed on the app or the dash cam screen are compressed and may not represent the original video quality. Please download the video to your phone's gallery or computer for better clarity.\"\n                    ]\n                },\n                {\n                    title: \"I want to use the parking monitoring function. Do I have to buy a separate hard wire kit?\",\n                    content: [\n                        \"Yes, the hardwire kit enables the Mini S Dash Cam's parking monitoring mode. The hard-wire kit is not included; you need to purchase it separately.\"\n                    ]\n                },\n                {\n                    title: \"Do I need to buy an SD card to use this dash cam? Which memory card is recommended?\",\n                    content: [\n                        \"This dash cam supports memory cards from 32 GB to 512 GB. The SD card is NOT INCLUDED. If you need to purchase a new one, we recommend a U3 Class 10 microSD card from Miofive.\"\n                    ]\n                },\n                {\n                    title: \"How does the dash cam format the memory card?\",\n                    content: [\n                        \"Open the Miofive app, go to My Device → Quick Settings → More → Format Memory Card.\",\n                        \"Please be aware that formatting the memory card will erase all existing data. Ensure that you have backed up important files before proceeding with the forma process.\"\n                    ]\n                }\n            ]\n        };\n        return data;\n    }\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item7;\n    const specificationTitle = \"Miofive Dashcam\";\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    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addItem6();\n    addSpecification();\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 descriptionItem2 = document.getElementById('description-item-2');\n        descriptionItem2.innerHTML = addPicture(descriptionData.item2);\n    }\n\n    function addItem3() {\n        const dots = [];\n        let list = descriptionData.item3;\n        let dotCount = 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 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 addItem4() {\n        const headers = [];\n        let list = descriptionData.item4;\n        let headerCount = 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 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 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 addItem6() {\n        const headers = [];\n        let list = descriptionData.item6;\n        let headerCount = list.length;\n        let selectIndex = 0;\n        const descriptionId = 6;\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 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\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            + '\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            specificationOption += addPicture(item);\n            specificationOption += '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e';\n            specificationOption += addSpecificationListMobile(item.specifications);\n            if (item.link) {\n                specificationOption += '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e';\n            }\n            specificationOption += '\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    function addFAQs() {\n        let list = descriptionData.item8;\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                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' + content + '\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\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 + '\"\u003e\u003c\/picture\u003e';\n        } else {\n            option = '\u003cimg src=\"' + item.img + '\"\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":"Miofive","offers":[{"title":"Default Title","offer_id":49545912025392,"sku":"Mini 2-UK","price":106.8,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Mini2_1.webp?v=1782108388"},{"product_id":"miofive-mini2-front-and-rear-dash-cam","title":"Miofive Mini 2 2K+1080P Dual Dash Cam, Supercapacitor（SD Card Not Included）","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: 6px;\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-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\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\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-specification-item\" id=\"description-specification\"\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_Mini2_Description_1.webp?v=1763004101',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_1_mb.webp?v=1763004111'\n            },\n            item2: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_2.webp?v=1763004101',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_2_mb.webp?v=1763004112'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_3.webp?v=1763004101',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_3_mb.webp?v=1763004112'\n                }\n            ],\n            item3: [\n                {\n                    title: 'Wi-Fi 6 \u0026 App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_4.webp?v=1763004101',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_4_mb.webp?v=1763004112'\n                },\n                {\n                    title: 'GPS Tracking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_5.webp?v=1763004101',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_5_mb.webp?v=1763004112'\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_6.webp?v=1763004101',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_6_mb.webp?v=1763004112'\n                }\n            ],\n            item4: [\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_7.webp?v=1763004101',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_7_mb.webp?v=1763004112'\n                },\n                {\n                    title: 'Collision Sensing',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_8.webp?v=1763004101',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_8_mb.webp?v=1763004112'\n                },\n                {\n                    title: '24H Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_9.webp?v=1763004101',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_9_mb.webp?v=1763004112'\n                }\n            ],\n            item5: [\n                {\n                    title: 'Package Contents',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_10.webp?v=1763004100',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_10_mb.webp?v=1763004112'\n                },\n                {\n                    title: 'Easy to Install',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_11.webp?v=1763004100',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_11_mb.webp?v=1763004112'\n                },\n                {\n                    title: 'Specifications',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_12.webp?v=1763004100',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_Mini2_Description_12_mb.webp?v=1763004112'\n                }\n            ],\n            item6: [\n                {\n                    title: 'Mini 2',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_Mini2.jpg?v=1741747255',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_Mini2_mb.jpg?v=1741747255',\n                    link: '',\n                    specifications: [\n                        '2K(2560x1440) @30fps',\n                        '1920x1080P @25fps',\n                        '-',\n                        '2.4G',\n                        'Bluetooth 4.2',\n                        'NOT Included'\n                    ]\n                },\n                {\n                    title: 'Mini S',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_MiniS.jpg?v=1741747255',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_Description_MiniS_mb.jpg?v=1741747255',\n                    link: '\/products\/mini-s',\n                    specifications: [\n                        '4K(3840x2160) @25fps',\n                        '-',\n                        '-',\n                        '2.4G',\n                        'Bluetooth 4.2',\n                        'NOT Included'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_mb.jpg?v=1739441641',\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            item7: [\n                {\n                    title: '① Does the Mini 2 support front and rear recording at the same time?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. The Mini 2 supports simultaneous dual-channel recording with 2K front recording and 1080P rear recording for more complete road coverage.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can this dash cam handle extreme summer heat?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The Mini 2 uses a supercapacitor instead of a traditional lithium battery, providing reliable performance 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.',\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: '④ 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                    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 two 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]\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 Mini 2 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        };\n        return data;\n    }\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item6;\n    const specificationTitle = \"Miofive Dashcam\";\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    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addSpecification();\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 dots = [];\n        let list = descriptionData.item2;\n        let dotCount = 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 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 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 headers = [];\n        let list = descriptionData.item4;\n        let headerCount = 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 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 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    \/\/规格\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\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            + '\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            specificationOption += addPicture(item);\n            specificationOption += '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e';\n            specificationOption += addSpecificationListMobile(item.specifications);\n            if (item.link) {\n                specificationOption += '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e';\n            }\n            specificationOption += '\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    function addFAQs() {\n        let list = descriptionData.item7;\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 + '\"\u003e\u003c\/picture\u003e';\n        } else {\n            option = '\u003cimg src=\"' + item.img + '\"\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":"Miofive","offers":[{"title":"Default Title","offer_id":49545986408752,"sku":"Mini 2-US","price":52.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/mini_2_1.jpg?v=1782108393"},{"product_id":"miofive-s1-4k-front-dash-cam","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":"Miofive","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=1782108439"},{"product_id":"miofive-s1-pro-4k-2k-front-rear-dash-cam","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":"Miofive","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=1782108444"},{"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":"Miofive","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=1782108451"},{"product_id":"ca-products-miofive-s1-pro-4k-2k-dual-dash-cam","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":"Miofive","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=1782108272"},{"product_id":"ca-products-miofive-s1-ultra-front-rear-dash-cam","title":"Miofive 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":"Miofive","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=1782108451"},{"product_id":"miofive-s1-pro-de","title":"MIOFIVE S1 Pro Dashcam, 4K 30fps + Dual 2K, 32GB Memory Card (EU)","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\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    @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\/DE_S1_Pro_Des_1.webp?v=1768876580',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_1_mb.webp?v=1768876607'\n\t\t\t},\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_2.webp?v=1768876581',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_2_mb.webp?v=1768876607'\n            },\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_3.webp?v=1768876581',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_3_mb.webp?v=1768876607'\n            },\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_4.webp?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_4_mb.webp?v=1768876607'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_5.webp?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_5_mb.webp?v=1768876607'\n                }\n            ],\n            item5: [\n                {\n                    title: '5 GHz WLAN',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_6.webp?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_6_mb.webp?v=1768876607'\n                },\n                {\n                    title: 'Intelligente App-Steuerung',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_7.webp?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_7_mb.webp?v=1768876607'\n                },\n                {\n                    title: 'Integriertes GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_8.webp?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_8_mb.webp?v=1768876607'\n                },\n                {\n                    title: 'Superkondensator',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_9.jpg?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_9_mb.webp?v=1768876607'\n                },\n                {\n                    title: 'Geschwindigkeitskamera-Warnung',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_10.webp?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_10_mb.webp?v=1768876607'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Stunden-Parküberwachung',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_11.webp?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_11_mb.webp?v=1768876607'\n                },\n                {\n                    title: 'Nahtlose Loop-Aufnahme',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_12.webp?v=1768876582',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_12_mb.webp?v=1768876607'\n                },\n                {\n                    title: 'Anschluss über Hardwire-Kit',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_13.jpg?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_13_mb.webp?v=1768876607'\n                }\n            ],\n\t\t\titem7: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_14.webp?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_14_mb.webp?v=1768876607'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_15.jpg?v=1768876581',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_15_mb.webp?v=1768876607'\n                }\n            ],\n\t\t\titem8: {\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_16_mb.webp?v=1768876607'\n\t\t\t},\n            item9: {\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_S1_Pro_Des_17_mb.webp?v=1768876607'\n            },\n            item10: [\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_Description_S1_Pro.jpg?v=1750303668',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_Description_S1_Pro_mb.jpg?v=1750303668',\n                    link: '\/products\/miofive-s1-pro-de',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4GHz \u0026 5GHz',\n                        'Bluetooth 4.2',\n                        'Micro 32GB SD Card'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_Description_S1.jpg?v=1750303668',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_Description_S1_mb.jpg?v=1750303668',\n                    link: '\/products\/miofive-s1-32g-de',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4GHz \u0026 5GHz',\n                        'Bluetooth 4.2',\n                        \"Micro 32GB SD Card\"\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_Description_S1_Ultra.jpg?v=1750303668',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/DE_Description_S1_Ultra_mb.jpg?v=1750303668',\n                    link: '\/products\/miofive-s1-ultra-de',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4GHz \u0026 5GHz',\n                        'Bluetooth 4.2',\n                        'Micro 64GB SD Card'\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-usb-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        'Front Auflösung',\n        'Hinte Auflösung',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD-Karte (enthalten)',\n        'Superkondensator'\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\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":"Miofive","offers":[{"title":"Default Title","offer_id":49888035471664,"sku":"S1 Pro-TDE","price":119.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_5bb79747-8513-404b-bb2e-3855b19adb2d.webp?v=1782108572"}],"url":"https:\/\/www.miofive.com\/fr\/collections\/popular-products.oembed","provider":"Miofive","version":"1.0","type":"link"}