{"title":"All products","description":"","products":[{"product_id":"hkw1","title":"Miofive 11.5ft Micro USB Hardwire Kit(HWK1)","description":" \u003cstyle type=\"text\/css\"\u003e\n        .description-content {\n            margin: 0 10px;\n        }\n\n        .description-item {\n            width: 100%;\n            margin-bottom: 15px;\n        }\n\n        .description-item img {\n            width: 100%;\n        }\n\n        .description-item h3 {\n            margin: 0px;\n            padding: 0px;\n            font-size: 15px;\n            font-weight: 700;\n            color: black;\n        }\n\n        .description-item p {\n            margin: 0px;\n            padding: 0px;\n            font-size: 14px;\n        }\n\n        .description-column {\n            display: flex;\n            display: -ms-flex;\n            flex-wrap: wrap;\n            width: 100%;\n        }\n\n        .description-column-1 {\n            width: 30%;\n        }\n\n        .description-column-1 img {\n            width: 100%;\n        }\n\n        .description-column-1 h3 {\n            margin: 0px;\n            padding: 0px;\n            font-size: 15px;\n            font-weight: 700;\n            color: black;\n        }\n\n        .description-column-1 p {\n            margin: 0px;\n            padding: 0px;\n            font-size: 14px;\n        }\n\n        .description-ml-10 {\n            margin-left: 5%;\n        }\n\n        @media screen and (max-width: 767px) {\n            .description-column {\n                width: 100%;\n            }\n\n            .description-column-1 {\n                width: 100%;\n            }\n\n            .description-ml-10 {\n                margin-left: 0px;\n            }\n        }\n    \u003c\/style\u003e\n\n    \u003cdiv class=\"description-content\"\u003e\n        \u003cdiv class=\"description-item\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/HKW1_Description_1.jpg?v=1700722995\"\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"description-item\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/HKW1_Description_2.jpg?v=1700722994\"\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"description-item\"\u003e\n            \u003ch3\u003e\n                Why Intelligent Hardwire Kit?\n            \u003c\/h3\u003e\n            \u003cp\u003e\n                The hardwire kit is used to charge your dash cam or other devices when your car engine is off. Most of\n                cars need it to have a better use of the car electronic devices.\n            \u003c\/p\u003e\n            \u003cbr\u003e\n            \u003cp\u003e\n                It's a must-have if you’re using a dash camera in your car or truck. It connects the camera directly to\n                the fuse box under the dashboard for continuous power from the vehicle’s battery. Our Micro usb hard\n                wire kit frees up the 12-volt power socket (the cigarette lighter) for other uses. as the hidden\n                wiring,it will make your car more neat.\n            \u003c\/p\u003e\n            \u003cbr\u003e\n            \u003cp\u003e\n                Miofive Dash Cam Hardwire Kit applied to: dash cam、mirror cam、GPS navigator, etc.\n            \u003c\/p\u003e\n            \u003cbr\u003e\n            \u003ch3\u003e\n                Upgrade Dash Cam Hardwire Kit 9v-16v to 5v (Micro USB \/ 11.5ft).\n            \u003c\/h3\u003e\n            \u003cp\u003e\n                Premium Parking Mode: Once the sensor has detected MOTIONS. The intelligent hardwire kit will power up\n                the dashcam automatically and start recording until the MOTION is cleared.\n            \u003c\/p\u003e\n            \u003cbr\u003e\n            \u003cp\u003e\n                Time lapse function: After Miofive mirror dash cam is connected to this dedecated hardwire kit, and turn\n                the time-lapse\n                function on the dash cam, the camera will enter time-lapse recording function automatically when the car\n                engine is off.\n                In this mode, it records one frame per second, which is extremely save power and capacity, you don't\n                need worry about\n                drain out of car battery. This is because when the car engine is off, the ACC will have no power, and\n                the dash cam will\n                detects it and change recording mode from normal to time lapse.\n            \u003c\/p\u003e\n            \u003cbr\u003e\n            \u003ch3\u003e\n                Warm Tips: If you don't have experience on installing the hardwire kits for the dash cam, please ask\n                professional for help.\n            \u003c\/h3\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"description-column\"\u003e\n            \u003cdiv class=\"description-column-1\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/HKW1_Description_3.jpg?v=1700722993\"\u003e\n                \u003ch3\u003e\n                    24 Hour Surveillance\n                \u003c\/h3\u003e\n                \u003cp\u003e\n                    It provides surveillance on your parked vehicle. When the engine is off, hardwire kit is used to\n                    provide continuous power to the camera, any collisions, event will be recorded.\n                \u003c\/p\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"description-column-1 description-ml-10\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/HKW1_Description_4.jpg?v=1700722992\"\u003e\n                \u003ch3\u003e\n                    With ACC Detection\n                \u003c\/h3\u003e\n                \u003cp\u003e\n                    The dash cam will switch to parking mode automatically if the vehicle engine is off. The dash cam\n                    will switch into normal recording when the vehicle engine is on.\n                \u003c\/p\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"description-column-1 description-ml-10\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/HKW1_Description_5.jpg?v=1700722992\"\u003e\n                \u003ch3\u003e\n                    Low Voltage Protection\n                \u003c\/h3\u003e\n                \u003cp\u003e\n                    Miofive hardwire set a voltage cut-off value, when the voltage of vehicle’s battery drops to 11.6V,\n                    it will stop powering your dashcam, thus protecting your battery from discharge.\n                \u003c\/p\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"description-column\"\u003e\n            \u003cdiv class=\"description-column-1\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/HKW1_Description_6.jpg?v=1700722993\"\u003e\n                \u003ch3\u003e\n                    Yellow cable (BATT \/ B +)\n                \u003c\/h3\u003e\n                \u003cp\u003e\n                    Connect this yellow cable to the constant power fuse in the fuse box of your car. If you want to\n                    find a stable power source in the fuse box, check the fuse with a voltage measuring instrument so\n                    that the fuse has electricity even if the car engine is off.\n                \u003c\/p\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"description-column-1 description-ml-10\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/HKW1_Description_7.jpg?v=1700722993\"\u003e\n                \u003ch3\u003e\n                    Red cable (ACC)\n                \u003c\/h3\u003e\n                \u003cp\u003e\n                    This red cable connects the power supply of the red cable only when the car engine is running. Test\n                    method: When the engine is turned on, the light bulb of the measuring instrument lights up, and when\n                    the engine stops, the light bulb does not light up.\n                \u003c\/p\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"description-column-1 description-ml-10\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/HKW1_Description_8.jpg?v=1700722992\"\u003e\n                \u003ch3\u003e\n                    Black cable (GND)\n                \u003c\/h3\u003e\n                \u003cp\u003e\n                    Connect this black cable to the metal parts of the vehicle. There are screw nails and metal parts\n                    near the fuse boxes in many cars. Connect the black cable to the screw or metal part. Loosen the nut\n                    or bolt enough to slip it in and tighten it back up.\n                \u003c\/p\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e","brand":"Micro USB Hardwire Kit(HKW1)","offers":[{"title":"Default Title","offer_id":47170747859248,"sku":"Dash Cam Hardwire Kit","price":15.49,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_1809d3db-785a-4e5c-b3e2-3d33d593747e.jpg?v=1754447442"},{"product_id":"s1-32g","title":"MIOFIVE Dash Cam S1 4K UHD Front Dash Camera With Free 32GB Card","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #ffffff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 7.5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #DE7921;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\t\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n\t\u003cdiv class=\"description-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\t\n    \u003c!-- item4 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 可选搭配配件 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 产品规格对比 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_1.webp?v=1762504411',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_1_mb.webp?v=1762504423',\n            },\n            item2: [\n                {\n                    title: '4K Front',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_2.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_2_mb.webp?v=1762504423',\n                },\n                {\n                    title: '140°-Wide Angle',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_3.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_3_mb.webp?v=1762504423',\n                },\n                {\n                    title: 'OTA Updates',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_4.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_4_mb.webp?v=1762504423',\n                }\n            ],\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_5.webp?v=1762504411',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_5_mb.webp?v=1762504423',\n            },\n\t\t\titem4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_6.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_6_mb.webp?v=1762504423',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_7.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_7_mb.webp?v=1762504423',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_8.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_8_mb.webp?v=1762504423',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_9.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_9_mb.webp?v=1762504423',\n                }\n            ],\n\t\t\titem5: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_10.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_10_mb.webp?v=1762504423',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_11.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_11_mb.webp?v=1762504423',\n                }\n            ],\n            item6: [\n                {\n                    title: 'Package Contents',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_12.webp?v=1762504410',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_12_mb.webp?v=1762504423',\n                },\n                {\n                    title: 'Support Max 512GB',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_13.webp?v=1762504410',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_13_mb.webp?v=1762504423',\n                },\n                {\n                    title: 'Easy Installation',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_14.webp?v=1762504411',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_32_Description_14_mb.webp?v=1762504423',\n                }\n            ],\n            item7: [\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_16.jpg?v=1729668807',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_16_mb.jpg?v=1729668807',\n                    link: '\/products\/s1-32g',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_17.jpg?v=1729668950',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_17_mb.jpg?v=1729668950',\n                    link: '\/products\/s1-ultra',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_18.jpg?v=1729668950',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_18_mb.jpg?v=1729668950',\n                    link: '\/products\/s1-pro',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                }\n            ],\n            item8: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands that use “interpolated 4K” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1+32G features native True 4K recording for genuine ultra-high-definition video quality.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/www.youtube.com\/watch?v=4Rwq_jY_87k\u0026t=710s' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G is equipped with advanced HDR Night Vision technology. This allows the camera to balance exposure in low-light and high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three convenient ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1+32G to your computer using a data cable, or insert the microSD card into your computer to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'professional-looking installation', link: 'https:\/\/youtu.be\/FchdtMLNq5c?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G includes a 32GB microSD card, so you can start recording right out of the box. It also supports storage expansion up to 512GB for extended recording capacity.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item7;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n    addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/2 产品功能 滑动图\n    function addItem2() {\n        addScrollHeaderItem(\"2\", descriptionData.item2);\n    }\n\t\n\tfunction addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\n    \/\/产品功能2\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/可选购配件\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\n    \/\/默认包装配件\n    function addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/滑动描述\n    function addScrollDescriptionItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            let imgOption = '\u003cdiv class=\"description-wrapper-item\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n            let textOption = addItem2Content(item);\n            let option2 = '';\n            if (window.matchMedia(\"(max-width: 767px)\").matches) {\n                option2 = imgOption + textOption;\n            } else {\n                let i = index % 2;\n                if (i == 0) {\n                    option2 = imgOption + textOption;\n                } else {\n                    option2 = textOption + imgOption;\n                }\n            }\n\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + option2 + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-header-scroll-container\"\u003e';\n        headerOption += '\u003cdiv class=\"description-header-flex-container\"\u003e';\n        headerOption += '\u003cdiv class=\"description-header-spacer\"\u003e' + \" \" + '\u003c\/div\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cdiv class=\"description-header-item\" id=\"description-header-button-' + descriptionId + '-' + id + '\"\u003e' + item.title + '\u003c\/div\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003cdiv class=\"description-header-spacer\"\u003e' + \" \" + '\u003c\/div\u003e';\n        headerOption += '\u003c\/div\u003e';\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 3;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 2;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(3, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item8.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\u003c\/script\u003e","brand":"S1+32G(Front 4K)","offers":[{"title":"Default Title","offer_id":47816642986288,"sku":"S1+32g","price":69.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_a92247cd-1444-4dff-a090-fa1deac47eae.webp?v=1779345515"},{"product_id":"128gb-microsdxc-memory-card","title":"Miofive 128GB microSDXC Memory Card","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #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    .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 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    .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\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-scroll\" 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-title\"\u003eBasic Features of the Miofive microSD Cards\u003c\/div\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\u003c\/div\u003e\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_1.jpg?v=1736392674\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_1_mb.jpg?v=1736392598\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_2.jpg?v=1736392641\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_2_mb.jpg?v=1736392572\"\n                }\n            ],\n            item2: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_3.jpg?v=1736392649\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_3_mb.jpg?v=1736392681\"\n            },\n            item3: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_4.jpg?v=1736392639\",\n                    title: \"Class 10 (UHS)\",\n                    content: [\n                        \"Class 10\",\n                        \"(UHS) Ultra High-Speed Transfer\",\n                        \"Read Speed of up to 170 MB\/s\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_5.jpg?v=1736392619\",\n                    title: \"A2-Grade Memory Card\",\n                    content: [\n                        \"Input\/Output Operations Per Second (IOPS)\",\n                        \"Based on SDA (SD Association) Grading Standards\",\n                        \"A2 Grade (Application Performance Class 2) Memory Card\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_6.jpg?v=1736392651\",\n                    title: \"V30 Professional Design\",\n                    content: [\n                        \"For 4K ULTRA HD Video Recording\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_7.jpg?v=1736392658\",\n                    title: \"Powerful A+ Chip\",\n                    content: [\n                        \"Enhances storage stability, uses high-quality materials for manufacturing, and ensures smoother performance.\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_8.jpg?v=1736392656\",\n                    title: \"Capture Life‘s Moments\",\n                    content: [\n                        \"Enjoy life to the fullest while capturing and recording every beautiful moment in high resolution.\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_9.jpg?v=1736392624\",\n                    title: \"Fast Transfer and Storage\",\n                    content: [\n                        \"More space and higher speed. Free your devices with the largest capacity and highest read\/write speeds.\"\n                    ]\n                }\n            ],\n            item4: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_10.jpg?v=1736392669\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_10_mb.jpg?v=1736392596\",\n                    title: \"Lightning Fast\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_11.jpg?v=1736392673\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_11_mb.jpg?v=1736392598\",\n                    title: \"High Performance\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_12.jpg?v=1736392667\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_12_mb.jpg?v=1736392585\",\n                    title: \"Best Choice\"\n                }\n            ],\n            item5: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_13.jpg?v=1736392684\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_13_mb.jpg?v=1736392622\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_14.jpg?v=1736392657\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_14_mb.jpg?v=1736392595\"\n                }\n            ],\n            item6: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_15.jpg?v=1736392647\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_15_mb.jpg?v=1736392576\"\n            },\n            item7: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_16.jpg?v=1736392665\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_16_mb.jpg?v=1736392686\"\n            }\n        };\n\n        return data;\n    }\n\n    const descriptionData = initData();\n\n    addItem1();\n    addItem2();\n    addItem3()\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\n\n    function addItem1() {\n        const dots = [];\n        let dotCount = descriptionData.item1.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-1');\n        let option = previousButton('scroll-1-previous')\n            + nextButton('scroll-1-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-1\"\u003e';\n        descriptionData.item1.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e';\n            if (item.link) {\n                scrollOption += '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + '\u003c\/a\u003e';\n            } else {\n                scrollOption +=  addPicture(item);\n            }\n            scrollOption += '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-1-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-1');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-1-\" + (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-1-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-1-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 addItem2() {\n        const descriptionItem = document.getElementById('description-item-2');\n        descriptionItem.innerHTML = addPicture(descriptionData.item2);\n    }\n\n    function addItem3() {\n        const dots = [];\n        let dotCount = descriptionData.item3.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-3');\n        let option = previousButton('scroll-3-previous')\n            + nextButton('scroll-3-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-3\"\u003e';\n        descriptionData.item3.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-3-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-3');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-3-\" + (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-3-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-3-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 headerCount = descriptionData.item4.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-4');\n        let option = previousButton('scroll-4-previous')\n            + nextButton('scroll-4-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-4\"\u003e';\n\n        descriptionData.item4.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + 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\n        const scroll = document.getElementById('description-scroll-4');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (headerCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + (i + 1));\n            console.log(\"btn: \", btn);\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-4-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-4-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    function addItem5() {\n        const dots = [];\n        let dotCount = descriptionData.item5.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-5');\n        let option = previousButton('scroll-5-previous')\n            + nextButton('scroll-5-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-5\"\u003e';\n        descriptionData.item5.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e';\n            if (item.link) {\n                scrollOption += '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + '\u003c\/a\u003e';\n            } else {\n                scrollOption +=  addPicture(item);\n            }\n            scrollOption += '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-5-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-5');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-5-\" + (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-5-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-5-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 addItem6() {\n        const descriptionItem = document.getElementById('description-item-6');\n        descriptionItem.innerHTML = addPicture(descriptionData.item6);\n    }\n\n    function addItem7() {\n        const descriptionItem = document.getElementById('description-item-7');\n        descriptionItem.innerHTML = addPicture(descriptionData.item7);\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\u003c\/script\u003e","brand":"128GB microSDXC Card","offers":[{"title":"Default Title","offer_id":47817167143216,"sku":"128GB-TUS","price":29.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_2ec4ca42-8703-4bb1-870a-45f2e7375901.jpg?v=1736326275"},{"product_id":"256gb-microsdxc-memory-card","title":"Miofive 256GB microSDXC Memory Card","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #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    .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 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    .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\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-scroll\" 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-title\"\u003eBasic Features of the Miofive microSD Cards\u003c\/div\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\u003c\/div\u003e\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_1.jpg?v=1736394514\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_1_mb.jpg?v=1736394438\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_2.jpg?v=1736394482\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_2_mb.jpg?v=1736394409\"\n                }\n            ],\n            item2: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_3.jpg?v=1736394490\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_3_mb.jpg?v=1736394522\"\n            },\n            item3: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_4.jpg?v=1736394481\",\n                    title: \"Class 10 (UHS)\",\n                    content: [\n                        \"Class 10\",\n                        \"(UHS) Ultra High-Speed Transfer\",\n                        \"Read Speed of up to 170 MB\/s\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_5.jpg?v=1736394460\",\n                    title: \"A2-Grade Memory Card\",\n                    content: [\n                        \"Input\/Output Operations Per Second (IOPS)\",\n                        \"Based on SDA (SD Association) Grading Standards\",\n                        \"A2 Grade (Application Performance Class 2) Memory Card\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_6.jpg?v=1736394492\",\n                    title: \"V30 Professional Design\",\n                    content: [\n                        \"For 4K ULTRA HD Video Recording\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_7.jpg?v=1736394500\",\n                    title: \"Powerful A+ Chip\",\n                    content: [\n                        \"Enhances storage stability, uses high-quality materials for manufacturing, and ensures smoother performance.\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_8.jpg?v=1736394497\",\n                    title: \"Capture Life‘s Moments\",\n                    content: [\n                        \"Enjoy life to the fullest while capturing and recording every beautiful moment in high resolution.\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_9.jpg?v=1736394466\",\n                    title: \"Fast Transfer and Storage\",\n                    content: [\n                        \"More space and higher speed. Free your devices with the largest capacity and highest read\/write speeds.\"\n                    ]\n                }\n            ],\n            item4: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_10.jpg?v=1736394510\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_10_mb.jpg?v=1736394435\",\n                    title: \"Lightning Fast\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_11.jpg?v=1736394513\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_11_mb.jpg?v=1736394439\",\n                    title: \"High Performance\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_12.jpg?v=1736394508\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_12_mb.jpg?v=1736394424\",\n                    title: \"Best Choice\"\n                }\n            ],\n            item5: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_13.jpg?v=1736394524\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_13_mb.jpg?v=1736394464\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_14.jpg?v=1736394498\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_14_mb.jpg?v=1736394434\"\n                }\n            ],\n            item6: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_15.jpg?v=1736394488\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_15_mb.jpg?v=1736394414\"\n            },\n            item7: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_16.jpg?v=1736394506\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_256G_Description2_16_mb.jpg?v=1736394526\"\n            }\n        };\n\n        return data;\n    }\n\n    const descriptionData = initData();\n\n    addItem1();\n    addItem2();\n    addItem3()\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\n\n    function addItem1() {\n        const dots = [];\n        let dotCount = descriptionData.item1.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-1');\n        let option = previousButton('scroll-1-previous')\n            + nextButton('scroll-1-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-1\"\u003e';\n        descriptionData.item1.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e';\n            if (item.link) {\n                scrollOption += '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + '\u003c\/a\u003e';\n            } else {\n                scrollOption +=  addPicture(item);\n            }\n            scrollOption += '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-1-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-1');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-1-\" + (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-1-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-1-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 addItem2() {\n        const descriptionItem = document.getElementById('description-item-2');\n        descriptionItem.innerHTML = addPicture(descriptionData.item2);\n    }\n\n    function addItem3() {\n        const dots = [];\n        let dotCount = descriptionData.item3.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-3');\n        let option = previousButton('scroll-3-previous')\n            + nextButton('scroll-3-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-3\"\u003e';\n        descriptionData.item3.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-3-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-3');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-3-\" + (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-3-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-3-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 headerCount = descriptionData.item4.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-4');\n        let option = previousButton('scroll-4-previous')\n            + nextButton('scroll-4-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-4\"\u003e';\n\n        descriptionData.item4.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + 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\n        const scroll = document.getElementById('description-scroll-4');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (headerCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + (i + 1));\n            console.log(\"btn: \", btn);\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-4-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-4-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    function addItem5() {\n        const dots = [];\n        let dotCount = descriptionData.item5.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-5');\n        let option = previousButton('scroll-5-previous')\n            + nextButton('scroll-5-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-5\"\u003e';\n        descriptionData.item5.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e';\n            if (item.link) {\n                scrollOption += '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + '\u003c\/a\u003e';\n            } else {\n                scrollOption +=  addPicture(item);\n            }\n            scrollOption += '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-5-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-5');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-5-\" + (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-5-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-5-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 addItem6() {\n        const descriptionItem = document.getElementById('description-item-6');\n        descriptionItem.innerHTML = addPicture(descriptionData.item6);\n    }\n\n    function addItem7() {\n        const descriptionItem = document.getElementById('description-item-7');\n        descriptionItem.innerHTML = addPicture(descriptionData.item7);\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\u003c\/script\u003e","brand":"256GB microSDXC Card","offers":[{"title":"Default Title","offer_id":47817172713776,"sku":"256GB-TUS","price":39.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_786f67ea-ee83-4007-96fa-e4eec7b716b4.jpg?v=1736326658"},{"product_id":"type-c-hardwire-kit","title":"Miofive 11.5ft Type-C Hardwire Kit(HWK2)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0 10px;\n    }\n\n    .description-item {\n        width: 100%;\n    }\n\n    .description-item img {\n        width: 100%;\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-content {\n            margin: 0 5px;\n        }\n    }\n\u003c\/style\u003e\n\u003cdiv class=\"description-content\"\u003e\n\u003cdiv class=\"description-item\"\u003e\u003cpicture\u003e \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_1_mb.jpg?v=1732861460\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_1.jpg?v=1732861489\"\u003e\u003c\/picture\u003e\u003c\/div\u003e\n\u003cdiv class=\"description-item\"\u003e\u003cpicture\u003e \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_2_mb.jpg?v=1732861465\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_2.jpg?v=1732861490\"\u003e\u003c\/picture\u003e\u003c\/div\u003e\n\u003cdiv class=\"description-item\"\u003e\u003cpicture\u003e \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_3_mb.jpg?v=1732861465\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_3.jpg?v=1732861489\"\u003e\u003c\/picture\u003e\u003c\/div\u003e\n\u003cdiv class=\"description-item\"\u003e\u003cpicture\u003e \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_4_mb.jpg?v=1732861457\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_4.jpg?v=1732861486\"\u003e\u003c\/picture\u003e\u003c\/div\u003e\n\u003cdiv class=\"description-item\"\u003e\u003cpicture\u003e \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_5_mb.jpg?v=1732861469\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_5.jpg?v=1732861490\"\u003e\u003c\/picture\u003e\u003c\/div\u003e\n\u003cdiv class=\"description-item\"\u003e\u003cpicture\u003e \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_9_mb.jpg?v=1756707032\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_9.jpg?v=1756707033\"\u003e\u003c\/picture\u003e\u003c\/div\u003e\n\u003cdiv class=\"description-item\"\u003e\u003cpicture\u003e \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_7_mb.jpg?v=1732861450\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_7.jpg?v=1732861477\"\u003e\u003c\/picture\u003e\u003c\/div\u003e\n\u003cdiv class=\"description-item\"\u003e\u003cpicture\u003e \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_8_mb.jpg?v=1732861451\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_HKW_Description_8.jpg?v=1732861481\"\u003e\u003c\/picture\u003e\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. 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","brand":"USB-C Hardwire Kit(HKW2)","offers":[{"title":"Default Title","offer_id":48014552990000,"sku":"HWK2-TUS","price":29.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_b9705c4c-eef8-46d5-9cba-39b51e9d2b61.jpg?v=1754446824"},{"product_id":"cpl-filter","title":"Miofive 34mm CPL Filter","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0 10px;\n    }\n\n    .description-item {\n        width: 100%;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\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: #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    .description-wrapper img {\n        width: 100%;\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    @media screen and (max-width: 767px) {\n        .description-content {\n            margin: 0 5px;\n        }\n\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_1_mb.jpg?v=1732861864\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_1.jpg?v=1732861869\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_2_mb.jpg?v=1732861866\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_2.jpg?v=1732861870\"\u003e\u003c\/picture\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    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_5_mb.jpg?v=1732861864\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_5.jpg?v=1732861869\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_6_mb.jpg?v=1732861864\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_6.jpg?v=1732861868\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_7_mb.jpg?v=1732861870\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_7.jpg?v=1732861869\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_8_mb.jpg?v=1732861864\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_8.jpg?v=1732861868\"\u003e\u003c\/picture\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    addScrollItem();\n\n    function addScrollItem() {\n        const data = [\n            {\n                \"img\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_3.jpg?v=1732861868\",\n                \"img_mb\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_3_mb.jpg?v=1732865094\"\n            },\n            {\n                \"img\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_4.jpg?v=1732861870\",\n                \"img_mb\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_CPL_Filter_Description_4_mb.jpg?v=1732862015\"\n            }\n        ];\n\n        const dots = [];\n        let dotCount = data.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-2');\n        let option = previousButton('scroll-2-previous')\n            + nextButton('scroll-2-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-2\"\u003e';\n            data.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-2-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-2');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-2-\" + (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-2-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-2-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 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 addPicture(item) {\n        let option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\"\u003e\u003c\/picture\u003e';\n        return option;\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\u003c\/script\u003e","brand":"CPL Filter","offers":[{"title":"Default Title","offer_id":48303724757296,"sku":"CPL filter-TUS","price":19.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_4dfb0825-2281-45e1-871c-1d089e5c8ea3.jpg?v=1732860454"},{"product_id":"s1-ultra","title":"S1 Ultra Dual 4K UHD Front and Rear Dash Camera","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #ffffff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 7.5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #DE7921\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n\t\t\t\t\t\t   \n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n    }\n\u003c\/style\u003e\n\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item2 主图 --\u003e\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 可选搭配配件 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item6 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 产品规格对比 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item9 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_1.webp?v=1762849924',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_1_mb.webp?v=1762850057'\n            },\n\t\t\titem2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_2.webp?v=1762849924',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_2_mb.webp?v=1762850058'\n            },\n            item3: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_3.webp?v=1762849924',\n                    title: '4K + 4K Dual Cameras',\n                    content: [\n                        'Capture every detail on the road with stunning front and rear 4K resolution.'\n\t\t\t\t\t]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_4.webp?v=1762849924',\n                    title: '140° Front + 115° Rear Wide-Angle View',\n                    content: [\n                        'Enjoy a broader field of vision and a more reliable eyewitness perspective.'\n                    ]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_5.webp?v=1762849924',\n                    title: '360° Adjustable Rear Camera',\n                    content: [\n                        'Adjust the rear camera freely for the best angle and full coverage.',\n\t\t\t\t\t]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_6.webp?v=1762849924',\n                    title: 'Seamless Loop Recording',\n                    content: [\n                        'Never worry about running out of storage—when the memory card is full, the oldest footage is automatically overwritten.'\n                    ]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_7.webp?v=1762849924',\n                    title: 'G-Sensor',\n                    content: [\n                        'In the event of a collision, the G-sensor instantly locks crucial footage to prevent accidental overwriting.'\n                    ]\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_8.webp?v=1762849924',\n                    title: '24-Hour Parking Surveillance',\n                    content: [\n                        'Day or night, MIOFIVE dashcams keep a constant watch on your vehicle, even when you’re away. (Hardwire Kit Purchase separately)'\n                    ]\n                }\n            ],\n            item4: [\n                {\n                    title: '4K+4K Dashcam',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_9.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_9_mb.webp?v=1762850058',\n                },\n                {\n                    title: 'Wi-Fi\u0026App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_10.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_10_mb.webp?v=1762850058',\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_11.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_11_mb.webp?v=1762850058',\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_12.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_12_mb.webp?v=1762850058',\n                }\n            ],\n            item5: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_13.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_13_mb.webp?v=1762850058',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_14.webp?v=1762849925',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_14_mb.webp?v=1762850058',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_15.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_15_mb.webp?v=1762850058',\n                }\n            ],\n\t\t\titem6: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_16.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_16_mb.webp?v=1762850058',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_17.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_17_mb.webp?v=1762850058',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_18.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_18_mb.webp?v=1762850058',\n                }\n            ],\n\t\t\titem7: [\n                {\n                    title: 'CPL Filter',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_19.webp?v=1762849925',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_19_mb.webp?v=1762850058',\n                },\n                {\n                    title: 'Recommended Card',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_20.webp?v=1762849924',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Ultra_Description_20_mb.webp?v=1762850058',\n                },\n            ],\n            item8: [\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_17.jpg?v=1729668950',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_17_mb.jpg?v=1729668950',\n                    link: '\/products\/s1-ultra',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_16.jpg?v=1729668807',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_16_mb.jpg?v=1729668807',\n                    link: '\/products\/s1-32g',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_18.jpg?v=1729668950',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Description2_18_mb.jpg?v=1729668950',\n                    link: '\/products\/s1-pro',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                }\n            ],\n            item9: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands that use \\“interpolated 4K\\” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1 Ultra features native True 4K recording for genuine ultra-high-definition video quality.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/bxV5oAT_EHU?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=782' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is equipped with advanced HDR night vision technology, which balances exposure in low-light and high-contrast conditions to capture sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three convenient ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the built-in display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Ultra to your computer using a data cable, or insert the microSD card to view and back up recordings. Compatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. The parking monitor helps detect impacts and suspicious activity while your vehicle is parked.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'To enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra includes a 64GB microSD card, so you can start recording right out of the box. It also supports storage expansion up to 512GB for extended recording capacity.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item8;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\taddItem7();\n    addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\t\n\tfunction addItem2() {\n        addSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n    \/\/产品功能 滑动图\n    function addItem3() {\n        addScrollDescriptionItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/产品功能2 滑动图\n    function addItem4() {\n        addScrollHeaderItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/滑动图\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/可选购配件\n    function addItem6() {\n        addScrollItem(\"6\", descriptionData.item6);\n    }\n\t\n\t\/\/产品功能2 滑动图\n    function addItem7() {\n        addScrollHeaderItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/滑动描述\n    function addScrollDescriptionItem(descriptionId, list) {\n        const dots = [];\n\t\t\t\t\t\t\t\t\t\t \n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            let imgOption = '\u003cdiv class=\"description-wrapper-item\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n            let textOption = addItem2Content(item);\n            let option2 = '';\n            if (window.matchMedia(\"(max-width: 767px)\").matches) {\n                option2 = imgOption + textOption;\n            } else {\n                let i = index % 2;\n                if (i == 0) {\n                    option2 = imgOption + textOption;\n                } else {\n                    option2 = textOption + imgOption;\n                }\n            }\n\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + option2 + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n\t\t\t\t\t\t\t\t\t\t \n        let headerCount = list.length;\n        let selectIndex = 0;\n\t\t\t\t\t\t\t\t\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 3;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 2;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\t\t\t\t\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\t\t\t\t\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(3, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n\t\t\t\t\t\t\t\t\t\t \n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item9.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\n\n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option;\n        if (item.img_mb) {\n            option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option = '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\t\n\t\n\tfunction getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\n\u003c\/script\u003e","brand":"S1-Ultra(Front 4K+Rear 4K)","offers":[{"title":"Default Title","offer_id":48643969614128,"sku":"S1 Ultra-TUS","price":139.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/77ad065df0cdbabb08cf4475f046f61b.webp?v=1775704264"},{"product_id":"s1-pro","title":"MIOFIVE Dash Cam S1 Pro 4K+2K Dual Dash Camera","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\t\n\t\t\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n\n\t\u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\t\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-8\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item9 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-9\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item10 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item11 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_1.webp?v=1768877968',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_1_mb.webp?v=1768877985'\n\t\t\t},\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_2.webp?v=1768877968',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_2_mb.webp?v=1768877986'\n            },\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_3.webp?v=1768877968',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_3_mb.webp?v=1768877986'\n            },\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_4.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_4_mb.webp?v=1768877986'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_5.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_5_mb.webp?v=1768877986'\n                }\n            ],\n            item5: [\n                {\n                    title: '5GHz Wi-Fi',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_6.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_6_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Smart App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_7.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_7_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_8.webp?v=1768877969',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_8_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_9.jpg?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_9_mb.webp?v=1768877986'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_11.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_11_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Seamless Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_12.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_12_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Hardwire Kit Wiring',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_13.jpg?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_13_mb.webp?v=1768877986'\n                }\n            ],\n\t\t\titem7: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_14.webp?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_14_mb.webp?v=1768877986'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_15.jpg?v=1768877968',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_15_mb.webp?v=1768877986'\n                }\n            ],\n\t\t\titem8: {\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_16_mb.webp?v=1768877986'\n\t\t\t},\n            item9: {\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1_Pro_Des_17_mb.webp?v=1768877986'\n            },\n            item10: [\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_Pro.jpg?v=1739505290',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_Pro_mb.jpg?v=1739505290',\n                    link: '\/products\/s1-pro',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_32G.jpg?v=1739505290',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_32G_mb.jpg?v=1739505289',\n                    link: '\/products\/s1-32g',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_Ultra.jpg?v=1739505291',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S_Description_S1_Ultra_mb.jpg?v=1739505290',\n                    link: '\/products\/s1-ultra',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                }\n            ],\n            item11: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands that use “interpolated 4K” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1 Pro features native True 4K recording for genuine ultra-high-definition video quality.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with advanced HDR Night Vision technology. This allows the camera to balance exposure in low-light and high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three convenient ways:\u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Pro to your computer using a data cable, or insert the microSD card into your computer to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro includes a 32GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item10;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\taddItem7();\n\taddItem8();\n\taddItem9();\n    addSpecification();\n    addFAQs();\n\n    \/\/item1\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/item2\n    function addItem2() {\n        addSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\t\n\t\/\/item3\n    function addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\t\n\t\/\/item4\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\t\n\t\/\/item5\n\tfunction addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/item6\n\tfunction addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n    \/\/item7\n    function addItem7() {\n        addScrollItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/item8\n    function addItem8() {\n        addSinglePicture2Item(\"description-item-8\", descriptionData.item8);\n    }\n\t\n\t\/\/item9\n    function addItem9() {\n        addSinglePicture2Item(\"description-item-9\", descriptionData.item9);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePicture2Item(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture2(item);\n    }\n\t\n\t\/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 3;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 2;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(3, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item11.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        return option;\n    }\n\t\n\t\/\/图片\n    function addPicture2(item) {\n\t\tlet option = '\u003cdiv class=\"description-invisible\"\u003e'\n\t\t\t+ '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img_mb + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e'\n\t\t\t+ '\u003c\/div\u003e';\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\u003c\/script\u003e","brand":"S1-Pro(Front 4K+Rear 2K)","offers":[{"title":"Default Title","offer_id":48644080959792,"sku":"Pro-US","price":46.49,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_01c7af6e-69cb-4494-813f-01b41508c455.webp?v=1775704255"},{"product_id":"car-windshield-double-sided-adhesive","title":"Miofive Car Windshield Double-Sided Adhesive","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0 10px;\n    }\n\n    .description-item {\n        width: 100%;\n    }\n\n    .description-item img {\n        width: 100%;\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\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_1_mb.jpg?v=1733126983\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_1.jpg?v=1733126992\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_2_mb.jpg?v=1733126974\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_2.jpg?v=1733126981\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_3_mb.jpg?v=1733126981\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_3.jpg?v=1733126988\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_4_mb.jpg?v=1733126992\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_4.jpg?v=1733126988\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_5_mb.jpg?v=1733126981\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_5.jpg?v=1733126991\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_6_mb.jpg?v=1733126980\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_6.jpg?v=1733126989\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_7_mb.jpg?v=1733126973\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Sticky_Mount_Description_7.jpg?v=1733126979\"\u003e\u003c\/picture\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","brand":"S1 Sticky Mount","offers":[{"title":"Default Title","offer_id":48739379511600,"sku":"S1 Adhesive-TUS","price":15.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_8f761c89-1f9f-47fc-b373-5bd70abe3d09.jpg?v=1733126805"},{"product_id":"6m-rear-cable","title":"Miofive 6M Rear Camera Cable(19.7FT)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\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\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\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","brand":"6M Rear Cable for S1","offers":[{"title":"Default Title","offer_id":49274927350064,"sku":"6M RC Cable-TUS","price":15.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_ce4ae414-f03b-4829-a261-889abd1c63e7.jpg?v=1732262621"},{"product_id":"mount-bracket-us","title":"Miofive Mounting Bracket","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\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\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\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","brand":"S1 Mounting Bracket","offers":[{"title":"Default Title","offer_id":49274940752176,"sku":"Mount Bracket-US","price":15.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_21f5c929-b89e-40b1-80ba-c4613b104215.jpg?v=1733129002"},{"product_id":"4k-rear-cam","title":"Miofive 4K Rear Camera","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0 10px;\n    }\n\n    .description-item {\n        width: 100%;\n    }\n\n    .description-item img {\n        width: 100%;\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\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_1_mb.jpg?v=1736326507\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_1.jpg?v=1736326528\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_2_mb.jpg?v=1736326507\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_2.jpg?v=1736326531\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_3_mb.jpg?v=1736326514\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_3.jpg?v=1736326533\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_4_mb.jpg?v=1736326497\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_4.jpg?v=1736326517\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_5_mb.jpg?v=1756197851\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_5.jpg?v=1756197848\"\u003e\u003c\/picture\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\"\u003e\n        \u003cpicture\u003e\n            \u003csource media=\"(max-width: 767px)\" srcset=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_6_mb.jpg?v=1736326489\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_4K_Rear_Cam_Description_6.jpg?v=1736326508\"\u003e\u003c\/picture\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","brand":"4K Rear Cam","offers":[{"title":"Default Title","offer_id":49429772140848,"sku":"4K RC-US","price":79.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_fd1e1a5b-8478-4c43-9058-bae6f6103e6d.jpg?v=1736325314"},{"product_id":"mf02","title":"Miofive 4K+2K Dual Dash Cam with 5G WiFi, GPS, Built-in 128GB eMMC Storage","description":"\u003cbody\u003e\n\n\n\n    \u003cmeta charset=\"UTF-8\"\u003e\n    \u003ctitle\u003eMiodrive\u003c\/title\u003e\n\n\n\n\n    \u003cstyle type=\"text\/css\"\u003e\n        .description-content {\n            margin: 0 10px;\n        }\n\n        .description-item {\n            width: 100%;\n            margin-bottom: 15px;\n        }\n\n        .description-item img {\n            width: 100%;\n        }\n\n        .description-item h3 {\n            margin: 0px;\n            padding: 0px;\n            font-size: 15px;\n            font-weight: 700;\n            color: black;\n        }\n\n        .description-item p {\n            margin: 0px;\n            padding: 0px;\n            font-size: 14px;\n        }\n\n        .description-column {\n            display: flex;\n            display: -ms-flex;\n            flex-wrap: wrap;\n            width: 100%;\n            margin-bottom: 5px;\n        }\n\n        .description-column-1 {\n            width: 24%;\n        }\n\n        .description-column-1 img {\n            width: 100%;\n        }\n\n        .description-column-1 h3 {\n            margin: 0px;\n            padding: 0px;\n            font-size: 15px;\n            font-weight: 700;\n            color: black;\n        }\n\n        .description-column-1 p {\n            margin: 0px;\n            padding: 0px;\n            font-size: 14px;\n        }\n\n        .description-column-1 ul {\n            margin: 0 20px;\n            padding: 0px;\n        }\n\n        .description-ml-10 {\n            margin-left: 1.33%;\n        }\n\n        @media screen and (max-width: 767px) {\n            .description-column {\n                width: 100%;\n                margin-bottom: 5px;\n            }\n\n            .description-column-1 {\n                width: 100%;\n            }\n\n            .description-ml-10 {\n                margin-left: 0px;\n            }\n        }\n\n        .description-title {\n            margin: 0px;\n            padding: 0px;\n            font-size: 15px;\n            font-weight: 700;\n            color: black;\n        }\n\n        .description-text {\n            margin: 0px;\n            padding: 0px;\n            font-size: 16px;\n        }\n    \u003c\/style\u003e\n\n    \u003cdiv class=\"description-content\"\u003e\n        \u003cdiv class=\"description-item\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/MF02_Description_1.png?v=1700646157\"\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"description-item\"\u003e\n            \u003ch3\u003e\n                Chronicle Your Trip\n            \u003c\/h3\u003e\n            \u003cp\u003e\n                Take car travel to the next level with Miofive Front and Rear Dash Cam System with 4K + 2K\n                resolutions. A must-have addition to vehicles electronics, this dashboard camera for cars uses\n                cutting edge AI algorithms, night vision and motion detection to safeguard your most precious\n                cargo. Capture footage in front of you and behind you with ultra-wide viewing angles, larger\n                color field and a rear camera so you never miss a moment of your epic road trips. Footage is\n                recorded and saved to the built-in 128G eMMC storage. Use 5G wifi connectivity and the Miofive\n                app to live-view the journey for more smiles per mile.\n            \u003c\/p\u003e\n            \u003cbr\u003e\n            \u003ch3\u003e\n                Bumper to Bumper Coverage\n            \u003c\/h3\u003e\n            \u003cp\u003e\n                This smart dashcam with G-sensor detects bumps and impacts, triggering 1 minute of recording\n                that you can give to police and insurance companies as irrefutable video evidence of hit-and-run\n                incidents or vandalism. With its GPS and speed tracking capabilities, the Miofive Car Camera Dash\n                Cam for front and rear also helps you monitor teen drivers. Exclusive Go Assist alerts drivers to\n                sudden turns and braking and prompts you to proceed when traffic flow resumes. The rear\n                camera documents rear end accidents and front plate numbers of aggressive motorists.\n            \u003c\/p\u003e\n            \u003cbr\u003e\n            \u003ch3\u003e\n                Fast, Easy Installation\n            \u003c\/h3\u003e\n            \u003cp\u003e\n                The Miofive GPS Dash Cam with front and rear cameras has plug-and-play installation with an\n                included 12v power cable. An optional hardwire kit is sold separately. Supported by our exclusive\n                app, you can use your smartphone or tablet to enjoy quick access to videos saved to the 3840P\n                UHD recorder. An integrated super capacitor supports the G-shock sensor so you never miss a\n                moment of activity near your vehicle.\n            \u003c\/p\u003e\n            \u003cbr\u003e\n            \u003ch3\u003e\n                For the ultimate car security and driver alert system, add the Miofive Dash Cam 4K Vehicle\n                Camera to your car accessories today.\n            \u003c\/h3\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"description-item\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/MF02_Description_2.png?v=1700646156\"\u003e\n            \u003ch3\u003e\n                The Ultimate Car Camera\n            \u003c\/h3\u003e\n            \u003cp\u003e\n                Record video footage of the road ahead and be prepared with video documentation if you are the\n                unfortunate victim of a rear-end collision. Miofive Dashcam with front and rear cameras captures for\n                posterity and for investigators your trek across country or just around town. High definition 4K\n                video is stored on a built-in 3840P UHD recorder for easy sharing family or law enforcement.\n            \u003c\/p\u003e\n            \u003cbr\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"description-column\"\u003e\n            \u003cdiv class=\"description-column-1\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/MF02_Description_3.png?v=1700646156\"\u003e\n                \u003cp class=\"description-text\"\u003e\n                    Chronicle Your Entire Trip\n                \u003c\/p\u003e\n                \u003cbr\u003e\n                \u003cul\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eCapture front \u0026amp; rear driving footage.\u003c\/b\u003e\n                            Capture what lies ahead and see where you’ve been when you outfit your car, SUV or family\n                            van with a Miofive Dash Cam Kit with front and rear cameras.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eShare footage to social media directly.\u003c\/b\u003e\n                            Not just a dashcam，Miofive can Help you track your vacation and keep those very special\n                            memories.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                \u003c\/ul\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"description-column-1 description-ml-10\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/MF02_Description_4.png?v=1700646156\"\u003e\n                \u003cp class=\"description-text\"\u003e\n                    Exclusive Miofive App\n                \u003c\/p\u003e\n                \u003cbr\u003e\n                \u003cul\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eWatch real-time video.\u003c\/b\u003e\n                            Support frame by frame video playback 、zoom-in and playback speed adjusts\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eDriving Report.\u003c\/b\u003e\n                            Enjoy easy access to driving records，GPS Logs at ultimate speed of 5GHz Wi-Fi.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eUpdate notification.\u003c\/b\u003e\n                            Receive OTA deliveries to update software.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                \u003c\/ul\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"description-column-1 description-ml-10\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/MF02_Description_5.png?v=1700646156\"\u003e\n                \u003cp class=\"description-text\"\u003e\n                    A Big List of Features\n                \u003c\/p\u003e\n                \u003cbr\u003e\n                \u003cul\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eCustom Voice Guidance.\u003c\/b\u003e\n                            You could disable the voice alerts by category.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eSmall yet mighty.\u003c\/b\u003e\n                            Adhering to window glass without obstructing your view of the road.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eWide Compatibility.\u003c\/b\u003e\n                            Compatible with all vehicle makes \u0026amp; models.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                \u003c\/ul\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"description-column-1 description-ml-10\"\u003e\n                \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/MF02_Description_6.png?v=1700646156\"\u003e\n                \u003cp class=\"description-text\"\u003e\n                    All-Sensing Algorithm\n                \u003c\/p\u003e\n                \u003cbr\u003e\n                \u003cul\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eGo Assist\u003c\/b\u003e\n                            monitors traffic conditions.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eReceive alerts\u003c\/b\u003e\n                            of sudden braking \u0026amp; turns.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003eG-shock sensor.\u003c\/b\u003e\n                            You never miss a moment of activity near your vehicle.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                    \u003cli\u003e\n                        \u003cp\u003e\n                            \u003cb class=\"description-title\"\u003ePresence of full-sized scenes.\u003c\/b\u003e\n                            140° viewing angles show the whole road.\n                        \u003c\/p\u003e\n                    \u003c\/li\u003e\n                \u003c\/ul\u003e\n                \u003cbr\u003e\n            \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"description-item\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/MF02_Description_7.png?v=1700646157\"\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"description-item\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/MF02_Description_8.png?v=1700646157\"\u003e\n            \u003ch3\u003e\n                Always on Guard\n            \u003c\/h3\u003e\n            \u003cp\u003e\n                The Miofive Car Dash Cam System with rear camera captures rear-end collisions, front-end fender\n                benders and vandalism that occurs while your vehicle is parked. Equipped with G-shock sensor and\n                night vision for nighttime or low-light environments, this state of the art addition to your car gadgets\n                helps protect an important asset from damage even when you are sound asleep.\n            \u003c\/p\u003e\n        \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n\n\n\u003c\/body\u003e","brand":"MF02(Front 4K+Rear 2K)","offers":[{"title":"Default Title","offer_id":49461618671920,"sku":"4K UHD Dash Cam Dual","price":93.49,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_3233ae17-de25-463d-a02d-17173f7cecfe.jpg?v=1737011024"},{"product_id":"s1-32g-uk","title":"MIOFIVE Dash Cam S1 4K UHD Front Dash Camera(32GB Card Included)(UK)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n    .description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n        min-width: 100%;\n        \/* 强制最小宽度为100% *\/\n        height: auto;\n        \/* 保持宽高比 *\/\n        display: block;\n        \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-invisible {\n        visibility: hidden;\n        display: none;\n    }\n\n    .description-bold-link {\n        font-weight: bold;\n        \/* 或者使用 font-weight: 700; *\/\n        text-decoration: none;\n        \/* 可选：去除下划线 *\/\n        color: #000000;\n        \/* 可选：设置链接颜色 *\/\n    }\n\n    \/* 鼠标悬停时保持加粗并改变颜色 *\/\n    .description-bold-link:hover {\n        color: #004499;\n        text-decoration: underline;\n    }\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\n        .description-invisible {\n            visibility: visible;\n            display: block;\n        }\n    }\n\u003c\/style\u003e\n\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item9 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_1.jpg?v=1778470087',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_1_mb.jpg?v=1778470096'\n            },\n            item2: [\n                {\n                    title: 'Speed Camera Alert',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_2.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_2_mb.webp?v=1762942734'\n                }\n            ],\n            item3: [\n                {\n                    title: 'Screen Display',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_3.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_3_mb.webp?v=1762942734'\n                },\n                {\n                    title: 'Easy to set up',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_4.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_4_mb.webp?v=1762942734'\n                }\n            ],\n            item4: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_5.webp?v=1762942625',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_5_mb.webp?v=1762942735'\n            },\n            item5: [\n                {\n                    title: 'Wi-Fi \u0026 Free APP Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_6.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_6_mb.webp?v=1762942734'\n                },\n                {\n                    title: 'GPS Tracking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_7.webp?v=1762942627',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_7_mb.webp?v=1762942735'\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_8.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_8_mb.webp?v=1762942735'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_9.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_9_mb.webp?v=1762942735'\n                },\n                {\n                    title: 'Free 32GB SD Card',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_10.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_10_mb.webp?v=1762942735'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Hour Parking Mode',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_11.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_11_mb.webp?v=1762942735'\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_12.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_12_mb.webp?v=1762942734'\n                }\n            ],\n            item7: [\n                {\n                    title: 'What’s In The Box',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_13.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_13_mb.webp?v=1762942734'\n                },\n                {\n                    title: 'Easy Installation',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_14.webp?v=1762942625',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_32G_Description_14_mb.webp?v=1762942734'\n                }\n            ],\n            item8: [\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G_mb.jpg?v=1739441640',\n                    link: '\/products\/s1-32g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                },\n                {\n                    title: 'S1 Pro+64G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G.jpg?v=1779871603',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G_mb.jpg?v=1779871603',\n                    link: '\/products\/miofive-pro-64g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra_mb.jpg?v=1739441641',\n                    link: '\/products\/s1-ultra-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                \/\/ {\n                \/\/     title: 'S1',\n                \/\/     img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1.jpg?v=1739441641',\n                \/\/     img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_mb.jpg?v=1739441641',\n                \/\/     link: '\/products\/s1-uk',\n                \/\/     specifications: [\n                \/\/         '4K(3840x2160) @30fps',\n                \/\/         '-',\n                \/\/         '3\" IPS',\n                \/\/         '2.4G \u0026 5G',\n                \/\/         'Bluetooth 4.2',\n                \/\/         '-'\n                \/\/     ]\n                \/\/ }\n            ],\n            item9: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n                            description: 'Yes. Unlike many brands that use “interpolated 4K” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1+32G features native True 4K recording for genuine ultra-high-definition video quality.',\n                            keywords: [\n                                { text: 'True 4K', link: 'https:\/\/www.youtube.com\/watch?v=4Rwq_jY_87k\u0026t=710s' }\n                            ]\n                        }\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n                        {\n                            description: 'Yes. The S1+32G is equipped with advanced HDR Night Vision technology. This allows the camera to balance exposure in low-light and high-contrast conditions, capturing sharper details and clearer license plates.',\n                            keywords: []\n                        }\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n                        {\n                            description: 'You can access and manage your recordings in three convenient ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n                            keywords: [\n                                { text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n                                { text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n                            ]\n                        },\n                        {\n                            description: '• On the Dash Cam: Review footage directly on the integrated display.',\n                            keywords: []\n                        },\n                        {\n                            description: '• On Your Computer: Connect the S1+32G to your computer using a data cable, or insert the microSD card into your computer to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n                            keywords: []\n                        }\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n                        {\n                            description: 'Yes. The S1+32G uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n                            keywords: []\n                        }\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n                            description: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n                            keywords: [\n                                { text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/usb-c-hwk2' },\n                                { text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable-uk' }\n                            ]\n                        }\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n                        {\n                            description: 'Yes. The S1+32G is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n                            keywords: [\n                                { text: 'professional-looking installation', link: 'https:\/\/youtu.be\/FchdtMLNq5c?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA' }\n                            ]\n                        }\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n                        {\n                            description: 'Yes. The S1+32G includes a 32GB microSD card, so you can start recording right out of the box. It also supports storage expansion up to 512GB for extended recording capacity.',\n                            keywords: []\n                        }\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item8;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\n    addSpecification();\n    addFAQs();\n\n    \/\/1\n    function addItem1() {\n        addSinglePictureItem('description-item-1', descriptionData.item1);\n    }\n\n    \/\/2\n    function addItem2() {\n        \/\/addSinglePictureItem('description-item-2', descriptionData.item2);\n        addScrollHeaderItem(\"2\", descriptionData.item2);\n    }\n\n    \/\/3\n    function addItem3() {\n        addScrollHeaderItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/4\n    function addItem4() {\n        addSinglePictureItem('description-item-4', descriptionData.item4);\n    }\n\n    \/\/5\n    function addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\n    \/\/6\n    function addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n    \/\/7\n    function addItem7() {\n        addScrollHeaderItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = list.length \u003e 1 ? previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next') : '';\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            \/\/ + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + addPicture(item)\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item9.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e'\n\n                    + renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\n\n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\n    function renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\n        if (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n    function getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\u003c\/script\u003e","brand":"S1+32G(Front 4K)","offers":[{"title":"Default Title","offer_id":49462180151600,"sku":"S1+32G-TUK","price":75.42,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_1.webp?v=1779344134"},{"product_id":"s1-ultra-uk","title":"S1 Ultra Dual 4K UHD Front and Rear Dash Camera(UK)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 25px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 可选搭配配件 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 产品规格对比 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_1.webp?v=1763104545',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_1_mb.webp?v=1763105028'\n            },\n            item2: [\n                {\n                    title: 'Speed Camera Alert',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_2.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_2_mb.webp?v=1763105028'\n                },\n                {\n                    title: 'OTA',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_3.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_3_mb.webp?v=1763105028'\n                }\n            ],\n            item3: [\n                {\n                    title: 'Dual 4K Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_4.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_4_mb.webp?v=1763105028'\n                },\n                {\n                    title: '5G Wi-Fi \u0026 App',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_5.webp?v=1763104880',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_5_mb.webp?v=1763105028'\n\n                },\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_6.webp?v=1763104880',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_6_mb.webp?v=1763105028'\n                },\n                {\n                    title: 'Superior Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_7.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_7_mb.webp?v=1763105028'\n                }\n            ],\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_8.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_8_mb.webp?v=1763105028'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_9.webp?v=1763104545',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_9_mb.webp?v=1763105028'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_10.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_10_mb.webp?v=1763105028'\n                }\n            ],\n            item5: [\n                {\n                    title: 'Rear Camera Connect',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_11.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_11_mb.webp?v=1763105028'\n                },\n                {\n                    title: 'What’s in the Box',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_12.webp?v=1763104545',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_12_mb.webp?v=1763105027'\n                },\n                {\n                    title: 'Easy Installation',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_13.webp?v=1763104546',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_13_mb.webp?v=1763105028'\n                },\n                {\n                    title: 'Accessories Recommendation',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_14.webp?v=1763104545',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S1_Ultra_Description_14_mb.webp?v=1763105028'\n                }\n            ], \n            item6: [\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Ultra_mb.jpg?v=1739441641',\n                    link: '\/products\/s1-ultra-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '4K(3840x2160) @24fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                {\n                    title: 'S1 Pro+64G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G.jpg?v=1779871603',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_Pro_64G_mb.jpg?v=1779871603',\n                    link: '\/products\/miofive-pro-64g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '2K(2560x1440) @30fps',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '64GB'\n                    ]\n                },\n                \/\/ {\n                \/\/     title: 'S1',\n                \/\/     img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1.jpg?v=1739441641',\n                \/\/     img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_mb.jpg?v=1739441641',\n                \/\/     link: '\/products\/s1-uk',\n                \/\/     specifications: [\n                \/\/         '4K(3840x2160) @30fps',\n                \/\/         '-',\n                \/\/         '3\" IPS',\n                \/\/         '2.4G \u0026 5G',\n                \/\/         'Bluetooth 4.2',\n                \/\/         '-'\n                \/\/     ]\n                \/\/ },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G.jpg?v=1739441641',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/UK_S_Description_S1_32G_mb.jpg?v=1739441640',\n                    link: '\/products\/s1-32g-uk',\n                    specifications: [\n                        '4K(3840x2160) @30fps',\n                        '-',\n                        '3\" IPS',\n                        '2.4G \u0026 5G',\n                        'Bluetooth 4.2',\n                        '32GB'\n                    ]\n                }\n            ],\n            item7: [\n                {\n                    title: '① Is it True 4K resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands that use \\“interpolated 4K\\” by upscaling lower-resolution footage through software, MIOFIVE is committed to transparency and integrity. The S1 Ultra features native True 4K recording for genuine ultra-high-definition video quality.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/bxV5oAT_EHU?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=782' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is equipped with advanced HDR night vision technology, which balances exposure in low-light and high-contrast conditions to capture sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the built-in display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Ultra to your computer using a data cable, or insert the microSD card to view and back up recordings. Compatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n\t   \n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely in temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. The parking monitor helps detect impacts and suspicious activity while your vehicle is parked.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'To enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/usb-c-hwk2' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable-uk' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra includes a 64GB microSD card, so you can start recording right out of the box. It also supports storage expansion up to 512GB for extended recording capacity.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item6;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Front Resolution',\n        'Rear Resolution',\n        'Display',\n        'Wi-Fi',\n        'Bluetooth',\n        'SD Card（Included）',\n        'Super Capacitor'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/2 产品功能 滑动图\n    function addItem2() {\n        addScrollHeaderItem(\"2\", descriptionData.item2);\n    }\n\n    \/\/产品功能2\n    function addItem3() {\n        addScrollHeaderItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/可选购配件\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/默认包装配件\n    function addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n           index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            \/\/ + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item7.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\n        if (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\t\n\tfunction getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\n\u003c\/script\u003e","brand":"S1-Ultra(Front 4K+Rear 4K)","offers":[{"title":"Default Title","offer_id":49465896567088,"sku":"S1 Ultra-TUK","price":138.37,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_1_4956ab5d-127f-4462-bbcb-637b060d302c.webp?v=1779344298"},{"product_id":"128gb","title":"Miofive 128GB microSDXC Memory 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: #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    .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 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    .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\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-scroll\" 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-title\"\u003eBasic Features of the Miofive microSD Cards\u003c\/div\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\u003c\/div\u003e\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_1.jpg?v=1736392674\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_1_mb.jpg?v=1736392598\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_2.jpg?v=1736392641\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_2_mb.jpg?v=1736392572\"\n                }\n            ],\n            item2: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_3.jpg?v=1736392649\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_3_mb.jpg?v=1736392681\"\n            },\n            item3: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_4.jpg?v=1736392639\",\n                    title: \"Class 10 (UHS)\",\n                    content: [\n                        \"Class 10\",\n                        \"(UHS) Ultra High-Speed Transfer\",\n                        \"Read Speed of up to 170 MB\/s\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_5.jpg?v=1736392619\",\n                    title: \"A2-Grade Memory Card\",\n                    content: [\n                        \"Input\/Output Operations Per Second (IOPS)\",\n                        \"Based on SDA (SD Association) Grading Standards\",\n                        \"A2 Grade (Application Performance Class 2) Memory Card\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_6.jpg?v=1736392651\",\n                    title: \"V30 Professional Design\",\n                    content: [\n                        \"For 4K ULTRA HD Video Recording\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_7.jpg?v=1736392658\",\n                    title: \"Powerful A+ Chip\",\n                    content: [\n                        \"Enhances storage stability, uses high-quality materials for manufacturing, and ensures smoother performance.\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_8.jpg?v=1736392656\",\n                    title: \"Capture Life‘s Moments\",\n                    content: [\n                        \"Enjoy life to the fullest while capturing and recording every beautiful moment in high resolution.\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_9.jpg?v=1736392624\",\n                    title: \"Fast Transfer and Storage\",\n                    content: [\n                        \"More space and higher speed. Free your devices with the largest capacity and highest read\/write speeds.\"\n                    ]\n                }\n            ],\n            item4: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_10.jpg?v=1736392669\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_10_mb.jpg?v=1736392596\",\n                    title: \"Lightning Fast\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_11.jpg?v=1736392673\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_11_mb.jpg?v=1736392598\",\n                    title: \"High Performance\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_12.jpg?v=1736392667\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_12_mb.jpg?v=1736392585\",\n                    title: \"Best Choice\"\n                }\n            ],\n            item5: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_13.jpg?v=1736392684\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_13_mb.jpg?v=1736392622\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_14.jpg?v=1736392657\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_14_mb.jpg?v=1736392595\"\n                }\n            ],\n            item6: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_15.jpg?v=1736392647\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_15_mb.jpg?v=1736392576\"\n            },\n            item7: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_16.jpg?v=1736392665\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_128G_Description2_16_mb.jpg?v=1736392686\"\n            }\n        };\n\n        return data;\n    }\n\n    const descriptionData = initData();\n\n    addItem1();\n    addItem2();\n    addItem3()\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\n\n    function addItem1() {\n        const dots = [];\n        let dotCount = descriptionData.item1.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-1');\n        let option = previousButton('scroll-1-previous')\n            + nextButton('scroll-1-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-1\"\u003e';\n        descriptionData.item1.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e';\n            if (item.link) {\n                scrollOption += '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + '\u003c\/a\u003e';\n            } else {\n                scrollOption +=  addPicture(item);\n            }\n            scrollOption += '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-1-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-1');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-1-\" + (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-1-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-1-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 addItem2() {\n        const descriptionItem = document.getElementById('description-item-2');\n        descriptionItem.innerHTML = addPicture(descriptionData.item2);\n    }\n\n    function addItem3() {\n        const dots = [];\n        let dotCount = descriptionData.item3.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-3');\n        let option = previousButton('scroll-3-previous')\n            + nextButton('scroll-3-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-3\"\u003e';\n        descriptionData.item3.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-3-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-3');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-3-\" + (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-3-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-3-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 headerCount = descriptionData.item4.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-4');\n        let option = previousButton('scroll-4-previous')\n            + nextButton('scroll-4-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-4\"\u003e';\n\n        descriptionData.item4.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + 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\n        const scroll = document.getElementById('description-scroll-4');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (headerCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + (i + 1));\n            console.log(\"btn: \", btn);\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-4-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-4-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    function addItem5() {\n        const dots = [];\n        let dotCount = descriptionData.item5.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-5');\n        let option = previousButton('scroll-5-previous')\n            + nextButton('scroll-5-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-5\"\u003e';\n        descriptionData.item5.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e';\n            if (item.link) {\n                scrollOption += '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + '\u003c\/a\u003e';\n            } else {\n                scrollOption +=  addPicture(item);\n            }\n            scrollOption += '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-5-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-5');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-5-\" + (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-5-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-5-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 addItem6() {\n        const descriptionItem = document.getElementById('description-item-6');\n        descriptionItem.innerHTML = addPicture(descriptionData.item6);\n    }\n\n    function addItem7() {\n        const descriptionItem = document.getElementById('description-item-7');\n        descriptionItem.innerHTML = addPicture(descriptionData.item7);\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\u003c\/script\u003e","brand":"128GB microSDXC Card","offers":[{"title":"Default Title","offer_id":49465997558064,"sku":"128GB-TUK","price":29.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_a2bbca85-32b3-465f-b94a-3e704d6e3a97.jpg?v=1739259415"},{"product_id":"512gb","title":"Miofive 512GB microSDXC Memory 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: #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    .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 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    .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\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-scroll\" 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-title\"\u003eBasic Features of the Miofive microSD Cards\u003c\/div\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\u003c\/div\u003e\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_1.jpg?v=1736394972\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_1_mb.jpg?v=1736394903\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_2.jpg?v=1736394944\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_2_mb.jpg?v=1736394876\"\n                }\n            ],\n            item2: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_3.jpg?v=1736394951\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_3_mb.jpg?v=1736394978\"\n            },\n            item3: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_4.jpg?v=1736394942\",\n                    title: \"Class 10 (UHS)\",\n                    content: [\n                        \"Class 10\",\n                        \"(UHS) Ultra High-Speed Transfer\",\n                        \"Read Speed of up to 170 MB\/s\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_5.jpg?v=1736394926\",\n                    title: \"A2-Grade Memory Card\",\n                    content: [\n                        \"Input\/Output Operations Per Second (IOPS)\",\n                        \"Based on SDA (SD Association) Grading Standards\",\n                        \"A2 Grade (Application Performance Class 2) Memory Card\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_6.jpg?v=1736394952\",\n                    title: \"V30 Professional Design\",\n                    content: [\n                        \"For 4K ULTRA HD Video Recording\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_7.jpg?v=1736394959\",\n                    title: \"Powerful A+ Chip\",\n                    content: [\n                        \"Enhances storage stability, uses high-quality materials for manufacturing, and ensures smoother performance.\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_8.jpg?v=1736394957\",\n                    title: \"Capture Life‘s Moments\",\n                    content: [\n                        \"Enjoy life to the fullest while capturing and recording every beautiful moment in high resolution.\"\n                    ]\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_9.jpg?v=1736394930\",\n                    title: \"Fast Transfer and Storage\",\n                    content: [\n                        \"More space and higher speed. Free your devices with the largest capacity and highest read\/write speeds.\"\n                    ]\n                }\n            ],\n            item4: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_10.jpg?v=1736394968\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_10_mb.jpg?v=1736394901\",\n                    title: \"Lightning Fast\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_11.jpg?v=1736394971\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_11_mb.jpg?v=1736394905\",\n                    title: \"High Performance\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_12.jpg?v=1736394966\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_12_mb.jpg?v=1736394888\",\n                    title: \"Best Choice\"\n                }\n            ],\n            item5: [\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_13.jpg?v=1736394980\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_13_mb.jpg?v=1736394929\"\n                },\n                {\n                    img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_14.jpg?v=1736394958\",\n                    img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_14_mb.jpg?v=1736394900\"\n                }\n            ],\n            item6: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_15.jpg?v=1736394950\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_15_mb.jpg?v=1736394879\"\n            },\n            item7: {\n                img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_16.jpg?v=1736394965\",\n                img_mb: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Card_512G_Description2_16_mb.jpg?v=1736394983\"\n            }\n        };\n\n        return data;\n    }\n\n    const descriptionData = initData();\n\n    addItem1();\n    addItem2();\n    addItem3()\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\n\n    function addItem1() {\n        const dots = [];\n        let dotCount = descriptionData.item1.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-1');\n        let option = previousButton('scroll-1-previous')\n            + nextButton('scroll-1-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-1\"\u003e';\n        descriptionData.item1.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e';\n            if (item.link) {\n                scrollOption += '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + '\u003c\/a\u003e';\n            } else {\n                scrollOption +=  addPicture(item);\n            }\n            scrollOption += '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-1-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-1');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-1-\" + (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-1-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-1-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 addItem2() {\n        const descriptionItem = document.getElementById('description-item-2');\n        descriptionItem.innerHTML = addPicture(descriptionData.item2);\n    }\n\n    function addItem3() {\n        const dots = [];\n        let dotCount = descriptionData.item3.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-3');\n        let option = previousButton('scroll-3-previous')\n            + nextButton('scroll-3-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-3\"\u003e';\n        descriptionData.item3.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-3-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-3');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-3-\" + (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-3-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-3-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 headerCount = descriptionData.item4.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-4');\n        let option = previousButton('scroll-4-previous')\n            + nextButton('scroll-4-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-4\"\u003e';\n\n        descriptionData.item4.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + 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\n        const scroll = document.getElementById('description-scroll-4');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (headerCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + (i + 1));\n            console.log(\"btn: \", btn);\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-4-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-4-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    function addItem5() {\n        const dots = [];\n        let dotCount = descriptionData.item5.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-5');\n        let option = previousButton('scroll-5-previous')\n            + nextButton('scroll-5-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-5\"\u003e';\n        descriptionData.item5.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e';\n            if (item.link) {\n                scrollOption += '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + '\u003c\/a\u003e';\n            } else {\n                scrollOption +=  addPicture(item);\n            }\n            scrollOption += '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-5-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-5');\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            if (dotCount == 2) {\n                if (index \u003c 0.1) {\n                    index = 0;\n                }\n                if (index \u003e 0.9) {\n                    index = 1;\n                }\n            }\n\n            if (Number.isInteger(index) \u0026\u0026 selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-5-\" + (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-5-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-5-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 addItem6() {\n        const descriptionItem = document.getElementById('description-item-6');\n        descriptionItem.innerHTML = addPicture(descriptionData.item6);\n    }\n\n    function addItem7() {\n        const descriptionItem = document.getElementById('description-item-7');\n        descriptionItem.innerHTML = addPicture(descriptionData.item7);\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\u003c\/script\u003e","brand":"512GB microSDXC Card","offers":[{"title":"Default Title","offer_id":49466065682736,"sku":"512GB-TUK","price":79.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_e443b280-7152-49b1-af38-8eeed20a6e0e.jpg?v=1739258155"},{"product_id":"usb-c-hwk2","title":"Miofive 11.5ft Type-C Hardwire Kit(HWK2)(UK)","description":"","brand":"USB-C Hardwire Kit(HKW2)","offers":[{"title":"Default Title","offer_id":49466067616048,"sku":"HWK2-TUK","price":29.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_b9705c4c-eef8-46d5-9cba-39b51e9d2b61.jpg?v=1754446824"},{"product_id":"cpl-filter-uk","title":"Miofive 34mm CPL Filter(UK)","description":"","brand":"CPL Filter","offers":[{"title":"Default Title","offer_id":49466067845424,"sku":"CPL filter-TUK","price":19.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_de6ceb5b-7e15-4f53-92e7-05c28449884b.jpg?v=1739260584"},{"product_id":"s1-mount","title":"Miofive Car Windshield Double-Sided Adhesive (UK)","description":"","brand":"S1 Sticky Mount","offers":[{"title":"Default Title","offer_id":49466073088304,"sku":"S1 Adhesive-TUK","price":15.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_85365501-beb9-4892-b13f-017d8f9a6744.jpg?v=1739262485"},{"product_id":"mount-bracket-uk","title":"Miofive Mounting Bracket(UK)","description":"","brand":"S1 Mounting Bracket","offers":[{"title":"Default Title","offer_id":49466078003504,"sku":"Mount Bracket-TUK","price":15.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1-1_0b2c0e92-4951-496f-bbd3-eafca299cdd0.jpg?v=1739262247"},{"product_id":"6m-rear-cable-uk","title":"Miofive 6M Rear Camera Cable(19.7FT)(UK)","description":"","brand":"6M Rear Cable for S1","offers":[{"title":"Default Title","offer_id":49466079183152,"sku":"6M RC Cable-TUK","price":15.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1-1_fca6a696-544c-4aab-a4dd-cea21e4b28a6.jpg?v=1739261611"},{"product_id":"s1-e","title":"MIOFIVE Dash Cam S1 E 4K Front Dash Camera","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #0000;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #232323;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\t\t\t\t\t\t\t\t\t\t\t\t \n\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t\t \n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\n\u003cdiv class=\"description-content\"\u003e\n\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e. Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_1.webp?v=1762767605',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_1_mb.webp?v=1762767592'\n            },\n            item2: [\n                {\n                    title: 'Crystal 4K Resolution',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_2.webp?v=1762767605',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_2_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'Built-In WiFi 6',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_3.webp?v=1762767605',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_3_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'GPS Route Tracking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_4.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_4_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'Super Night Vision',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_5.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_5_mb.webp?v=1762767592'\n                }\n            ],\n            item3: [\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_6.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_6_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_7.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_7_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'G-Sensor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_8.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_8_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'USB Type-C Compatibility',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_9.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_9_mb.webp?v=1762767592'\n                }\n            ],\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_10.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_10_mb.webp?v=1762767592'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_11.webp?v=1762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_11_mb.webp?v=1762767592'\n                }\n            ],\n            item5: [\n                {\n                    title: 'High Image Sensor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_12.webp?v=1762767607',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_12_mb.webp?v=1741854098'\n                },\n                {\n                    title: 'Supercapacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_13.webp?v=11762767606',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_13_mb.webp?v=1762767592'\n                },\n                {\n                    title: 'Package Contents',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_14.webp?v=1762767605',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_Description_14_mb.webp?v=1762767592'\n                }\n            ],\n            item6: [\n                {\n                    title: '① Is it safe to use in hot weather?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 E uses a supercapacitor instead of a traditional lithium battery, providing superior heat resistance and reliability. It operates safely even in extreme summer temperatures.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Does it record while my car is parked?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires either a hardwire kit or an OBD II power cable (sold separately). Only one power option is needed.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit' },\n\t\t\t\t\t\t\t\t{ text: 'OBD II power cable', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-obd-ii-power-cable' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three convenient ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 E to your computer using a data cable, or insert the microSD card into your computer to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 E is designed for quick plug-and-play installation, and most users can complete setup within minutes. The package includes all necessary accessories and cable management tools for a clean, professional-looking installation.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. A microSD card is required and sold separately. High-endurance microSD cards are recommended for continuous recording and long-term reliability.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n        return data;\n    }\n\n    const descriptionData = initData();\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addFAQs();\n\n    function addItem1() {\n        const descriptionItem1 = document.getElementById('description-item-1');\n        descriptionItem1.innerHTML = addPicture(descriptionData.item1);\n    }\n\n    function addItem2() {\n        const headers = [];\n        let list = descriptionData.item2;\n        let headerCount = list.length;\n        let selectIndex = 0;\n        const descriptionId = 2;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    function addItem3() {\n        const headers = [];\n        let list = descriptionData.item3;\n        let headerCount = list.length;\n        let selectIndex = 0;\n        const descriptionId = 3;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    function addItem4() {\n        const dots = [];\n        let list = descriptionData.item4;\n        let dotCount = list.length;\n        let selectIndex = 0;\n        const descriptionId = 4;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    function addItem5() {\n        const headers = [];\n        let list = descriptionData.item5;\n        let headerCount = list.length;\n        let selectIndex = 0;\n        const descriptionId = 5;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    function addFAQs() {\n        let list = descriptionData.item6;\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        list.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option;\n        if (item.img_mb) {\n            option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option = '\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n    function getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\u003c\/script\u003e","brand":"S1 E(Front 4K)","offers":[{"title":"Default Title","offer_id":49519747596592,"sku":"S1 E-US","price":59.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/US_S1E_1.webp?v=1775704153"},{"product_id":"mini-2","title":"MIOFIVE Dash Cam Mini 2 2K+1080P FHD Dual  Dash Camera(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":"Mini 2(2K+1080P)","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=1764665916"},{"product_id":"miofive-genuine-type-c-cable-2","title":"Miofive  0.5M Type C to Type C Connecting Cable (1.64FT)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\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\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\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","brand":"Type C Cable 2","offers":[{"title":"Default Title","offer_id":49651301351728,"sku":"Type C Cable 2-US","price":9.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/11_bfdbc05b-3f0e-49fa-95d0-d58ff27d49da.jpg?v=1742811592"},{"product_id":"miofive-genuine-type-c-cable-2-uk","title":"Miofive 0.5M (1.64FT) Type C to Type C Connecting Cable (UK)","description":"","brand":"Type C Cable 2","offers":[{"title":"Default Title","offer_id":49651307381040,"sku":"Type C Cable 2-TUK","price":9.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/11_4b0a13bf-0b0f-4235-a068-6d1db93dcdd9.jpg?v=1742812122"},{"product_id":"mirror-1-10m-rear-cable","title":"Miofive 10M Rear Cable for Mirror 1(10-pin 32.81ft)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\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\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\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","brand":"10M Rear Cable For Mirro 1","offers":[{"title":"Default Title","offer_id":49764720771376,"sku":"Mirror 1 Extension Cord--US","price":19.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_86ac8bbb-93e3-4f04-b8b8-b06313d1c94b.jpg?v=1745733449"},{"product_id":"s1-series-dash-cams-10m-rear-cable","title":"Miofive 10M Rear Cable for S1 Series(8-pin 32.81ft)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\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\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\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","brand":"10M Rear Cable For S1 Series","offers":[{"title":"Default Title","offer_id":49764744921392,"sku":"10M RC Cable-TUS","price":19.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_95e3ac1d-8339-4906-92ef-ede0108e9e65.jpg?v=1745738221"},{"product_id":"s1-series-dash-cams-10m-rear-cable-uk","title":"Miofive 10M Rear Cable for S1 Series(8-pin 32.81ft)(UK)","description":"","brand":"10M Rear Cable For S1 Series","offers":[{"title":"Default Title","offer_id":49764750688560,"sku":"S1 Extension Cord--UK","price":19.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_8c1a7acb-b36b-49a9-8759-c2ee294fdcbf.jpg?v=1745738854"},{"product_id":"miofive-s1-32g-au","title":"MIOFIVE Dash cam S1 4K UHD Single Dash Camera(32GB SD Card Included)(AU)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\t\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 0;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\t\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        height: 30px;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 28px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n\t\u003cdiv class=\"description-item\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 产品规格对比 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_1.webp?v=1762497648',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_1_mb.webp?v=1762497662'\n            },\n            item2: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_2.webp?v=1762497650',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_2_mb.webp?v=1762497663'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_3.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_3_mb.webp?v=1762497662'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_4.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_4_mb.webp?v=1762497663'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_5.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_5_mb.webp?v=1762497663'\n                }\n            ],\n            item3: [\n                {\n                    title: 'Al Technology',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_6.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_6_mb.webp?v=1762497663'\n                },\n                {\n                    title: 'G-Sensor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_7.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_7_mb.webp?v=1762497663'\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_8.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_8_mb.webp?v=1762497663'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_9.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_9_mb.webp?v=1762497663'\n                }\n            ],\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_10.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_10_mb.webp?v=1762497663'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_11.webp?v=1762497649',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_11_mb.webp?v=1762497663'\n                }\n            ],\n            item5: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_12.webp?v=1762497648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_12_mb.webp?v=1762497663'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_13.webp?v=1762497648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_13_mb.webp?v=1762497664'\n                }\n            ],\n\t\t\titem6: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_14.webp?v=1778814852',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_32G_Description_14_mb.webp?v=1778814845'\n            },\n            item7: [\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G_mb.jpg?v=1749194648',\n                    link: '\/en-au\/products\/miofive-s1-32g-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/en-au\/products\/miofive-s1-ultra-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/en-au\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/en-au\/products\/miofive-s1-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item8: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1+32G uses Native True 4K technology. ',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/4Rwq_jY_87k?t=710' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways: \u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1+32G to your computer using a data cable, or insert the microSD card to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-type-c-hardwire-kit' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1+32G is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'professional-looking install', link: 'https:\/\/youtu.be\/FchdtMLNq5c?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1+32G  includes a 32GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item7;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\t\n    \/\/addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/2 产品功能 滑动图\n    function addItem2() {\n\t\taddScrollItem(\"2\", descriptionData.item2);\n    }\n\t\n\tfunction addItem3() {\n        addScrollHeaderItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/产品功能2\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/可选购配件\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\t\n\tfunction addItem6() {\n        addSinglePictureItem(\"description-item-6\", descriptionData.item6);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n        headerOption += '\u003c\/div\u003e';\n\t\t\t\t\t\t\t\t \n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                \n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\t\t\t\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(3, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\t\t\t\t\t  \n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + addPicture(item)\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item8.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\t\t\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\n        if (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\n\u003c\/script\u003e","brand":"S1+32G(Front 4K)","offers":[{"title":"Default Title","offer_id":49851344781616,"sku":"S1+32G-AU","price":73.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/Frame_13.jpg?v=1779353821"},{"product_id":"miofive-s1-pro-au","title":"MIOFIVE Dash cam S1 Pro 4K+2K Dual Dash Camera(AU)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\t\n\t\t\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n            display: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n\n\t\u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\t\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-8\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item9 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-9\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item10 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item11 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_1.webp?v=1768880130',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_1_mb.webp?v=1768880148'\n\t\t\t},\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_2.webp?v=1768880130',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_2_mb.webp?v=1768880149'\n            },\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_3.webp?v=1768880130',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_3_mb.webp?v=1768880149'\n            },\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_4.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_4_mb.webp?v=1768880149'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_5.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_5_mb.webp?v=1768880149'\n                }\n            ],\n            item5: [\n                {\n                    title: '5GHz Wi-Fi',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_6.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_6_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Smart App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_7.webp?v=1768795030',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_7_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_8.webp?v=1768795030',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_8_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_9.jpg?v=1768795030',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_9_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Speed Camera Alert',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_10.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_10_mb.webp?v=1768880149'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_11.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_11_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Seamless Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_12.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_12_mb.webp?v=1768880149'\n                },\n                {\n                    title: 'Hardwire Kit Wiring',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_13.jpg?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_13_mb.webp?v=1768880149'\n                }\n            ],\n\t\t\titem7: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_14.webp?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_14_mb.webp?v=1768880149'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_15.jpg?v=1768880130',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_15_mb.webp?v=1768880149'\n                }\n            ],\n\t\t\titem8: {\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_16_mb.webp?v=1768880149'\n\t\t\t},\n            item9: {\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Pro_Des_17_mb.webp?v=1768880149'\n            },\n            item10: [\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-ultra-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-32g-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item11: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1 Pro uses Native True 4K technology.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways:\u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Pro to your computer using a data cable, or insert the microSD card to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-type-c-hardwire-kit' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1 Pro is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro includes a 32GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item10;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\taddItem7();\n\taddItem8();\n\taddItem9();\n    addSpecification();\n    addFAQs();\n\n    \/\/item1\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/item2\n    function addItem2() {\n        addSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\t\n\t\/\/item3\n    function addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\t\n\t\/\/item4\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\t\n\t\/\/item5\n\tfunction addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/item6\n\tfunction addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n    \/\/item7\n    function addItem7() {\n        addScrollItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/item8\n    function addItem8() {\n        addSinglePicture2Item(\"description-item-8\", descriptionData.item8);\n    }\n\t\n\t\/\/item9\n    function addItem9() {\n        addSinglePicture2Item(\"description-item-9\", descriptionData.item9);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePicture2Item(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture2(item);\n    }\n\t\n\t\/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(3, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item11.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        return option;\n    }\n\t\n\t\/\/图片\n    function addPicture2(item) {\n\t\tlet option = '\u003cdiv class=\"description-invisible\"\u003e'\n\t\t\t+ '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img_mb + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e'\n\t\t\t+ '\u003c\/div\u003e';\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\u003c\/script\u003e","brand":"S1-Pro(Front 4K+Rear 2K)","offers":[{"title":"Default Title","offer_id":49851458322736,"sku":"S1 Pro-AU","price":93.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Pro.webp?v=1780455341"},{"product_id":"miofive-s1-ultra-au","title":"S1 Ultra Dual 4K UHD Front and Rear Dash Camera(AU)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n\t.description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 25px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 0;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        height: 30px;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 28px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 主图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 产品功能滑动图 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 产品功能2 滑动图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 默认包装配件图 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 产品规格对比 --\u003e \n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_1.webp?v=1762496455',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_1_mb.webp?v=1762496468'\n            },\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_2.webp?v=1762496455',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_2_mb.webp?v=1762496469'\n            },\n            item3: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_3.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_3_mb.webp?v=1762496469'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_4.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_4_mb.webp?v=1762496469'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_5.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_5_mb.webp?v=1762496470'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_6.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_6_mb.webp?v=1762496470'\n                }\n            ],\n            item4: [\n                {\n                    title: '24H Parking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_7.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_7_mb.webp?v=1762496469'\n                },\n                {\n                    title: 'Collision Detection',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_8.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_8_mb.webp?v=1762496469'\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_9.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_9_mb.webp?v=1762496469'\n                }\n            ],\n            item5: [\n                {\n\t\t\t\t\t\t\t\t\t\t\t\t\t \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_10.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_10_mb.webp?v=1762496469'\n                },\n                {\n\t\t\t\t\t\t\t\t\t  \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_11.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_11_mb.webp?v=1762496469'\n                },\n                {\n\t\t\t\t\t\t\t\t\t\t\t\t\t \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_12.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_12_mb.webp?v=1762496469'\n                },\n                {\n\t\t\t\t\t\t\t\t\t\t\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_13.webp?v=1762496455',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_S1_Ultra_Description_13_mb.webp?v=1762496469'\n                }\n            ],\n            item6: [\n                {\n                    title: 'S1 Ultra',\t\t\t\t\t\t   \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-ultra-au',\n                    specifications: [\n\t\t\t\t\t\t\t\t\t\t\t   \n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n\t\t\t\t\t\t\t\t\t\t\t   \n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-32g-au',\n                    specifications: [\n                        '3\" IPS Screen',\n\t\t\t\t\t\t\t\t\t\t\t   \n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-au',\n                    specifications: [\n\t\t\t\t\t\t\t\t\t\t\t   \n\t\t\t\t\t\t\t\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item7: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1 Ultra uses Native True 4K technology. ',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/bxV5oAT_EHU?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=782' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra  is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways:',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Ultra to your computer using a data cable, or insert the microSD card to view and back up recordings. Compatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'To enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/miofive-type-c-hardwire-kit' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1 Ultra is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra includes a 64GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item6;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3()\n    addItem4();\n    addItem5();\n\t\n    addSpecification();\n    addFAQs();\n\n    \/\/1 主图\n    function addItem1() {\n\t\taddSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/2 产品功能 滑动图\n    function addItem2() {\n\t\taddSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\t\n\t\/\/产品功能2\n    function addItem3() {\n        addScrollItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/可选购配件\n    function addItem4() {\n        addScrollHeaderItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/默认包装配件\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n        const scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\n                let left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                \n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/默认包装配件\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(3, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\t\t\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\t\t\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + addPicture(item)\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item7.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\t\t\n\t\tif (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\t\n\tfunction getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\n\u003c\/script\u003e","brand":"S1-Ultra(Front 4K+Rear 4K)","offers":[{"title":"Default Title","offer_id":49851461271856,"sku":"S1 Ultra-AU","price":132.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Ultra.webp?v=1780455341"},{"product_id":"miofive-s1-extension-cord-au","title":"Miofive 10M Rear Cable(8-pin 32.81ft)(AU)","description":"","brand":"S1 Extension Cord-AU","offers":[{"title":"Default Title","offer_id":49851540013360,"sku":"S1 Extension Cord-AU","price":19.44,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/5_71cd4a6c-6893-40c9-bafa-562f7fbfb5a1.jpg?v=1748335734"},{"product_id":"miofive-6m-rc-cable-au","title":"Miofive 6M(19.7FT) Rear Camera Cable(AU)","description":"","brand":"6M RC Cable-AU","offers":[{"title":"Default Title","offer_id":49851541487920,"sku":"6M RC Cable-AU","price":16.8,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/4_414aee2c-be39-4733-bea7-577c7417b4f8.jpg?v=1748335643"},{"product_id":"miofive-s1-mount-au","title":"Miofive Car Windshield Double-Sided Adhesive(AU)","description":"","brand":"S1 Mount-AU","offers":[{"title":"Default Title","offer_id":49851542733104,"sku":"S1 Mount-AU","price":18.8,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_5d18b218-0939-4058-9329-96bd95275857.jpg?v=1748330317"},{"product_id":"miofive-mount-bracket-au","title":"Miofive Mounting Bracket(AU)","description":"","brand":"Mount Bracket-AU","offers":[{"title":"Default Title","offer_id":49851547353392,"sku":"Mount Bracket-AU","price":16.85,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/2_2c516271-5ea4-4305-b220-79aafe400706.jpg?v=1748335872"},{"product_id":"miofive-s1-pro-ca","title":"MIOFIVE Dash Cam S1 Pro 4K+2K Dual Dash Camera(CA)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n    .description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\t\n\t\t\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\t\n\t.description-invisible {\n        visibility: hidden;\n\t\tdisplay: none;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n\t\t\n\t\t.description-invisible {\n\t\t\tvisibility: visible;\n\t\t\tdisplay: block;\n\t\t}\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n\n\t\u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\t\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item8 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-8\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item9 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-9\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item10 --\u003e\n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item11 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n\t\t\t\timg: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_1.webp?v=1768878740',\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_1_mb.webp?v=1768877985'\n\t\t\t},\n            item2: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_2.webp?v=1768878741',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_2_mb.webp?v=1768877986'\n            },\n\t\t\titem3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_3.webp?v=1768878741',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_3_mb.webp?v=1768877986'\n            },\n            item4: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_4.webp?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_4_mb.webp?v=1768877986'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_5.webp?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_5_mb.webp?v=1768877986'\n                }\n            ],\n            item5: [\n                {\n                    title: '5GHz Wi-Fi',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_6.webp?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_6_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Smart App Control',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_7.webp?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_7_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Built-in GPS',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_8.webp?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_8_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Super Capacitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_9.jpg?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_9_mb.webp?v=1768877986'\n                }\n            ],\n            item6: [\n                {\n                    title: '24-Hour Parking Monitor',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_11.webp?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_11_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Seamless Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_12.webp?v=1768878741',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_12_mb.webp?v=1768877986'\n                },\n                {\n                    title: 'Hardwire Kit Wiring',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_13.jpg?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_13_mb.webp?v=1768877986'\n                }\n            ],\n\t\t\titem7: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_14.webp?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_14_mb.webp?v=1768877986'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_15.jpg?v=1768878740',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_15_mb.webp?v=1768877986'\n                }\n            ],\n\t\t\titem8: {\n\t\t\t\timg_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_16_mb.webp?v=1768803752'\n\t\t\t},\n            item9: {\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Pro_Des_17_mb.webp?v=1768877986'\n            },\n            item10: [\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Ultra',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-ultra-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1+32G',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_32G_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-32g-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item11: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1 Pro uses Native True 4K technology.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways:\u003cbr\u003e• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Pro to your computer using a data cable, or insert the microSD card to view and back up recordings. \u003cbr\u003eCompatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked. \u003cbr\u003eTo enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit-ca' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1 Pro is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦ Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Pro includes a 32GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item10;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n\taddItem6();\n\taddItem7();\n\taddItem8();\n\taddItem9();\n    \/\/addSpecification();\n    addFAQs();\n\n    \/\/item1\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/item2\n    function addItem2() {\n        addSinglePictureItem(\"description-item-2\", descriptionData.item2);\n    }\n\t\n\t\/\/item3\n    function addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\t\n\t\/\/item4\n    function addItem4() {\n        addScrollItem(\"4\", descriptionData.item4);\n    }\n\t\n\t\/\/item5\n\tfunction addItem5() {\n        addScrollHeaderItem(\"5\", descriptionData.item5);\n    }\n\t\n\t\/\/item6\n\tfunction addItem6() {\n        addScrollHeaderItem(\"6\", descriptionData.item6);\n    }\n\n    \/\/item7\n    function addItem7() {\n        addScrollItem(\"7\", descriptionData.item7);\n    }\n\n    \/\/item8\n    function addItem8() {\n        addSinglePicture2Item(\"description-item-8\", descriptionData.item8);\n    }\n\t\n\t\/\/item9\n    function addItem9() {\n        addSinglePicture2Item(\"description-item-9\", descriptionData.item9);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\t\n\t\/\/单张预览图\n    function addSinglePicture2Item(containerID, item) {\n\t\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture2(item);\n    }\n\t\n\t\/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(3, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(4, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item11.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   \n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\n    \/\/图片\n    function addPicture(item) {\n        let option = '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        return option;\n    }\n\t\n\t\/\/图片\n    function addPicture2(item) {\n\t\tlet option = '\u003cdiv class=\"description-invisible\"\u003e'\n\t\t\t+ '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img_mb + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e'\n\t\t\t+ '\u003c\/div\u003e';\n        return option;\n    }\n\n    function addItem2Content(item) {\n        let connectOption = '';\n        item.content.forEach(content =\u003e {\n            connectOption += '\u003cp\u003e' + content + '\u003c\/p\u003e';\n        });\n\n        let option = '\u003cdiv class=\"description-wrapper-item description-wrapper-text\"\u003e'\n            + '\u003cdiv\u003e'\n            + '\u003ch3\u003e' + item.title + '\u003c\/h3\u003e'\n            + connectOption\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\n\u003c\/script\u003e","brand":"S1 Pro-CA(4K+2K)","offers":[{"title":"Default Title","offer_id":49851724464432,"sku":"S1 Pro-AU","price":97.6,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_01c7af6e-69cb-4494-813f-01b41508c455.webp?v=1775704255"},{"product_id":"miofive-s1-ultra-ca","title":"S1 Ultra Dual 4K UHD Front and Rear Dash Camera(CA)","description":"\u003cstyle type=\"text\/css\"\u003e\n    .description-content {\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item {\n        width: 100%;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-item img {\n        width: 100%;\n    }\n\n    .description-scroll {\n        position: relative;\n        margin: 0px auto;\n        padding: 0px;\n    }\n\n    .description-scroll-btn {\n        top: 50%;\n        position: absolute;\n        padding: 10px;\n        cursor: pointer;\n        width: 42px;\n        height: 42px;\n        border-radius: 50%;\n        background-color: rgb(247, 247, 247);\n        border: 1px solid var(--icon);\n        transform: translateY(-50%);\n        border-color: transparent;\n        z-index: 1;\n    }\n\n    .description-scroll-btn-left {\n        left: 0;\n        margin-left: -0.2rem;\n        transform: rotate(90deg) translateX(-0.15rem);\n    }\n\n    .description-scroll-btn-left:hover {\n        transform: rotate(90deg) translateX(-0.15rem) scale(0.98);\n    }\n\n    .description-scroll-btn-right {\n        right: 0;\n        margin-right: -0.2rem;\n        transform: rotate(-90deg) translateX(0.15rem);\n    }\n\n    .description-scroll-btn-right:hover {\n        transform: rotate(-90deg) translateX(0.15rem) scale(0.98);\n    }\n\n    .description-dot-container {\n        position: absolute;\n        bottom: 20px;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n    }\n\n    .description-dot {\n        background-color: #fff;\n        \/* 圆点颜色 *\/\n        border: 1px solid #000;\n        \/* 边框 *\/\n        padding: 5px;\n        \/* 圆点大小 *\/\n        border-radius: 50%;\n        \/* 设置为圆形 *\/\n        margin: 0 5px;\n        \/* 圆点之间的间距 *\/\n        cursor: pointer;\n        \/* 鼠标悬停时显示手形图标 *\/\n        outline: none;\n        \/* 点击时不显示轮廓 *\/\n    }\n\n    .description-dot.active {\n        background-color: #D72735;\n    }\n\n    .description-container {\n        padding: 0px;\n        margin: 0px;\n        display: flex;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        scroll-behavior: smooth;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-wrapper {\n        position: relative;\n        flex: 0 0 100%;\n        width: 100%;\n        display: flex;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n    }\n\n\t.description-wrapper picture,\n    .description-wrapper img {\n        width: 100%;\n\t\tmin-width: 100%; \/* 强制最小宽度为100% *\/\n\t\theight: auto; \/* 保持宽高比 *\/\n\t\tdisplay: block; \/* 消除图片底部的默认间隙 *\/\n    }\n\n    .description-wrapper h3 {\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n    .description-wrapper p {\n        margin: 0px;\n        padding: 0px;\n        font-size: 14px;\n        margin-bottom: 8px;\n    }\n\n    .description-wrapper-item {\n        flex: 1;\n    }\n\n    .description-wrapper-text {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding-left: 5%;\n        padding-right: 5%;\n    }\n\n    .description-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 28px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n\t.description-bold-link {\n\t\tfont-weight: bold; \/* 或者使用 font-weight: 700; *\/\n\t\ttext-decoration: none; \/* 可选：去除下划线 *\/\n\t\tcolor: #000000;      \/* 可选：设置链接颜色 *\/\n\t}\n\n\t\/* 鼠标悬停时保持加粗并改变颜色 *\/\n\t.description-bold-link:hover {\n\t\tcolor: #004499;\n\t\ttext-decoration: underline;\n\t}\n\n    @media screen and (max-width: 767px) {\n        .description-wrapper {\n            display: block;\n        }\n\n        .description-wrapper img {\n            width: 100%;\n        }\n\n        .description-wrapper-text {\n            margin-top: 30px;\n        }\n\n        .description-wrapper-header {\n            justify-content: start;\n            padding-left: 30px;\n            padding-right: 30px;\n        }\n\n        .description-column {\n            width: 50%;\n        }\n\n        .description-specification-item {\n            position: relative;\n            display: block;\n        }\n\n        .description-column-title {\n            position: relative;\n            width: 100%;\n            text-align: center;\n            top: 0px;\n            left: 0px;\n            margin-bottom: 0px;\n        }\n\n        .description-faqs-title {\n            font-size: 16px;\n        }\n    }\n\u003c\/style\u003e\n\n\u003cdiv class=\"description-content\"\u003e\n    \u003c!-- item1 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-1\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item2 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-2\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item3 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-scroll\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\t\n\t\u003c!-- item8 产品规格对比 --\u003e \n    \u003cdiv class=\"description-specification-item\" id=\"description-specification\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item9 问答 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-faqs\"\u003e\n    \u003c\/div\u003e\n    \u003cdiv\u003e\n        \u003cbr\u003e\n        \u003cdiv class=\"description-contact-us-title\"\u003eCONTACT US\u003c\/div\u003e\n        \u003cdiv class=\"description-contact-us-text\"\u003eHave a question or comment? Please email us at \u003ca style=\"color: #000;\" href=\"mailto:support@miofive.com?subject=Assistance%20Required%20-%20Order%20Number:\u0026amp;body=Hi%20Miofive%20%20%0A%0A%20My%20Order%20Number%20is:%20%20%20%0A%0A%0APlease%20type%20your%20question%20below,%20and%20tell%20us%20how%20can%20we%20help%20you?\"\u003esupport@miofive.com\u003c\/a\u003e.\n            Our dedicated customer support team is here to help and will respond within 24 hours on business days.\u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n    function initData() {\n        const data = {\n            item1: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_1.jpg?v=1750928838',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_1_mb.jpg?v=1750928820'\n            },\n            item2: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_2.jpg?v=1750928843',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_2_mb.jpg?v=1750928829',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_3.jpg?v=1750928841',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_3_mb.jpg?v=1750928825',\n                }\n            ],\n            item3: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_4.jpg?v=1750928843',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_4_mb.jpg?v=1750928829',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_5.jpg?v=1750928841',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_5_mb.jpg?v=1750928827',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_6.jpg?v=1750928843',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_6_mb.jpg?v=1750928832',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_7.jpg?v=1750928842',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_7_mb.jpg?v=1750928829',\n                }\n            ],\n            item4: [\n                {\n                    title: '24H Parking',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_8.jpg?v=1750928838',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_8_mb.jpg?v=1750928823',\n                },\n                {\n                    title: 'Collision Detection',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_9.jpg?v=1750928841',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_9_mb.jpg?v=1750928827',\n                },\n                {\n                    title: 'Loop Recording',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_10.jpg?v=1750928842',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_10_mb.jpg?v=1750928825',\n                }\n            ],\n            item5: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_11.jpg?v=1750928840',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_11_mb.jpg?v=1750928823',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_12.jpg?v=1750928841',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_12_mb.jpg?v=1750928826',\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_13.jpg?v=1750928840',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_13_mb.jpg?v=1750928825',\n                }\n            ],\n            item6: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_14.jpg?v=1750928838',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_14_mb.jpg?v=1750928821',\n            },\n            item7: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_15.jpg?v=1750928838',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/CA_S1_Ultra_Description_15_mb.jpg?v=1750928823',\n            },\n\t\t\titem8: [\n                {\n                    title: 'S1 Ultra',\t\t\t\t\t\t   \n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Ultra_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-ultra-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '64GB Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1 Pro',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_Pro_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-pro-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '2K \"Quad HD\" 2560 × 1440',\n                        '32G Card Included',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                },\n                {\n                    title: 'S1',\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1.jpg?v=1749194648',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/AU_Description_Product_S1_mb.jpg?v=1749194648',\n                    link: '\/products\/miofive-s1-au',\n                    specifications: [\n                        '3\" IPS Screen',\n                        '4K \"Ultra HD\" 3840 × 2160',\n                        '-',\n                        '-',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '✔',\n                        '-20-70℃'\n                    ]\n                }\n            ],\n            item9: [\n                {\n                    title: '① Is it True 4K\" resolution?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Unlike many brands on the market that use \"Interpolated 4K\" (upscaling a lower resolution via software), MIOFIVE is committed to transparency and integrity. The S1 Ultra uses Native True 4K technology. ',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'True 4K', link: 'https:\/\/youtu.be\/bxV5oAT_EHU?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=782' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '② Can it clearly capture license plates at night?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra  is equipped with advanced HDR Night Vision. This allows the camera to balance exposure in low-light or high-contrast conditions, capturing sharper details and clearer license plates.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '③ How can I view and manage my footage?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'You can access and manage your recordings in three easy ways:',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• MIOFIVE App: Connect via built-in Wi-Fi to preview, playback, download, and share videos directly from your smartphone. The app is completely free with no subscription fees.',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'MIOFIVE App', link: 'https:\/\/www.miofive.com\/pages\/support' },\n\t\t\t\t\t\t\t\t{ text: 'smartphone', link: 'https:\/\/youtu.be\/AmHhuarrZtc?list=PL__ijz2z4rI_pbc7pxJXfluxtgqpNfvzA\u0026t=6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On the Dash Cam: Review footage directly on the integrated display.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: '• On Your Computer: Connect the S1 Ultra to your computer using a data cable, or insert the microSD card to view and back up recordings. Compatible with both iPhone and Android devices.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '④ Is it safe to use in hot weather?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra is equipped with a super capacitor instead of a traditional lithium battery. Supercapacitors offer superior heat resistance and reliability, ensuring the device operates safely even in extreme temperatures ranging from -4℉ to 158℉ (-20℃ to 70℃).',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑤ Does it record while my car is parked?',\n                    content: [\n                        {\n\t\t\t\t\t\t\tdescription: 'Yes. Parking monitor helps detect impacts and suspicious activity while your vehicle is parked.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'To enable parking mode, the dash cam requires a hardwire kit (sold separately).',\n\t\t\t\t\t\t\tkeywords: [\n\t\t\t\t\t\t\t\t{ text: 'hardwire kit', link: 'https:\/\/www.miofive.com\/collections\/all-accessories\/products\/type-c-hardwire-kit-ca' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑥ Is it easy to install?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'No. The S1 Ultra is designed for a quick plug-and-play setup, and most users can complete the installation within minutes. The package includes all necessary accessories and cable management tools to help you achieve a clean, professional-looking install.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                },\n                {\n                    title: '⑦Does it come with an SD card?',\n                    content: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: 'Yes. The S1 Ultra includes a 64GB microSD card in the box so you can start recording immediately. It also supports storage expansion up to 512GB for those who require longer recording history.',\n\t\t\t\t\t\t\tkeywords: []\n\t\t\t\t\t\t}\n                    ]\n                }\n            ]\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n    \/\/规格数据\n    const specificationData = descriptionData.item8;\n    const specificationTitle = \"MIOFIVE Dash Cam\";\n    const specificationList = [\n        'Screen Size',\n        'Front',\n        'Rear',\n        'Memory Card Included',\n        'Built-in GPS, Wi-Fi, Bluetooth',\n        'OTA online update',\n        'Loop Recording',\n        'G-Sensor',\n        'ADAS',\n        'Super Capacitor',\n        'Operating Temperature'\n    ];\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\n\t\/\/addSpecification();\n    addFAQs();\n\t\n    \/\/item1\n    function addItem1() {\n        addSinglePictureItem(\"description-item-1\", descriptionData.item1);\n    }\n\n    \/\/item2\n    function addItem2() {\n        addScrollItem(\"2\", descriptionData.item2);\n    }\n\n    \/\/item3\n    function addItem3() {\n        addScrollItem(\"3\", descriptionData.item3);\n    }\n\n    \/\/item4\n    function addItem4() {\n        addScrollHeaderItem(\"4\", descriptionData.item4);\n    }\n\n    \/\/item5\n    function addItem5() {\n        addScrollItem(\"5\", descriptionData.item5);\n    }\n\n    \/\/item6\n    function addItem6() {\n        addSinglePictureItem(\"description-item-6\", descriptionData.item6);\n    }\n\n    \/\/item7\n    function addItem7() {\n        addSinglePictureItem(\"description-item-7\", descriptionData.item7);\n    }\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n        headerOption += '\u003c\/div\u003e';\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\t\t\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n\t\t\tindex = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\t\t\t\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + \"-\" + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n\t\t\tindex = Math.round(index);\n\t\t\t\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 3;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 2;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\t\t\t\t\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\t\t\t\t\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + '\u003c\/div\u003e'\n            + addDotButton(2, \"specification-\")\n            + '\u003c\/div\u003e';\n\n        return specificationOption;\n    }\n\n    function addSpecificationMobile() {\n        let specificationOption = '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n\n        specificationOption += '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n        specificationData.forEach(item =\u003e {\n            specificationOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n                + addSpecificationListMobile(item.specifications)\n                + '\u003ca class=\"description-specifications-a\" href=\"' + item.link + '\"\u003e \u003cdiv class=\"description-specifications-button\"\u003e' + \"Learn More\" + '\u003c\/div\u003e \u003c\/a\u003e'\n                + '\u003c\/div\u003e'\n        });\n        specificationOption += addDotButton(3, \"specification-\");\n        specificationOption += '\u003c\/div\u003e'\n\n        return specificationOption;\n    }\n\n    function addSpecificationList(list) {\n        let option = '';\n        list.forEach(item =\u003e {\n            if (item == \"support\") {\n                option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n            } else {\n                option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n            }\n        });\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\t\t   \n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + addPicture(item)\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item9.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n\n                faqsOption += '\u003cdiv class=\"description-faqs-collapse-text\"\u003e' \n\t\t\t\t\t+ renderDescription(content.description, content.keywords) + '\u003c\/div\u003e';\n\t\t\t\t\t\n            });\n            faqsOption += '\u003c\/div\u003e';\n\n            faqsOption += '\u003c\/div\u003e';\n        });\n        faqs.innerHTML = faqsOption;\n\n        \/\/问答点击事件\n        document.querySelectorAll('.description-faqs-header').forEach(item =\u003e {\n            item.addEventListener('click', (event) =\u003e {\n                const targetId = item.getAttribute('data-target');\n                const controlsId = item.getAttribute('aria-controls');\n                if (targetId === controlsId) {\n                    item.classList.toggle('description-faqs-collapsed');\n                    const collapse = document.getElementById(targetId);\n                    if (collapse.style.display === 'block') {\n                        item.classList.remove('active');\n                        collapse.style.display = 'none';\n                    } else {\n                        item.classList.add('active');\n                        collapse.style.display = 'block';\n                    }\n                }\n            });\n        });\n    }\n\t\n\tfunction renderDescription(desc, keywords) {\n        let faqsDesc = desc;\n        keywords.forEach(keyword =\u003e {\n            const linkHtml = '\u003ca href=\"' + keyword.link + '\" class=\"description-bold-link\" target=\"_blank\"\u003e' + keyword.text + '\u003c\/a\u003e';\n            faqsDesc = faqsDesc.replace(new RegExp(keyword.text, 'g'), linkHtml);\n        });\n        return faqsDesc;\n    }\n\t\n    \/\/图片\n    function addPicture(item) {\n        let option = '';\n        if (item.link) {\n            option += '\u003ca href=\"' + item.link + '\"\u003e';\n        }\n\t\t\n\t\tif (item.img_mb) {\n            option += '\u003cpicture\u003e\u003csource media=\"(max-width: 767px)\" srcset=\"' + item.img_mb + '\"\u003e\u003cimg src=\"' + item.img + '\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" sizes=\"auto\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\n    \/\/上一个按钮\n    function previousButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-left\" name=\"previous\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/下一个按钮\n    function nextButton(id) {\n        let buttonOption = '\u003cbutton type=\"button\" class=\"description-scroll-btn description-scroll-btn-right\" name=\"next\" id=\"' + id + '\"\u003e'\n            + '\u003csvg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewBox=\"0 0 10 6\"\u003e \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z\"\u003e\u003c\/svg\u003e'\n            + '\u003c\/button\u003e'\n        return buttonOption;\n    }\n\n    \/\/圆点按钮\n    function addDotButton(count, id) {\n        let option = '\u003cdiv class=\"description-dot-container\"\u003e';\n        for (let i = 0; i \u003c count; i++) {\n            option += '\u003cbutton class=\"description-dot\" id=\"' + id + (i + 1) + '\"\u003e' + \" \" + '\u003c\/button\u003e';\n        }\n        option += '\u003c\/div\u003e';\n        return option;\n    }\n\n    function showSelectDot(list, selectIndex) {\n        removeSelectDot(list);\n        if (selectIndex \u003c list.length) {\n            list[selectIndex].classList.add('active');\n        }\n    }\n\n    function removeSelectDot(list) {\n        list.forEach(btn =\u003e btn.classList.remove('active'));\n    }\n\n    function faqIcon() {\n        let icon = '\u003csvg viewBox=\"0 0 24 24\"\u003e \u003cpath d=\"M23.7473,6.245925C23.5906,6.0872122,23.3685,6.000865772,23.1247,6.000865772C22.8461,6.000865772,22.5753,6.113077,22.3794,6.308586L11.9994,16.8194L1.61957,6.309961C1.42452,6.113077,1.15371,6,0.875967,6C0.630434,6,0.408393,6.0872416,0.249915,6.246851C-0.106638,6.609795,-0.0783419,7.23016,0.313478,7.62776L11.2341,18.6844C11.43,18.8825,11.6939,18.9973,11.9603,19L12.0596,19C12.3199,18.9912,12.5759,18.877200000000002,12.7675,18.6844L23.6872,7.62686C24.079,7.22834,24.1069,6.6075859999999995,23.7473,6.245925Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e\u003c\/svg\u003e';\n        return icon;\n    }\n\t\n\tfunction getHeaderBtnOffsetLetf(list, selectIndex) {\n        if (selectIndex \u003c list.length) {\n            return list[selectIndex].offsetLeft;\n        }\n\n        return 0;\n    }\n\u003c\/script\u003e","brand":"S1 Ultra-CA(4K+4K)","offers":[{"title":"Default Title","offer_id":49851729576240,"sku":"S1 Ultra-TAU","price":116.35,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/S1_Ultra.webp?v=1780455341"},{"product_id":"128-micro-sd-card-ca","title":"Miofive 128GB Memory Card(CA)","description":"","brand":"128GB microSD Card(CA)","offers":[{"title":"Default Title","offer_id":49851743699248,"sku":"128GB-AU","price":36.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_be6e665b-1908-479b-8e1a-6bdb4ac0f93d.jpg?v=1748339943"},{"product_id":"type-c-hardwire-kit-ca","title":"Miofive 11.5ft Type-C Hardwire Kit(HWK2)(CA)","description":"","brand":"USB-C HWK2-CA","offers":[{"title":"Default Title","offer_id":49853245391152,"sku":"USB-C HWK2-AU","price":29.79,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_b9705c4c-eef8-46d5-9cba-39b51e9d2b61.jpg?v=1754446824"},{"product_id":"34mm-cpl-filter-ca","title":"Miofive 34mm CPL Filter(CA)","description":"","brand":"CPL filter-CA","offers":[{"title":"Default Title","offer_id":49853249421616,"sku":"CPL filter-AU","price":22.59,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_fc0d30b8-bec1-4452-9385-800f9318e5d6_1.jpg?v=1749809308"},{"product_id":"mount-accessories-ca","title":"Miofive Car Windshield Double-Sided Adhesive(CA)","description":"","brand":"S1 Mount-CA","offers":[{"title":"Default Title","offer_id":49853256466736,"sku":"S1 Mount-AU","price":16.8,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_85365501-beb9-4892-b13f-017d8f9a6744_1.jpg?v=1748404409"},{"product_id":"rear-camera-cable-ca","title":"Miofive 6M(19.7FT) Rear Camera Cable(CA)","description":"","brand":"6M RC Cable-CA","offers":[{"title":"Default Title","offer_id":49853259350320,"sku":"6M RC Cable-AU","price":19.71,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_19888fcb-59a2-4119-a701-bbee6f9a5b9c.jpg?v=1748399391"},{"product_id":"mount-bracket-ca","title":"Miofive Mounting Bracket(CA)","description":"","brand":"Mount Bracket-CA","offers":[{"title":"Default Title","offer_id":49853261644080,"sku":"Mount Bracket-AU","price":19.71,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_6df6b152-4b3f-45d7-968c-0192a45eb609.jpg?v=1748399612"},{"product_id":"miofive-usb-type-c-hardwire-kit","title":"Miofive Type-C Hardwire Kit 11.5 ft \/ 350 cm (EU)","description":"","brand":"Type-C Hardwire Kit","offers":[{"title":"Default Title","offer_id":49888269762864,"sku":"USB-C HWK2-DE","price":28.64,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_b9705c4c-eef8-46d5-9cba-39b51e9d2b61.jpg?v=1754446824"},{"product_id":"miofive-cpl-34mm","title":"Miofive 34mm CPL-Filter(EU)","description":"","brand":"CPL filter","offers":[{"title":"Default Title","offer_id":49888282313008,"sku":"CPL Filter-DE","price":22.54,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_fc0d30b8-bec1-4452-9385-800f9318e5d6_1.jpg?v=1749809308"},{"product_id":"miofive-auto-windschutzscheibe","title":"Miofive Car Windshield Double-Sided Adhesive (EU)","description":"","brand":"S1 Mount-EU","offers":[{"title":"Default Title","offer_id":49888304431408,"sku":"S1 Mount-DE","price":18.64,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_e412a9ad-c94d-4852-b82f-4ae4df1c7528.jpg?v=1749809819"},{"product_id":"miofive-128gb-speicherkarte","title":"Miofive 128GB microSD Card (EU)","description":"\u003cp\u003eMiofive 128GB Speicherkarte\u003c\/p\u003e","brand":"128GB microSDXC Card","offers":[{"title":"Default Title","offer_id":49888311902512,"sku":"128GB-DE","price":33.48,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/SD_1.jpg?v=1750063375"},{"product_id":"miofive-obd-ii-power-cable","title":"Miofive 3.5M OBD II Power Cable(11.5ft)","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-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 25px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    @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-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \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\/OBD_Description_1.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_1_mb.webp?v=1773108330'\n            },\n            item2: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_2.webp?v=1773108314',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_2_mb.webp?v=1773108330'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_3.webp?v=1773108314',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_3_mb.webp?v=1773108329'\n                }\n            ],\n            item3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_4.webp?v=1776924148',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_4_mb.webp?v=1776924176'\n            },\n            item4: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_5.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_5_mb.webp?v=1773108330'\n            },\n            item5: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_6.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_6_mb.webp?v=1773108330'\n            }, \n            item6: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_7.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_7_mb.webp?v=1773108330'\n            },\n            item7: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_8.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_8_mb.webp?v=1773108330'\n            }\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\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\n    \/\/产品功能2\n    function addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\n    \/\/可选购配件\n    function addItem4() {\n        addSinglePictureItem(\"description-item-4\", descriptionData.item4);\n    }\n\n    \/\/默认包装配件\n    function addItem5() {\n        addSinglePictureItem(\"description-item-5\", descriptionData.item5);\n    }\n\t\n\t\/\/默认包装配件\n    function addItem6() {\n        addSinglePictureItem(\"description-item-6\", descriptionData.item6);\n    }\n\t\n\t\/\/默认包装配件\n    function addItem7() {\n        addSinglePictureItem(\"description-item-7\", descriptionData.item7);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n           index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(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, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item7.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n                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.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 + '\" class=\"lazyload\" loading=\"lazy\"\u003e\u003cimg src=\"' + item.img + '\" class=\"lazyload\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" class=\"lazyload\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\t\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":"OBD II Power Cable","offers":[{"title":"Default Title","offer_id":50782580474160,"sku":"OBD II-TUS","price":39.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_762569bd-a6f4-466b-8d2e-f8bd63e3d20b.webp?v=1772073506"},{"product_id":"miofive-obd-ii-power-cable-uk","title":"Miofive 3.5M OBD II Power Cable(11.5ft)(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-header-scroll-container {\n        width: 100%;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n        background-color: #3A3E48;\n    }\n\n    .description-header-scroll-container::-webkit-scrollbar {\n        display: none;\n    }\n\n    .description-header-flex-container {\n        display: flex;\n        flex-wrap: nowrap;\n        padding: 15px 10px;\n        box-sizing: border-box;\n    }\n\n    .description-header-item {\n        flex-shrink: 0;\n        margin-right: 80px;\n        color: white;\n        text-align: center;\n        font-size: 25px;\n        font-weight: 700;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-item:last-child {\n        margin-right: 0px;\n    }\n\n    .description-header-item.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-header-spacer {\n        flex-shrink: 0;\n    }\n\n    .description-header-spacer:first-child {\n        margin-left: auto;\n    }\n\n    .description-header-spacer:last-child {\n        margin-right: auto;\n    }\n\n    .description-wrapper-header {\n        display: flex;\n        padding: 10px 0 12px 100px;\n        margin: 0px;\n        align-items: center;\n        justify-content: center;\n        background-color: #3A3E48;\n        overflow-x: auto;\n        overflow-y: hidden;\n        white-space: nowrap;\n        scroll-snap-align: start;\n        scroll-snap-stop: always;\n        scrollbar-width: none;\n        -ms-overflow-style: none;\n    }\n\n    .description-wrapper-header::-webkit-scrollbar {\n        display: none;\n    }\n\n\t.description-header-button {\n        color: white;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        margin-right: 80px;\n        padding: 5px 0 5px 0;\n        background-color: transparent;\n    }\n\n    .description-header-button.active {\n        border-bottom: 3px solid #fff;\n    }\n\n    .description-specification-item {\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        width: 100%;\n    }\n\n    .description-column {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30%;\n    }\n\n    .description-column-specifications {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 40%;\n    }\n\n    .description-column-mb {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-column img {\n        width: 100%;\n    }\n\n    .description-column-title {\n        position: absolute;\n        top: 5%;\n        left: 30%;\n        margin: 0px;\n        padding: 0px;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        margin-bottom: 15px;\n    }\n\n\n    .description-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-specifications {\n        position: relative;\n        width: 100%;\n    }\n\n    .description-specifications-title {\n        width: 100%;\n        font-size: 20px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n    }\n\n    .description-specifications-border {\n        border: 1px solid #000;\n        display: flex;\n        display: -ms-flex;\n        flex-wrap: wrap;\n        margin: 0px 3px 0px 3px;\n        padding-top: 15px;\n        padding-bottom: 15px;\n    }\n\n    .description-specifications-column {\n        position: relative;\n        width: 33.333%;\n    }\n\n    .description-specifications-column p {\n        width: 100%;\n        text-align: center;\n        font-size: 12px;\n        color: #232323;\n        margin-bottom: 35px;\n    }\n\n    .description-specifications-item {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 88%;\n        margin-left: 6%;\n        margin-right: 6%;\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-specifications-item-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        margin-top: 3px;\n        margin-bottom: 3px;\n    }\n\n    .description-specifications-a {\n        text-decoration: none;\n    }\n\n    .description-specifications-button {\n        width: 80%;\n        margin-top: 15px;\n        margin-left: 10%;\n        margin-bottom: 45px;\n        padding-top: 10px;\n        padding-bottom: 10px;\n        background-color: #232323;\n        color: #fff;\n        border: none;\n        border-radius: 20px;\n        font-size: 16px;\n        text-align: center;\n    }\n\n    .description-faqs-item {\n        background-color: #fafafa;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    .description-faqs-header {\n        position: relative;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        width: 100%;\n    }\n\n    .description-faqs-header.active {\n        border-bottom: 1px solid #232323;\n    }\n\n    .description-faqs-title {\n        font-size: 18px;\n        color: #232323;\n        background-color: #fafafa;\n        text-align: left;\n        padding: 10px 0 10px 0;\n    }\n\n    .description-faqs-arrow {\n        --rotation: -180deg;\n        width: 14px;\n        height: 14px;\n        transform: rotate(var(--rotation));\n        transition: all .3s ease;\n    }\n\n    .description-faqs-header:not(.description-faqs-collapsed) .description-faqs-arrow {\n        --rotation: 0deg;\n    }\n\n    .description-faqs-collapse {\n        display: none;\n        padding-bottom: 10px;\n        transition: all .5s ease-out;\n    }\n\n    .description-faqs-collapse-text {\n        font-size: 14px;\n        margin-top: 10px;\n    }\n\n    .description-contact-us-title {\n        width: 100%;\n        font-size: 22px;\n        font-weight: 700;\n        color: #232323;\n        text-align: center;\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    .description-contact-us-text {\n        text-align: center;\n        font-size: 14px;\n        color: #232323;\n        padding: 0px 30px 0px 30px;\n        margin: 15px 0px 15px 0px;\n    }\n\n    @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-item\" id=\"description-item-3\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item4 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-4\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item5 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-5\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item6 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-6\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- item7 --\u003e\n    \u003cdiv class=\"description-item\" id=\"description-item-7\"\u003e\n    \u003c\/div\u003e\n\n    \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\/OBD_Description_1.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_1_mb.webp?v=1773108330'\n            },\n            item2: [\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_2.webp?v=1773108314',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_2_mb.webp?v=1773108330'\n                },\n                {\n                    img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_3.webp?v=1773108314',\n                    img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_3_mb.webp?v=1773108329'\n                }\n            ],\n            item3: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_4.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_4_mb.webp?v=1773108330'\n            },\n            item4: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_5.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_5_mb.webp?v=1773108330'\n            },\n            item5: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_6.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_6_mb.webp?v=1773108330'\n            }, \n            item6: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_7.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_7_mb.webp?v=1773108330'\n            },\n            item7: {\n                img: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_8.webp?v=1773108314',\n                img_mb: 'https:\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/OBD_Description_8_mb.webp?v=1773108330'\n            }\n        };\n\n        return data;\n    }\n\n\n    const descriptionData = initData();\n\n\n    addItem1();\n    addItem2();\n    addItem3();\n    addItem4();\n    addItem5();\n    addItem6();\n    addItem7();\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\n    \/\/产品功能2\n    function addItem3() {\n        addSinglePictureItem(\"description-item-3\", descriptionData.item3);\n    }\n\n    \/\/可选购配件\n    function addItem4() {\n        addSinglePictureItem(\"description-item-4\", descriptionData.item4);\n    }\n\n    \/\/默认包装配件\n    function addItem5() {\n        addSinglePictureItem(\"description-item-5\", descriptionData.item5);\n    }\n\t\n\t\/\/默认包装配件\n    function addItem6() {\n        addSinglePictureItem(\"description-item-6\", descriptionData.item6);\n    }\n\t\n\t\/\/默认包装配件\n    function addItem7() {\n        addSinglePictureItem(\"description-item-7\", descriptionData.item7);\n    }\n\n\n    \/\/单张预览图\n    function addSinglePictureItem(containerID, item) {\n        const descriptionItem = document.getElementById(containerID);\n        descriptionItem.innerHTML = addPicture(item);\n    }\n\n    \/\/标题滑动图\n    function addScrollHeaderItem(descriptionId, list) {\n        const headers = [];\n        let headerCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let headerOption = '\u003cdiv class=\"description-wrapper-header\" id=\"description-scroll-header-' + descriptionId + '\"\u003e';\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n\n        list.forEach((item, index) =\u003e {\n            let id = index + 1;\n            headerOption += '\u003cspan class=\"description-header-button\" id=\"description-header-button-' + descriptionId + \"-\" + id + '\"\u003e' + item.title + '\u003c\/span\u003e';\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e' + addPicture(item) + '\u003c\/div\u003e';\n        });\n\n\n        headerOption += '\u003c\/div\u003e';\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += headerOption + scrollOption;\n\n        descriptionItem.innerHTML = option;\n\n\t\tconst scrollHeader = document.getElementById('description-scroll-header-' + descriptionId);\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n            index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(headers, selectIndex);\n\t\t\t\t\n\t\t\t\tlet left = getHeaderBtnOffsetLetf(headers, selectIndex);\n                scrollHeader.scrollLeft = left - 20;\n\t\t\t\t\n            }\n        });\n\n        for (let i = 0; i \u003c headerCount; i++) {\n            let btn = document.getElementById(\"description-header-button-\" + descriptionId + '-' + (i + 1));\n            if (btn) {\n                btn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                headers.push(btn);\n            }\n        }\n        showSelectDot(headers, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = headerCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e headerCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/滑动图\n    function addScrollItem(descriptionId, list) {\n        const dots = [];\n        let dotCount = list.length;\n        let selectIndex = 0;\n\n        const descriptionItem = document.getElementById('description-item-' + descriptionId);\n        let option = previousButton('scroll-' + descriptionId + '-previous')\n            + nextButton('scroll-' + descriptionId + '-next');\n\n        let scrollOption = '\u003cdiv class=\"description-container\" id=\"description-scroll-' + descriptionId + '\"\u003e';\n        list.forEach((item, index) =\u003e {\n            scrollOption += '\u003cdiv class=\"description-wrapper\"\u003e'\n                + addPicture(item)\n                + '\u003c\/div\u003e';\n        });\n\n        scrollOption += '\u003c\/div\u003e';\n\n        option += scrollOption + addDotButton(dotCount, \"scroll-\" + descriptionId + \"-\");\n        descriptionItem.innerHTML = option;\n\n\n        const scroll = document.getElementById('description-scroll-' + descriptionId);\n        scroll.addEventListener('scroll', () =\u003e {\n            let index = scroll.scrollLeft \/ scroll.offsetWidth;\n           index = Math.round(index);\n\n            if (selectIndex != index) {\n                selectIndex = index;\n                showSelectDot(dots, selectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"scroll-\" + descriptionId + \"-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scroll.scrollLeft = i * scroll.offsetWidth;\n                });\n\n                dots.push(dotBtn);\n            }\n        }\n        showSelectDot(dots, selectIndex);\n\n        const previous = document.getElementById(\"scroll-\" + descriptionId + \"-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = selectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"scroll-\" + descriptionId + \"-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = selectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n                scroll.scrollLeft = index * scroll.offsetWidth;\n            });\n        }\n    }\n\n    \/\/规格\n    function addSpecification() {\n        const specification = document.getElementById('description-specification');\n\n        const specificationDots = [];\n        let dotCount = 0;\n        let specificationSelectIndex = 0;\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            specification.innerHTML = addSpecificationMobile();\n            dotCount = 4;\n        } else {\n            specification.innerHTML = addSpecificationDesktop();\n            dotCount = 3;\n        }\n\n        const scrollSpecification = document.getElementById(\"description-scroll-specification\");\n        scrollSpecification.addEventListener('scroll', () =\u003e {\n            let index = scrollSpecification.scrollLeft \/ scrollSpecification.offsetWidth;\n            index = Math.round(index);\n\n            if (specificationSelectIndex != index) {\n                specificationSelectIndex = index;\n                showSelectDot(specificationDots, specificationSelectIndex);\n                updateSpecificationsContent(specificationSelectIndex);\n            }\n        });\n\n        for (let i = 0; i \u003c dotCount; i++) {\n            let dotBtn = document.getElementById(\"specification-\" + (i + 1));\n            if (dotBtn) {\n                dotBtn.addEventListener('click', () =\u003e {\n                    scrollSpecification.scrollLeft = i * scrollSpecification.offsetWidth;\n                });\n\n                specificationDots.push(dotBtn);\n            }\n        }\n\n        showSelectDot(specificationDots, specificationSelectIndex);\n        updateSpecificationsContent(specificationSelectIndex);\n\n        const previous = document.getElementById(\"specification-previous\");\n        if (previous) {\n            previous.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex - 1;\n                if (index \u003c 0) {\n                    index = dotCount - 1;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n\n        const next = document.getElementById(\"specification-next\");\n        if (next) {\n            next.addEventListener('click', () =\u003e {\n                let index = specificationSelectIndex + 1;\n                if (index \u003e dotCount - 1) {\n                    index = 0;\n                }\n\n                scrollSpecification.scrollLeft = index * scrollSpecification.offsetWidth;\n            });\n        }\n    }\n\n    function addSpecificationDesktop() {\n        let specificationOption = '\u003cdiv class=\"description-column\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + specificationData[0].title + '\u003c\/h3\u003e'\n            + addPicture(specificationData[0])\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column-specifications\"\u003e'\n            + '\u003cdiv class=\"description-specifications\"\u003e'\n            + '\u003ch3 class=\"description-specifications-title\"\u003e' + specificationTitle + '\u003c\/h3\u003e'\n            + '\u003cdiv class=\"description-specifications-border\"\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationData[0].specifications, true)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\"\u003e'\n            + addSpecificationList(specificationList, false)\n            + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-column\" id=\"description-specification-content\"\u003e\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n\n        specificationOption += '\u003cdiv class=\"description-column\"\u003e'\n            + previousButton(\"specification-previous\")\n            + nextButton(\"specification-next\")\n            + '\u003cdiv class=\"description-container\" id=\"description-scroll-specification\"\u003e'\n            + addSpecificationsProduct(specificationData[1])\n            + addSpecificationsProduct(specificationData[2])\n            + addSpecificationsProduct(specificationData[3])\n            + '\u003c\/div\u003e'\n            + addDotButton(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, addIcon) {\n        let option = '';\n        list.forEach(item =\u003e {\n            option += '\u003cp\u003e' + item + '\u003c\/p\u003e';\n        });\n        if (addIcon) {\n            option += '\u003cp\u003e' + getSupportIcon() + '\u003c\/p\u003e';\n        }\n\n        return option;\n    }\n\n    function addSpecificationListMobile(list) {\n        let option = '';\n        list.forEach((item, index) =\u003e {\n            option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[index] + '\u003c\/div\u003e'\n                + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + item + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n        });\n\n        option += '\u003cdiv class=\"description-specifications-item\"\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + specificationList[specificationList.length - 1] + '\u003c\/div\u003e'\n            + '\u003cdiv class=\"description-specifications-item-text\"\u003e' + getSupportIcon() + '\u003c\/div\u003e'\n            + '\u003c\/div\u003e';\n        return option;\n    }\n\n    function getSupportIcon() {\n        let icon = '\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\u003e \u003cpath d=\"M16,0C7.13333,0,0,7.13333,0,16C0,24.8667,7.13333,32,16,32C24.8667,32,32,24.8667,32,16C32,7.13333,24.8667,0,16,0ZM26,12L15.4,22.6C14.6667,23.3333,13.3333,23.3333,12.6,22.6L6,16Q5,15,6,14Q7,13,8,14L14,20L24,10Q25,9,26,10Q27,11,26,12Z\" fill=\"#000000\" fill-opacity=\"1\" \/\u003e \u003c\/svg\u003e';\n        return icon;\n    }\n\n    function addSpecificationsProduct(item) {\n        let option = '\u003cdiv class=\"description-wrapper\"\u003e'\n            + '\u003ch3 class=\"description-column-title\"\u003e' + item.title + '\u003c\/h3\u003e'\n            + '\u003ca href=\"' + item.link + '\"\u003e' + addPicture(item) + ' \u003c\/a\u003e'\n            + '\u003c\/div\u003e';\n\n        return option;\n    }\n\n    function updateSpecificationsContent(index) {\n        if (window.matchMedia(\"(max-width: 767px)\").matches) {\n            return;\n        }\n        let option = addSpecificationList(specificationData[index + 1].specifications, true);\n        const specificationContent = document.getElementById('description-specification-content');\n        specificationContent.innerHTML = option;\n    }\n\n    \/\/问答\n    function addFAQs() {\n        const faqs = document.getElementById('description-faqs');\n        let faqsOption = '';\n        descriptionData.item7.forEach((item, index) =\u003e {\n            const id = \"description-faqs-collapse-\" + (index + 1);\n            faqsOption += '\u003cdiv class=\"description-faqs-item\"\u003e';\n\n            faqsOption += '\u003cdiv class=\"description-faqs-header\" data-target=\"' + id + '\" aria-controls=\"' + id + '\"\u003e'\n                + '\u003cdiv class=\"description-faqs-title\"\u003e' + item.title + '\u003c\/div\u003e \u003cdiv class=\"description-faqs-arrow\"\u003e' + faqIcon() + '\u003c\/div\u003e'\n                + '\u003c\/div\u003e';\n\n            faqsOption += '\u003cdiv id=\"' + id + '\" class=\"description-faqs-collapse\"\u003e';\n            item.content.forEach(content =\u003e {\n                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.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 + '\" class=\"lazyload\" loading=\"lazy\"\u003e\u003cimg src=\"' + item.img + '\" class=\"lazyload\" loading=\"lazy\"\u003e\u003c\/picture\u003e';\n        } else {\n            option += '\u003cimg src=\"' + item.img + '\" class=\"lazyload\" loading=\"lazy\"\u003e';\n        }\n\n        if (item.link) {\n            option += '\u003c\/a\u003e';\n        }\n        return option;\n    }\n\t\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":"OBD II Power Cable (UK)","offers":[{"title":"Default Title","offer_id":50782585815344,"sku":"OBD II-TUK","price":39.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0842\/2329\/5792\/files\/1_762569bd-a6f4-466b-8d2e-f8bd63e3d20b.webp?v=1772073506"}],"url":"https:\/\/www.miofive.com\/fr\/collections\/all-products.oembed?page=2","provider":"Miofive","version":"1.0","type":"link"}