{"product_id":"dish-drying-rack-expandable-over-the-sink-in-the-sink-and-for-cabinet-and-kitchen-counter-dish-drainer-rust-proof-large-kitchen-organizer-with-drainboard-two-cutlery-holders-and-6-cup-holders","title":"Dish drying rack expandable over the sink, in the sink and for cabinet and kitchen counter; Dish drainer rust proof, Large kitchen organizer with drainboard, two cutlery holders and 6 cup holders.","description":"\u003cdiv id=\"aplus\" class=\"a-section a-spacing-medium bucket\"\u003e \u003chr noshade size=\"1\" class=\"bucketDivider\"\u003e\n                                        \u003cstyle\u003e\n    .aplus-content-partial-expander__padding {\n        padding-top: 5px;\n    }\n    .aplus-content-partial-expander__heading {\n        z-index: 1000;\n    }\n\u003c\/style\u003e\n\n\u003cdiv data-a-expander-name=\"aplus-partial-content-expander\" data-a-expander-collapsed-height=\"200\" class=\"a-expander-collapsed-height a-row a-expander-container a-expander-partial-collapse-container\" style=\"max-height:200px\"\u003e \u003cdiv data-expanded=\"false\" class=\"a-expander-content a-expander-partial-collapse-content\"\u003e            \u003cstyle\u003e\n    .aplus-v2 .aplus-content-wrapper {\n        position: relative;\n        overflow: hidden;\n    }\n\n    .aplus-v2 .container-with-background-image {\n        width: 100%;\n        height: 100%;\n        background-repeat: no-repeat;\n        background-size: cover;\n    }\n\n    .aplus-v2 .aplus-module-csa-wrapper {\n        display: flow-root;\n    }\n\u003c\/style\u003e\n  \u003cscript type=\"application\/javascript\"\u003e\n    function logShoppableMetrics(moduleName, showsAddToCart) {\n        if (window.ue \u0026amp;\u0026amp; window.ue.count) {\n            window.ue.count(\"aplus:shoppable:\" + moduleName + \":addToCart\", showsAddToCart ? 1 : 0);\n        }\n    }\n\u003c\/script\u003e\n\n                                                  \u003ch2\u003eProduct description\u003c\/h2\u003e   \u003cdiv lang=\"en_US\"\u003e\n    \u003cdiv class=\"aplus-v2 desktop celwidget\" cel_widget_id=\"aplus\"\u003e\n            \u003cdiv class=\"aplus-content-wrapper\"\u003e\n                                \u003cdiv class=\"celwidget aplus-module premium-module-13-carousel aplus-premium\" cel_widget_id=\"aplus-premium-module-13-carousel\"\u003e\n                                                                      \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-13\"\u003e                                        \u003ch1 class=\"aplus-container-3 aplus-h1 a-text-bold\"\u003e Expandable dish rack, multiple-using ways to make your kitchen well organized.  \u003c\/h1\u003e     \u003cdiv class=\"a-section a-spacing-none aplus-carousel-container\"\u003e \u003cdiv id=\"premium-aplus-13-carousel-0-id\" data-a-carousel-options='{\"peek_percentage\":0,\"minimum_gutter_width\":0,\"show_partial_next\":false,\"name\":\"premium-aplus-13-carousel-0\"}' aria-label=\"Featured content carousel\" aria-roledescription=\"carousel\" data-a-display-strategy=\"single\" data-a-transition-strategy=\"slideCircular\" role=\"region\" class=\"a-begin a-carousel-container a-carousel-static a-carousel-display-single a-carousel-transition-slideCircular\"\u003e\n\u003cinput autocomplete=\"on\" type=\"hidden\" class=\"a-carousel-firstvisibleitem\"\u003e  \u003cdiv class=\"a-row a-carousel-controls a-carousel-row a-carousel-has-buttons a-carousel-overlay-buttons a-carousel-rounded-buttons\"\u003e\u003cdiv class=\"a-carousel-row-inner\"\u003e\n\u003cdiv class=\"a-carousel-col a-carousel-left\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"a-carousel-col a-carousel-center\"\u003e\u003cdiv class=\"a-carousel-viewport\" aria-roledescription=\"slide\"\u003e\u003col class=\"a-carousel\" role=\"list\"\u003e     \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"3\"\u003e \u003cdiv id=\"premium-aplus-13-carousel-0-slide-0\"\u003e\n                                            \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e                                         \u003cimg alt=\"This dish drainer has four ways to use, Bonus draining tray can be used separately or together.\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/76c8f4a4-3063-42e7-9e6d-c8eb57d9fcd4.__CR0,307,3000,1230_PT0_SX1464_V1___.jpg\"\u003e    \u003c\/div\u003e   \u003cdiv class=\"a-section a-spacing-none aplus-card-description-wrapper\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-description aplus-container-1-2\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-table-cell\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-text-background aplus-container-1\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-title\"\u003e                                        \u003ch1 class=\"aplus-h2 a-text-bold\"\u003e Get More, Pay Less! \u003c\/h1\u003e    \u003c\/div\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-body\"\u003e                                   \u003cp class=\"aplus-p3\"\u003e This dish drying rack is with an additional draining tray to collect and drain the water easily together. It can be used separately as well to drain cups, bowls, plates etc. \u003c\/p\u003e    \u003c\/div\u003e   \u003cdiv class=\"a-section a-spacing-none aplus-card-link-button\"\u003e  \u003cspan class=\"a-button a-button-toggle aplus-comparison-table-carousel-link-button\"\u003e\u003cspan class=\"a-button-inner\"\u003e\u003c\/span\u003e\u003c\/span\u003e \u003c\/div\u003e  \u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e  \u003c\/div\u003e\n                            \u003c\/li\u003e      \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"3\"\u003e \u003cdiv id=\"premium-aplus-13-carousel-0-slide-1\"\u003e\n                                            \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e                                         \u003cimg alt=\"dish drainer, dish drying rack, dish rack for kitchen counter and cabinet\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/4cfa678f-01f0-4756-9e6c-bb6ca1e5d2c3.__CR0,307,3000,1230_PT0_SX1464_V1___.jpg\"\u003e    \u003c\/div\u003e   \u003cdiv class=\"a-section a-spacing-none aplus-card-description-wrapper\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-description aplus-container-1-2\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-table-cell\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-text-background aplus-container-1\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-title\"\u003e                                        \u003ch1 class=\"aplus-h2 a-text-bold\"\u003e More functions make your kitchen well organized. \u003c\/h1\u003e    \u003c\/div\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-body\"\u003e                                   \u003cp class=\"aplus-p3\"\u003e This dish drainer can be used not only for dishes but also for fruits, vegetables etc. The extra draining tray makes much more storage area. \u003c\/p\u003e    \u003c\/div\u003e   \u003cdiv class=\"a-section a-spacing-none aplus-card-link-button\"\u003e  \u003cspan class=\"a-button a-button-toggle aplus-comparison-table-carousel-link-button\"\u003e\u003cspan class=\"a-button-inner\"\u003e\u003c\/span\u003e\u003c\/span\u003e \u003c\/div\u003e  \u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e  \u003c\/div\u003e\n                            \u003c\/li\u003e      \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"3\"\u003e \u003cdiv id=\"premium-aplus-13-carousel-0-slide-2\"\u003e\n                                            \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e                                         \u003cimg alt=\"after use\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/9e0d84e3-602e-464e-827d-e5743fe247f7.__CR0,307,3000,1230_PT0_SX1464_V1___.jpg\"\u003e    \u003c\/div\u003e   \u003cdiv class=\"a-section a-spacing-none aplus-card-description-wrapper\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-description aplus-container-1-2\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-table-cell\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-text-background aplus-container-1\"\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-title\"\u003e                                        \u003ch1 class=\"aplus-h2 a-text-bold\"\u003e More using ways make your kitchen clean and tidy \u003c\/h1\u003e    \u003c\/div\u003e \u003cdiv class=\"a-section a-spacing-none aplus-card-body\"\u003e                                   \u003cp class=\"aplus-p3\"\u003e The Dish Drying Rack is designed with four usage methods to accommodate various kitchen needs: on the countertop, in the sink, over the sink, or in the cabinet. It's better for 1-3 members family. \u003c\/p\u003e    \u003c\/div\u003e   \u003cdiv class=\"a-section a-spacing-none aplus-card-link-button\"\u003e  \u003cspan class=\"a-button a-button-toggle aplus-comparison-table-carousel-link-button\"\u003e\u003cspan class=\"a-button-inner\"\u003e\u003c\/span\u003e\u003c\/span\u003e \u003c\/div\u003e  \u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e \u003c\/div\u003e  \u003c\/div\u003e\n                            \u003c\/li\u003e               \u003c\/ol\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv class=\"a-carousel-col a-carousel-right\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e \u003cspan class=\"a-end aok-hidden\"\u003e\u003c\/span\u003e\n\u003c\/div\u003e \u003cdiv class=\"a-section a-spacing-none aplus-pagination-wrapper\"\u003e      \u003cscript\u003e\n\nP.now(\"premium-aplus-13-carousel-0\").execute(\"init-pagination-carousel\", function(init) {\n    if (init) {\n        return;\n    }\n    P.register(\"premium-aplus-13-carousel-0\", function() {\n        return function() {\n            P.when(\"A\", \"jQuery\", \"a-carousel-framework\", \"ready\").execute(\"paginate-carousel\", function (A, $, framework) {\n                const ENTER_KEY_CODE = 13;\n                const ESCAPE_KEY_CODE = 27;\n                const LEFT_ARROW_KEY = 37;\n                const RIGHT_ARROW_KEY = 39;\n                const HOME_KEY = 36;\n                const END_KEY = 35;\n\n                var moduleId = \"0\";\n                var carouselName = \"premium-aplus-13-carousel-0\";\n                var paginationAction = \"aplus-pagination-dot-action-\" + moduleId + \"-\" + carouselName;\n                var paginationGroup = \"#aplus-pagination-group-\" + moduleId + \"-\" + carouselName;\n\n                \/* If the carousel goes to a new page *\/\n                A.on(\"a:carousel:\"+carouselName+\":change:pageNumber\", function (data) {\n                    A.$(paginationGroup+\" .carousel-slider-circle\").removeClass(\"aplus-carousel-active\").attr('aria-selected', 'false').attr('tabindex', -1)\n                                    .eq(data.newValue - 1).addClass(\"aplus-carousel-active\").attr('aria-selected', 'true').attr('tabindex', 0);\n                });\n\n                function syncPaginationDotsWithCarouselPages(numPages) {\n                    const parentElement = document.querySelector(paginationGroup);\n                    if (parentElement \u0026amp;\u0026amp; parentElement.children) {\n                        const children = parentElement.children;\n                        for (let i = 0; i \u0026lt; children.length; i++) {\n                            if (i \u0026gt;= numPages) {\n                                \/\/ If number of dots \u0026gt; num of pages, we should hide other dots\n                                children[i].classList.add('aplus-pagination-dot--display-none');\n                            } else if (children[i].classList.contains('aplus-pagination-dot--display-none')) {\n                                \/\/ Reset display of dots if it was hidden before\n                                children[i].classList.remove('aplus-pagination-dot--display-none');\n                            }\n                        }\n                    }\n                }\n\n                framework.onInit(carouselName, function (carousel) {\n                    try {\n                        var totalPages = carousel.getAttr('totalPages');\n                        syncPaginationDotsWithCarouselPages(totalPages);\n                        \/* Resize event handler to re-calculate the pagination dots count based on orientation *\/\n                        window.addEventListener('resize', function() {\n                            carousel.resize();\n                            totalPages = carousel.getAttr('totalPages');\n                            syncPaginationDotsWithCarouselPages(totalPages);\n                        });\n\n                        A.declarative(paginationAction, 'click keydown', function(event){\n                            var isClick = event.type === 'click';\n                            var isKeydown = event.type === 'keydown';\n                            var isEnter = isKeydown \u0026amp;\u0026amp; event.$event.keyCode === ENTER_KEY_CODE;\n                            var isEsc = isKeydown \u0026amp;\u0026amp; event.$event.keyCode === ESCAPE_KEY_CODE;\n                            var isLeftArrow = isKeydown \u0026amp;\u0026amp; event.$event.keyCode === LEFT_ARROW_KEY;\n                            var isRightArrow = isKeydown \u0026amp;\u0026amp; event.$event.keyCode === RIGHT_ARROW_KEY;\n                            var isHome = isKeydown \u0026amp;\u0026amp; event.$event.keyCode === HOME_KEY;\n                            var isEnd = isKeydown \u0026amp;\u0026amp; event.$event.keyCode === END_KEY;\n\n                            if (isClick || isEnter) {\n                                var data = event.data;\n                                carousel.gotoPage(data.page);\n                            } else if (isEsc) {\n                                event.$target.blur();\n                            } else if (isLeftArrow || isRightArrow || isHome || isEnd) {\n                                event.$event.preventDefault();\n                                const dots = A.$(paginationGroup + \" .carousel-slider-circle\");\n                                const currentIndex = dots.index(event.$target);\n                                let nextIndex;\n\n                                if (isLeftArrow) {\n                                    nextIndex = currentIndex \u0026gt; 0 ? currentIndex - 1 : dots.length - 1;\n                                } else if (isRightArrow) {\n                                    nextIndex = currentIndex \u0026lt; dots.length - 1 ? currentIndex + 1 : 0;\n                                } else if (isHome) {\n                                    nextIndex = 0;\n                                } else if (isEnd) {\n                                    nextIndex = dots.length - 1;\n                                }\n\n                                dots.eq(nextIndex).focus();\n                                carousel.gotoPage(nextIndex + 1);\n                            }\n                        });\n                    } catch (e) {\n                        P.log('Failed to init ' + carouselName + '. Error: ' + e.message, 'FATAL', 'AplusModuleResources');\n                    }\n                });\n            });\n        }\n    });\n});\n\u003c\/script\u003e\n     \u003cdiv class=\"aplus-mantle aplus-module\"\u003e\n        \u003cdiv class=\"aplus-carousel-nav\"\u003e\n            \u003cul id=\"aplus-pagination-group-0-premium-aplus-13-carousel-0\" class=\"aplus-pagination-dots\" aria-label=\"tablist-section\" role=\"tablist\"\u003e\n                  \u003cli class=\"aplus-pagination-dot\"\u003e\n                        \u003cspan class=\"a-declarative carousel-slider-circle aplus-display-inline-block aplus-carousel-active\" aria-selected=\"true\" data-action=\"aplus-pagination-dot-action-0-premium-aplus-13-carousel-0\" data-aplus-pagination-dot-action-0-premium-aplus-13-carousel-0='{\"page\": 1}' aria-label=\"slide-1\" aria-controls=\"premium-aplus-13-carousel-0-slide-0\" tabindex=\"0\" role=\"tab\"\u003e\u003c\/span\u003e\n                    \u003c\/li\u003e\n                  \u003cli class=\"aplus-pagination-dot\"\u003e\n                        \u003cspan class=\"a-declarative carousel-slider-circle aplus-display-inline-block \" aria-selected=\"false\" data-action=\"aplus-pagination-dot-action-0-premium-aplus-13-carousel-0\" data-aplus-pagination-dot-action-0-premium-aplus-13-carousel-0='{\"page\": 2}' aria-label=\"slide-2\" aria-controls=\"premium-aplus-13-carousel-0-slide-1\" tabindex=\"-1\" role=\"tab\"\u003e\u003c\/span\u003e\n                    \u003c\/li\u003e\n                  \u003cli class=\"aplus-pagination-dot\"\u003e\n                        \u003cspan class=\"a-declarative carousel-slider-circle aplus-display-inline-block \" aria-selected=\"false\" data-action=\"aplus-pagination-dot-action-0-premium-aplus-13-carousel-0\" data-aplus-pagination-dot-action-0-premium-aplus-13-carousel-0='{\"page\": 3}' aria-label=\"slide-3\" aria-controls=\"premium-aplus-13-carousel-0-slide-2\" tabindex=\"-1\" role=\"tab\"\u003e\u003c\/span\u003e\n                    \u003c\/li\u003e\n                 \u003c\/ul\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n \u003c\/div\u003e \u003c\/div\u003e \u003cdiv class=\"a-section a-text-center\"\u003e                                  \u003c\/div\u003e \u003c\/div\u003e  \u003c\/div\u003e\n         \u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e \u003c\/div\u003e \u003cdiv class=\"a-row aplus-content-partial-expander__padding\"\u003e\u003c\/div\u003e \u003cdiv class=\"a-expander-header a-expander-partial-collapse-header aplus-content-partial-expander__heading\"\u003e\u003cdiv class=\"a-expander-content-fade\"\u003e\u003c\/div\u003e\u003c\/div\u003e \u003c\/div\u003e      \u003c\/div\u003e                                 ","brand":"KitchenGrid","offers":[{"title":"Default Title","offer_id":43728966123581,"sku":null,"price":20.59,"currency_code":"AUD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0668\/5025\/9005\/files\/81O72gbXVSL._AC_SL1500.jpg?v=1790577053","url":"https:\/\/dovellianova.com\/products\/dish-drying-rack-expandable-over-the-sink-in-the-sink-and-for-cabinet-and-kitchen-counter-dish-drainer-rust-proof-large-kitchen-organizer-with-drainboard-two-cutlery-holders-and-6-cup-holders","provider":"KitchenGrid","version":"1.0","type":"link"}