{"id":11,"date":"2024-06-14T15:58:48","date_gmt":"2024-06-14T15:58:48","guid":{"rendered":"https:\/\/msip.wpenginepowered.com\/?page_id=11"},"modified":"2025-04-01T17:27:53","modified_gmt":"2025-04-01T17:27:53","slug":"patents","status":"publish","type":"page","link":"https:\/\/ms-patents.com\/","title":{"rendered":"Patents"},"content":{"rendered":"\n<p>MerchSource is a leading provider of high-quality consumer products.<br>This page is intended to serve as patent notice under 35 U.S.C. \u00a7 287(a).<\/p>\n\n\n\n<p><strong>The following products are covered by the patents identified below:<\/strong><\/p>\n\n\n\n<div style=\"height:13px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<!-- Search Container -->\n<div class=\"search-container\">\n    <input type=\"text\" id=\"searchBar\" placeholder=\"Enter Brand, Product or Patent Number\">\n    <button id=\"searchButton\">Search<\/button>\n<\/div>\n\n<!-- No results message -->\n<div id=\"noResultsMessage\" style=\"display: none; color: red;\">No results found.<\/div>\n\n<!-- Table Block (Content Managed by WordPress) -->\n<figure class=\"wp-block-table\">\n    <table>\n        <!-- Table content goes here -->\n    <\/table>\n<\/figure>\n\n\n<style>\n    \/* Container for the Search Bar and Button *\/\n    .search-container {\n        display: flex;\n        align-items: center;\n        margin-bottom: 10px;\n    }\n\n    \/* Styling for the Search Bar *\/\n    #searchBar {\n        margin-right: 10px;\n        padding: 8px 12px;\n        font-size: 16px;\n        height: 40px;\n        border: 1px solid #ccc;\n        border-radius: 20px;\n    }\n\n    \/* Styling for the Search Button *\/\n    #searchButton {\n        padding: 8px 12px;\n        font-size: 16px;\n        cursor: pointer;\n        background-color: #0f75bc;\n        color: white;\n        border: none;\n        border-radius: 20px;\n        height: 40px;\n    }\n\n    \/* Highlighting style for matched text *\/\n    .highlight {\n        background-color: yellow;\n        color: black;\n    }\n\n    \/* Highlighting style for the current match *\/\n    .current-highlight {\n        background-color: #0f75bc;\n        color: white;\n    }\n\/* Ensure all table cells have a bottom border *\/\n.wp-block-table td, \n.wp-block-table th {\n    border-bottom: 1px solid #0c0d0e; \/* Adjust the color and thickness as needed *\/\n}\n\n\/* Specifically ensure the last row's cells have a bottom border *\/\n.wp-block-table tr:last-child td {\n    border-bottom: 1px solid #0c0d0e; \/* Ensure bottom border is present *\/\n}\n.wp-block-table {\nmargin: 0 0 0 0;\n}\n\n<\/style>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<figure class=\"wp-block-table is-style-regular\"><table><thead><tr><th>Brand<\/th><th>Product<\/th><th>Patent Number(s)<\/th><\/tr><\/thead><tbody><tr><td>Sharper Image<\/td><td>Massager Deep Tissue Power Percussion with Case Di..<\/td><td>D1004118, D1004119, D1009292<\/td><\/tr><tr><td>Sharper Image<\/td><td>Powerboost Move Portable Percussion Massager with ..<\/td><td>D995812<\/td><\/tr><tr><td>Sharper Image<\/td><td>Powerboost Deep Tissue Massager Percussion Device<\/td><td>D1004117, D1009294, D1018888, D1018881<\/td><\/tr><tr><td>Sharper Image<\/td><td>Powerboost Move Portable Percussion Massager<\/td><td>D995812<\/td><\/tr><tr><td>Sharper Image<\/td><td>PowerBoost Pro Hot and Cold<\/td><td>11877976, D987844, D1004123<\/td><\/tr><tr><td>Sharper Image<\/td><td>PowerBoost Pro Plus Hot and Cold Compact PDQ<\/td><td>11877976, PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Powerboost Deep Tissue Percussion Massager (2024)<\/td><td>PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Powerboost Move Portable Percussion Massager (2024)<\/td><td>PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Hair Airflow Styler<\/td><td>PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Massager Foot Bath Heating with LCD<\/td><td>D1018872<\/td><\/tr><tr><td>Sharper Image<\/td><td>Sleep Therapy Sound Soother 4inch<\/td><td>D973225<\/td><\/tr><tr><td>Sharper Image<\/td><td>Massager Realtouch Shiatsu Neck Cordless<\/td><td>PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Handheld Vacuum<\/td><td>PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Stick Combo Vacuum<\/td><td>PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Drone Mach 10inch with Camera Streaming<\/td><td>D846445<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Speed Bumper Road Rage<\/td><td>D973148, D941405, D980346, D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Gravity Rover<\/td><td>D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Monster Spinning Car<\/td><td>D803329<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Mecha Rivals<\/td><td>D1016933, D941405, D980346, D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Flip Stunt Rally<\/td><td>D825684, D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Drone Aero Stunt LED<\/td><td>D971341, D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Drone 5inch Flying Car<\/td><td>D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Drone Lumo Glow Stunt 5inch<\/td><td>D994537, D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Giant Crusher 4&#215;4<\/td><td>D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Drone Thunderbolt Jet X2<\/td><td>D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy Laser Tag Shooting Game<\/td><td>D1017726, PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Drone Xtreme Airwave<\/td><td>D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Stunt Mongoose LED<\/td><td>D870211, D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy Laser Tag Handtank Attack Pack<\/td><td>D1017726, PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Robot Combat Set<\/td><td>D1017726, PENDING<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Xtreme Roll Cage Rechargeable<\/td><td>D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Toy RC Robo Rage<\/td><td>D972659, D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Drone Xtreme Thunderbolt Jet X2<\/td><td>D990568, D991196<\/td><\/tr><tr><td>Sharper Image<\/td><td>Coin Counting Jar<\/td><td>D610775, D634095<\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div>\n<\/div>\n\n\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n    const table = document.querySelector('.wp-block-table tbody');\n    if (!table) return;\n\n    const rows = Array.from(table.rows);\n    let previousValue = '';\n    let spanCount = 1;\n\n    rows.forEach((row, index) => {\n        const firstCell = row.cells[0];\n        if (firstCell) {\n            if (firstCell.textContent.trim() === previousValue) {\n                spanCount++;\n                rows[index - spanCount + 1].cells[0].rowSpan = spanCount;\n                firstCell.style.display = 'none';\n            } else {\n                previousValue = firstCell.textContent.trim();\n                spanCount = 1;\n            }\n        }\n    });\n});\n<\/script>\n\n<style>\n    .wp-block-table td {\n        vertical-align: top; \/* Ensures the text in merged cells aligns at the top *\/\n    }\n    .wp-block-table td[style*=\"display: none\"] {\n        display: none !important;\n    }\n<\/style>\n\n\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n    var searchBar = document.getElementById('searchBar');\n    var searchButton = document.getElementById('searchButton');\n    var noResultsMessage = document.getElementById('noResultsMessage');\n    var currentMatchIndex = -1;\n    var matches = [];\n\n    \/\/ Function to clear all existing highlights\n    function clearHighlights() {\n        var highlightedElements = document.querySelectorAll('.highlight, .current-highlight');\n        highlightedElements.forEach(function(element) {\n            var parent = element.parentNode;\n            parent.replaceChild(document.createTextNode(element.textContent), element);\n            parent.normalize();\n        });\n    }\n\n    \/\/ Function to search the table and highlight matches\n    function searchTable() {\n        clearHighlights();\n        noResultsMessage.style.display = 'none'; \/\/ Hide no results message\n        var searchText = searchBar.value.toLowerCase();\n        var table = document.querySelector('.wp-block-table tbody');\n        var rows = table.querySelectorAll('tr');\n        matches = [];\n        currentMatchIndex = -1;\n\n        \/\/ Loop through each row and cell to find matches\n        rows.forEach(function(row) {\n            var cells = row.querySelectorAll('td');\n\n            cells.forEach(function(cell) {\n                var cellText = cell.textContent.toLowerCase();\n                var regex = new RegExp(`(${searchText})`, 'gi');\n\n                \/\/ Clear previous highlights\n                cell.innerHTML = cell.textContent.replace(\/<span class=\"highlight\">|<\\\/span>\/g, '');\n\n                \/\/ Highlight the matching text\n                if (searchText && cellText.includes(searchText)) {\n                    cell.innerHTML = cell.innerHTML.replace(regex, '<span class=\"highlight\">$1<\/span>');\n                    var highlights = cell.querySelectorAll('.highlight');\n                    highlights.forEach(function(highlight) {\n                        matches.push(highlight);\n                    });\n                }\n            });\n        });\n\n        \/\/ Highlight and scroll to the first match\n        if (matches.length > 0) {\n            currentMatchIndex = 0;\n            matches[currentMatchIndex].classList.add('current-highlight');\n            matches[currentMatchIndex].scrollIntoView({ behavior: 'smooth', block: 'center' });\n        } else {\n            noResultsMessage.style.display = 'block'; \/\/ Show no results message\n        }\n    }\n\n    \/\/ Function to scroll to the next match\n    function scrollToNextMatch() {\n        if (matches.length > 0) {\n            matches[currentMatchIndex].classList.remove('current-highlight');\n            currentMatchIndex = (currentMatchIndex + 1) % matches.length;\n            matches[currentMatchIndex].classList.add('current-highlight');\n            matches[currentMatchIndex].scrollIntoView({ behavior: 'smooth', block: 'center' });\n        }\n    }\n\n    \/\/ Event listener for focus on the search bar to clear highlights and search term\n    searchBar.addEventListener('focus', function() {\n        clearHighlights();\n        noResultsMessage.style.display = 'none'; \/\/ Hide no results message\n        matches = [];\n        currentMatchIndex = -1;\n        searchBar.value = ''; \/\/ Clear the search bar value\n    });\n\n    \/\/ Event listener for input on the search bar to clear highlights when the input changes\n    searchBar.addEventListener('input', function() {\n        clearHighlights();\n        noResultsMessage.style.display = 'none'; \/\/ Hide no results message\n        matches = [];\n        currentMatchIndex = -1;\n    });\n\n    \/\/ Event listener for Enter key press to scroll to next match or perform search\n    searchBar.addEventListener('keyup', function(event) {\n        if (event.key === 'Enter') {\n            if (matches.length > 0) {\n                scrollToNextMatch();\n            } else {\n                searchTable();\n            }\n        }\n    });\n\n    \/\/ Event listener for click on the search button to perform search\n    searchButton.addEventListener('click', searchTable);\n});\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>MerchSource is a leading provider of high-quality consumer products.This page is intended to serve as patent notice under 35 U.S.C. \u00a7 287(a). The following products are covered by the patents identified below: Search No results found. Brand Product Patent Number(s) Sharper Image Massager Deep Tissue Power Percussion with Case Di.. D1004118, D1004119, D1009292 Sharper Image &hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_genesis_block_theme_hide_title":false,"footnotes":""},"class_list":["post-11","page","type-page","status-publish","hentry","post","without-featured-image"],"featured_image_src":null,"featured_image_src_square":null,"_links":{"self":[{"href":"https:\/\/ms-patents.com\/index.php?rest_route=\/wp\/v2\/pages\/11","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ms-patents.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ms-patents.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ms-patents.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ms-patents.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=11"}],"version-history":[{"count":0,"href":"https:\/\/ms-patents.com\/index.php?rest_route=\/wp\/v2\/pages\/11\/revisions"}],"wp:attachment":[{"href":"https:\/\/ms-patents.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=11"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}