{"product_id":"eds2-ble-5-0-smart-door-window-contact-sensor","title":"Capteur porte\/fenetre BLE LinknLink | Contact Sensor","description":"\u003cstyle type=\"text\/css\"\u003e\n    * {\n        margin: 0;\n        padding: 0;\n        box-sizing:border-box;\n    }\n    body, html {\n        height: 100%;\n    }\n    \/* pc端样式 *\/\n    .productDetailsBox {\n        width: 100%;\n    }\n    .productDetailsBox img {\n        margin: 0;\n    }\n    .describeBox {\n        margin-top: 20px;\n    }\n    .productDetailsBox h3 {\n        margin: 23px 0 0;\n        font-size: 18px;\n        font-family: \"DIN Next\", sans-serif;\n        font-weight: bold;\n        color: #000000;\n        line-height: 20px;\n    }\n    .productDetailsBox p {\n        margin: 4px 0 0;\n        font-size: 16px;\n        font-family: \"DIN Next\", sans-serif;\n        font-weight: 300;\n        color: #000000;\n        line-height: 18px;\n    }\n\n    .paragraphBox {\n        margin-top: 30px;\n        padding: 20px 0 17px 22px;\n        background: #F3F3F3;\n        border: 1px solid #F3F3F3;\n        border-radius: 8px;\n    }\n\n    .paragraphDiv {\n        display: flex;\n    }\n\n    .paragraphDiv \u003e p {\n        margin: 0!important;\n        padding: 0!important;\n        font-size: 14px;\n        font-family: \"DIN Next\", sans-serif;\n        font-weight: 300;\n        color: #000000;\n        line-height: 18px;\n    }\n\n    .scenesBox {\n        width: 100%;\n        display: flex;\n        justify-content: space-between;\n        list-style: none !important;\n        margin: 0 !important;\n        padding: 0 !important;\n        flex-direction: row;\n        flex-wrap: wrap;\n    }\n    .scenesShowItem {\n        width: 48.5%;\n        margin-top: 40px;\n    }\n    .scenesShowItem::before {\n        background: initial !important;\n    }\n    .scenesShowItem \u003e img {\n        width: 100%;\n    }\n\n    .setUpSection {\n        padding: 25px 0 40px;\n    }\n    .setUpUL {\n        width: 100%;\n        display: flex;\n        justify-content: space-between;\n        list-style: none !important;\n        margin: 0 !important;\n        padding: 0 !important;\n        flex-direction: row;\n        flex-wrap: wrap;\n    }\n    .setUpItem {\n        width: 30%;\n    }\n    .setUpItem::before {\n        background: initial !important;\n    }\n    #setUpTitle {\n        margin-top: 40px;\n        font-size: 18px;\n        line-height: 20px;\n    }\n\n    .headerVeLinkHide {\n        display: none!important;\n    }\n    .headerImageHide {\n        display: none!important;\n    }\n    #middleImage {\n        margin-top: 40px;\n        margin-bottom: 10px;\n    }\n    #middleImage1 {\n        margin-top: 30px;\n        margin-bottom: 10px;\n    }\n    #bottomImage {\n        margin-top: 40px;\n    }\n    .bottomImageHide {\n        display: none!important;\n    }\n    .setUpItem \u003e img {\n        width: 100%;\n    }\n    #lastWord {\n        margin: 10px 34px;\n        color: #5A5B5B;\n        font-size: 14px;\n    }\n    .productDetailsBox #headerVeLink {\n        display: block;\n        width: 100%;\n        min-height:292px\n    }\n    .productDetailsBox #h3EleId {\n        font-size: 18px;\n    }\n    .productDetailsBox #setUpLIId h3 {\n        font-size: 16px;\n    }\n    .productDetailsBox #setUpLIId p {\n        font-size: 14px;\n        line-height: 16px;\n    }\n    .productDetailsBox table {\n        border-collapse: collapse;\n        margin-top: 0!important;\n    }\n    .productDetailsBox table tr td {\n        padding: 0;\n        border-top: 1px solid #E7E7E7;\n        border-bottom: 1px solid #E7E7E7;\n        height: 45px;\n        font-size: 14px;\n        line-height: 25px;\n        font-family: \"DIN Next\", sans-serif;\n    }\n    .productDetailsBox tr td:first-child {\n        background: #F3F3F3;\n        padding-left: 20px;\n    }\n    .productDetailsBox tr td:last-child {\n        padding-left: 20px;\n        color: black;\n        font-weight: 300;\n        font-family: \"DIN Next\", sans-serif;\n    }\n    .productDetailsBox .bottomVeLink {\n        margin: 40px 0px 10px;\n        display: block;\n        width: 100%;\n        min-height:292px\n    }\n    .productDetailsBox .instructionVideo {\n        margin-bottom: 40px;\n        font-weight: 500;\n    }\n    .productDetailsBox .formBox {\n        padding: 30px 100px;\n        box-sizing: border-box;\n        display: flex;\n        justify-content: center;\n        flex-direction: column;\n        align-items: center;\n        border-radius: 16px;\n        background: #F3F3F3;\n        min-height: 200px;\n    }\n    .productDetailsBox .emailDescribe {\n        text-align: center;\n        font-weight: 500;\n    }\n    .productDetailsBox .emailInput {\n        width: 100%;\n        color: #000000;\n        margin: 20px 0px;\n        height: 40px;\n        text-indent:5px;\n    }\n    .productDetailsBox .emailInput:-ms-input-placeholder {\n        text-align: left;\n        font-family: \"Helvetica\", sans-serif;\n        color: #c0ccda;\n    }\n    .productDetailsBox .emailInput:placeholder {\n        text-align: left;\n        font-family: \"Helvetica\", sans-serif;\n        color: #c0ccda;\n    }\n    .productDetailsBox .submitButton {\n        padding:12px 25px;\n        font-size:12px;\n        font-weight:700;\n        border-radius:18px;\n        background-color:#2c5af6;\n        color:#FFFFFF;\n        border-width:0px;\n        cursor: pointer;\n        margin-top: 20px;\n    }\n\n    \/* FAQ 折叠模块 *\/\n    .productDetailsBox .faqBox {\n        margin-top: 40px;\n        padding: 24px 22px;\n        background: #F3F3F3;\n        border: 1px solid #E7E7E7;\n        border-radius: 8px;\n    }\n    .productDetailsBox .faqTitle {\n        margin: 0 0 18px 0 !important;\n        font-size: 22px;\n        line-height: 24px;\n        font-family: \"DIN Next\", sans-serif;\n        font-weight: 700;\n        color: #000;\n    }\n    .productDetailsBox .faqItem {\n        border-top: 1px solid #D9D9D9;\n    }\n    .productDetailsBox .faqItem:first-of-type {\n        border-top: none;\n    }\n    .productDetailsBox .faqQuestion {\n        width: 100%;\n        padding: 18px 34px 18px 0;\n        background: transparent;\n        border: 0;\n        cursor: pointer;\n        text-align: left;\n        position: relative;\n        font-size: 16px;\n        line-height: 20px;\n        font-family: \"DIN Next\", sans-serif;\n        font-weight: 700;\n        color: #000;\n    }\n    .productDetailsBox .faqQuestion:after {\n        content: \"+\";\n        position: absolute;\n        right: 0;\n        top: 50%;\n        transform: translateY(-50%);\n        font-size: 24px;\n        line-height: 24px;\n        font-weight: 300;\n    }\n    .productDetailsBox .faqItem.active .faqQuestion:after {\n        content: \"−\";\n    }\n    .productDetailsBox .faqAnswer {\n        display: none;\n        padding: 0 0 18px 0;\n    }\n    .productDetailsBox .faqItem.active .faqAnswer {\n        display: block;\n    }\n    .productDetailsBox .faqAnswer p {\n        margin: 0 !important;\n        font-size: 14px;\n        line-height: 20px;\n        font-family: \"DIN Next\", sans-serif;\n        font-weight: 300;\n        color: #000;\n    }\n\n    \/* 移动端样式 *\/\n    * {\n        margin: 0;\n        padding: 0;\n        box-sizing:border-box;\n    }\n    body, html {\n        height: 100%;\n    }\n    .productDetailsMobile {\n        width: 100%;\n    }\n    .productDetailsMobile #headerImage {\n        margin: 0;\n        width: 100%;\n    }\n    .productDetailsMobile #headerVeLink {\n        display: block;\n        width: 100%;\n    }\n    .productDetailsMobile h3 {\n        font-size: 20px;\n        line-height: 22px!important;\n        margin-top: 0;\n    }\n    .productDetailsMobile #describeBox {\n        margin-top: 10px;\n    }\n    .productDetailsMobile #insertElementId {\n        margin-top: 15px;\n        padding: 13px 19px 17px 20px;\n    }\n    .productDetailsMobile #scenesBox,\n    .productDetailsMobile #setUpUL {\n        width: 100%!important;\n    }\n    .productDetailsMobile #liEleId,\n    .productDetailsMobile #setUpLIId {\n        width: 100%!important;\n        margin-top: 25px;\n    }\n    .productDetailsMobile #setUpLIId p {\n        font-size: 14px;\n        line-height: 16px;\n    }\n    .productDetailsMobile #h3EleId {\n        margin-top: 8px!important;\n        font-size: 16px!important;\n        line-height: 18px;\n    }\n    .productDetailsMobile #scenesBoxPEleId p {\n        font-size: 14px;\n        line-height: 16px;\n    }\n    .productDetailsMobile #setUpTitle {\n        margin-top: 25px;\n        font-size: 20px;\n    }\n    .productDetailsMobile #setUpLIId:first-child {\n        margin-top: 0;\n    }\n    .productDetailsMobile #setUpSection {\n        padding: 15px 0 25px;\n    }\n    .productDetailsMobile #middleImage {\n        width: 100%;\n        margin-bottom: 15px;\n    }\n    .productDetailsMobile #middleImage1 {\n        width: 100%;\n        margin-bottom: 15px;\n    }\n    .productDetailsMobile #bottomImage {\n        width: 100%;\n        margin-top: 40px;\n    }\n    .productDetailsMobile table tr td {\n        font-size: 14px!important;\n        height: 47px!important;\n        line-height: 16px!important;\n    }\n    .productDetailsMobile tr td:first-child {\n        padding-left: 15px;\n        width: 150px!important;\n    }\n    .productDetailsMobile #lastWord {\n        font-size: 14px!important;\n        margin: 14px 0 18px 0;\n    }\n    .productDetailsMobile .faqBox {\n        margin-top: 30px;\n        padding: 18px 16px;\n    }\n    .productDetailsMobile .faqTitle {\n        font-size: 20px;\n        line-height: 22px;\n    }\n    .productDetailsMobile .faqQuestion {\n        padding: 16px 28px 16px 0;\n        font-size: 15px;\n        line-height: 19px;\n    }\n    .productDetailsMobile .faqAnswer p {\n        font-size: 14px;\n        line-height: 18px;\n    }\n\u003c\/style\u003e\n\n\u003cdiv id=\"productDetails\" class=\"productDetailsBox\"\u003e\n    \u003cimg id=\"headerImage\" src=\"#\"\u003e\n    \u003ciframe type=\"text\/html\" id=\"headerVeLink\" allowfullscreen=\"true\" allowscriptaccess=\"always\" width=\"100%\" height=\"100%\" src=\"#\" frameborder=\"0\"\u003e\u003c\/iframe\u003e\n    \u003cdiv id=\"describeBox\" class=\"describeBox\"\u003e\u003c\/div\u003e\n    \u003csection\u003e\n        \u003cul id=\"scenesBox\" class=\"scenesBox\"\u003e\u003c\/ul\u003e\n    \u003c\/section\u003e\n    \u003cimg id=\"middleImage\" src=\"#\"\u003e\n    \u003cimg id=\"middleImage1\" src=\"#\"\u003e\n    \u003ctable width=\"100%\"\u003e\n        \u003ctbody id=\"tbodyid\"\u003e\u003c\/tbody\u003e\n    \u003c\/table\u003e\n\n    \u003ciframe type=\"text\/html\" class=\"bottomVeLink\" allowfullscreen=\"true\" allowscriptaccess=\"always\" width=\"100%\" height=\"100%\" src=\"https:\/\/www.youtube.com\/embed\/MRqyYPRk0Ko?si=fhoip6nzUrxvI-Le\" frameborder=\"0\"\u003e\u003c\/iframe\u003e\n    \u003cp class=\"instructionVideo\"\u003eVideo by Fattelo da Solo\u003c\/p\u003e\n\n    \u003ciframe type=\"text\/html\" class=\"bottomVeLink\" allowfullscreen=\"true\" allowscriptaccess=\"always\" width=\"100%\" height=\"100%\" src=\"https:\/\/www.youtube.com\/embed\/vw1d-O4Luy8?si=X9gfHbHikqi-fPMy\" frameborder=\"0\"\u003e\u003c\/iframe\u003e\n    \u003cp class=\"instructionVideo\"\u003eVideo by Smart Home UK-Martin Mierzejewski\u003c\/p\u003e\n\n    \u003cdiv class=\"faqBox\"\u003e\n        \u003ch3 class=\"faqTitle\"\u003eQuestions frequentes\u003c\/h3\u003e\n\n        \u003cdiv class=\"faqItem\"\u003e\n            \u003cbutton type=\"button\" class=\"faqQuestion\"\u003eCe capteur fonctionne-t-il seul ?\u003c\/button\u003e\n            \u003cdiv class=\"faqAnswer\"\u003e\n                \u003cp\u003eNon. Il doit etre utilise avec un hub LinknLink compatible comme eRemote HA ou eMotion Ultra.\u003c\/p\u003e\n            \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"faqItem\"\u003e\n            \u003cbutton type=\"button\" class=\"faqQuestion\"\u003eQue puis-je surveiller ?\u003c\/button\u003e\n            \u003cdiv class=\"faqAnswer\"\u003e\n                \u003cp\u003ePortes, fenetres, tiroirs, placards et autres points ouvert\/ferme.\u003c\/p\u003e\n            \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"faqItem\"\u003e\n            \u003cbutton type=\"button\" class=\"faqQuestion\"\u003ePuis-je recevoir une alerte a l'ouverture ?\u003c\/button\u003e\n            \u003cdiv class=\"faqAnswer\"\u003e\n                \u003cp\u003eOui. Avec un hub compatible, vous recevez des push et utilisez l'etat comme declencheur.\u003c\/p\u003e\n            \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"faqItem\"\u003e\n            \u003cbutton type=\"button\" class=\"faqQuestion\"\u003eFonctionne-t-il avec Alexa et Google Home ?\u003c\/button\u003e\n            \u003cdiv class=\"faqAnswer\"\u003e\n                \u003cp\u003eAvec un hub compatible, il fonctionne avec LinknLink et Alexa pour alertes, lumieres et economies d'energie.\u003c\/p\u003e\n            \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"faqItem\"\u003e\n            \u003cbutton type=\"button\" class=\"faqQuestion\"\u003eQuelle est l'autonomie ?\u003c\/button\u003e\n            \u003cdiv class=\"faqAnswer\"\u003e\n                \u003cp\u003eIl utilise une pile bouton CR1632. En test, la veille atteint environ 8 mois selon l'usage.\u003c\/p\u003e\n            \u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cp id=\"lastWord\"\u003e\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n    {\/*此行以上不要动*\/}\n    var resources = {\n        headerImage:'https:\/\/cdn.shopify.com\/s\/files\/1\/0620\/4496\/2972\/files\/1-_-kit-DC.jpg?v=1773141770',\n        headerVeLink:'https:\/\/www.youtube.com\/embed\/WsX_CHry92k?si=2uPKdPk4mY5SAoFG',\n        introduction:{\n            title:'Capteur de contact BLE intelligent pour porte et fenetre',\n            text:'Un capteur Bluetooth 5.0 compact pour portes, fenetres, tiroirs et placards. Suivi d'etat, alertes instantanees et declencheurs d'automatisation avec un hub LinknLink compatible.',\n            paragraph:[\n                '【Fonctionne avec un hub LinknLink compatible】Ce capteur BLE doit etre utilise avec eRemote HA ou eMotion Ultra pour notifications, routines et automatisations.',\n                '【Surveille portes, fenetres et plus】Detecte l'ouverture ou fermeture selon la distance entre les deux parties du capteur.',\n                '【Alertes push instantanees】Recevez des alertes lors d'une ouverture inattendue pour portes, fenetres et points d'acces.',\n                '【Automatisations LinknLink et Alexa】Utilisez l'etat du contact pour allumer des lumieres, notifier ou couper des appareils.',\n                '【Bluetooth 5.0 et format compact】Installation adhesive sans outils. Le Bluetooth Low Energy offre jusqu'a environ 8 mois en test.'\n            ]\n        },\n        scenes: [\n            {\n                image:'https:\/\/cdn.shopifycdn.net\/s\/files\/1\/0620\/4496\/2972\/files\/P1_fd9b8f2f-aceb-4d3c-a0a6-04b35765055a.png?v=1709271607',\n                title:'Alertes push instantanees',\n                text:[\n                    'Ameliorez securite et confidentialite avec des alertes lors d'une ouverture inattendue.'\n                ]\n            },\n            {\n                image:'https:\/\/cdn.shopifycdn.net\/s\/files\/1\/0620\/4496\/2972\/files\/A_4.png?v=1709272565',\n                title:'Detection fiable ouvert\/ferme',\n                text:[\n                    'Sachez si une porte ou fenetre est ouverte et utilisez l'etat comme declencheur.'\n                ]\n            },\n            {\n                image:'https:\/\/cdn.shopifycdn.net\/s\/files\/1\/0620\/4496\/2972\/files\/A_6-Routines.png?v=1709272565',\n                title:'Declencheurs LinknLink et Alexa',\n                text:[\n                    'Utilisez les evenements du capteur pour automatiser lumieres, alertes et scenes.'\n                ]\n            },\n            {\n                image:'https:\/\/cdn.shopifycdn.net\/s\/files\/1\/0620\/4496\/2972\/files\/9c1872b8a6ab5cf8ee437d24fb04d181_c2e4e47b-e1af-4bc1-a334-77ce42fe8077.png?v=1709272565',\n                title:'Plus intelligent et econome',\n                text:[\n                    'Quand une fenetre s'ouvre, l'automatisation peut couper climatisation ou chauffage.'\n                ]\n            },\n            {\n                image:'https:\/\/cdn.shopifycdn.net\/s\/files\/1\/0620\/4496\/2972\/files\/DS-1.png?v=1709271606',\n                title:'Design compact',\n                text:[\n                    'Petit, elegant et facile a installer avec adhesifs, sans outils.'\n                ]\n            },\n            {\n                image:'https:\/\/cdn.shopifycdn.net\/s\/files\/1\/0620\/4496\/2972\/files\/DS_6f4467bc-78dd-4d7b-ae70-1901223f418a.png?v=1709271606',\n                title:'Bluetooth 5.0 Low Energy',\n                text:[\n                    'Le Bluetooth basse energie offre une longue veille, jusqu'a environ 8 mois selon l'usage.'\n                ]\n            }\n        ],\n        bottomImage:'https:\/\/cdn.shopifycdn.net\/s\/files\/1\/0574\/9597\/8169\/files\/06-STEP1.jpg?v=1627605555',\n        middleImage:'https:\/\/cdn.shopifycdn.net\/s\/files\/1\/0620\/4496\/2972\/files\/DS-_-_2.png?v=1709271605',\n        middleImage1:'',\n        tableData: [\n            {\n                title: 'Produit',\n                text: 'Capteur de contact porte\/fenetre'\n            },{\n                title: 'Modele',\n                text: 'CGH1'\n            },{\n                title: 'Tension nominale',\n                text: 'DC 3.0V'\n            },{\n                title: 'Pile',\n                text: 'Pile bouton CR1632'\n            },{\n                title: 'Sans fil',\n                text: 'Bluetooth 5.0 Low Energy'\n            },{\n                title: 'Taille corps principal',\n                text: '44 × 21.5 × 13 mm'\n            },{\n                title: 'Taille aimant',\n                text: '29 × 14 × 7 mm'\n            },{\n                title: 'Poids net corps principal',\n                text: '6 g (battery not included)'\n            },{\n                title: 'Poids net aimant',\n                text: '7 g'\n            },{\n                title: 'FCC ID',\n                text: '2AQ3F-CGH1'\n            },{\n                title: 'Application',\n                text: 'LinknLink (iOS 11 \/ Android 5.1 et plus)'\n            }\n        ],\n        lastWord:'Les routines necessitent un hub LinknLink compatible comme eRemote HA ou eMotion Ultra, vendu separement. Les 8 mois sont bases sur des tests.'\n    };\n    {\/*此行以下不要动*\/}\n    \/\/ rem适配\n    if((navigator.userAgent.match(\/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|wOSBrowser|BrowserNG|WebOS)\/i))) {\n        if (document.documentElement.clientWidth === 320 || document.documentElement.clientWidth === 375 || document.documentElement.clientWidth === 414 || document.documentElement.clientWidth === 411 || document.documentElement.clientWidth === 360) {\n            var productDetailsEle = document.getElementById(\"productDetails\");\n            productDetailsEle.classList.add(\"productDetailsMobile\");\n        }\n    }\n\n    var headerVeLinkEle = document.getElementById(\"headerVeLink\");\n    if (resources.headerVeLink !== '') {\n        headerVeLinkEle.src = resources.headerVeLink;\n    } else {\n        headerVeLinkEle.classList.add('headerVeLinkHide');\n    }\n\n    var headerImageEle = document.getElementById(\"headerImage\");\n    if (resources.headerImage !== '') {\n        headerImageEle.src = resources.headerImage;\n    } else {\n        headerImageEle.classList.add('headerImageHide');\n    }\n\n    var describeBoxEle = document.getElementById(\"describeBox\");\n\n    var insertElement = document.createElement(\"h3\");\n    insertElement.innerText = resources.introduction.title;\n    describeBoxEle.appendChild(insertElement);\n\n    insertElement = document.createElement(\"p\");\n    insertElement.innerText = resources.introduction.text;\n    describeBoxEle.appendChild(insertElement);\n\n    insertElement = document.createElement(\"div\");\n    insertElement.id = \"insertElementId\";\n    insertElement.classList.add(\"paragraphBox\");\n    for (var i = 0; i \u003c resources.introduction.paragraph.length; i++) {\n        var eleDiv = document.createElement(\"div\");\n        eleDiv.id = \"eleDivid\";\n        eleDiv.classList.add('paragraphDiv');\n        eleDiv.innerHTML = '\u003cp\u003e•\u003cdiv style=\"width: 5px;\"\u003e\u003c\/div\u003e\u003c\/p\u003e\u003cp\u003e' + resources.introduction.paragraph[i] + '\u003c\/p\u003e';\n        insertElement.appendChild(eleDiv);\n    }\n    describeBoxEle.appendChild(insertElement);\n\n    var scenesBoxEle = document.getElementById(\"scenesBox\");\n    for (var j = 0; j \u003c resources.scenes.length; j++) {\n        var scene = resources.scenes[j];\n        var liEle = document.createElement(\"li\");\n        liEle.id = \"liEleId\";\n        liEle.key = 'scenes' + j;\n        liEle.classList.add(\"scenesShowItem\");\n\n        var imgEle = document.createElement(\"img\");\n        imgEle.src = scene.image;\n        liEle.appendChild(imgEle);\n\n        var h3Ele = document.createElement(\"h3\");\n        h3Ele.id = \"h3EleId\";\n        h3Ele.innerText = scene.title;\n        liEle.appendChild(h3Ele);\n\n        var pEle = document.createElement(\"p\");\n        pEle.id = \"scenesBoxPEleId\";\n        pEle.innerHTML = '\u003cp\u003e' + scene.text[0] + '\u003c\/p\u003e';\n        liEle.appendChild(pEle);\n        scenesBoxEle.appendChild(liEle);\n    }\n\n    var middleImageEle = document.getElementById(\"middleImage\");\n    if (resources.middleImage) {\n        middleImageEle.src = resources.middleImage;\n    } else {\n        middleImageEle.classList.add('bottomImageHide');\n    }\n\n    var middleImageEle1 = document.getElementById(\"middleImage1\");\n    if (resources.middleImage1) {\n        middleImageEle1.src = resources.middleImage1;\n    } else {\n        middleImageEle1.classList.add('bottomImageHide');\n    }\n\n    for (var k = 0; k \u003c resources.tableData.length; k++) {\n        var tbodyid = document.getElementById(\"tbodyid\");\n        var tableTrEle = document.createElement(\"tr\");\n        var trItem = resources.tableData[k];\n\n        var tdFirst = document.createElement(\"td\");\n        tdFirst.innerText = trItem.title;\n        tableTrEle.appendChild(tdFirst);\n\n        var tdSecond = document.createElement(\"td\");\n        tdSecond.innerText = trItem.text;\n        tableTrEle.appendChild(tdSecond);\n        tbodyid.appendChild(tableTrEle);\n    }\n\n    var lastWordEle = document.getElementById(\"lastWord\");\n    lastWordEle.innerText = resources.lastWord;\n\n    var submitBtn = document.getElementById('submitButton');\n    if (submitBtn) {\n        submitBtn.addEventListener('click', function(event) {\n            window.scrollTo(0, document.body.scrollHeight);\n        });\n    }\n\n    var faqButtons = document.querySelectorAll('.faqQuestion');\n    for (var m = 0; m \u003c faqButtons.length; m++) {\n        faqButtons[m].addEventListener('click', function() {\n            var parent = this.parentNode;\n            if (parent.classList.contains('active')) {\n                parent.classList.remove('active');\n            } else {\n                parent.classList.add('active');\n            }\n        });\n    }\n\u003c\/script\u003e","brand":"LinknLink","offers":[{"title":"BLE Contact Sensor","offer_id":46578218303644,"sku":null,"price":14.99,"currency_code":"USD","in_stock":true},{"title":"BLE Contact Sensor 3 Pack","offer_id":43242288939164,"sku":"","price":42.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0620\/4496\/2972\/files\/Door_sensor2.png?v=1776406259","url":"https:\/\/www.linknlink.com\/fr\/products\/eds2-ble-5-0-smart-door-window-contact-sensor","provider":"LinknLink","version":"1.0","type":"link"}