🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
6/15
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack
6/15

🎁Semi-Annual Sale-30% OFF🥕Updated Telescopic Sink Storage Rack

$24.95
$35.65
Save $10.70
ColorGreen
Please select a color
Quantity

As a gift for your loved ones, this limited stock Updated Telescopic Sink Storage Rack will be perfect!

Keep your kitchen sink always clean & tidy!

Adjustable to fit any size of sinks, large capacity storage. 

MAIN FEATURES

  • VENTILATED DRAIN
    Create a healthy environment by keeping your cleaning devices dry. The drain holes are evenly distributed, allowing the water to safely exit the bottom giving your sponges and rags time to properly dry.

  • SCALABLE DESIGN
    Can meet different needs, suitable for various sizes of sinks, freely adjust the length, can be large-capacity storage.

  • TOWEL BAR
    Doubles as a towel bar! The sleek design gives you a tidy space to hang and dry towels, keeping your damp cloth dry, ventilated, clean, and hygienic.
  • THICKENING DRAIN BOX
    Easy to store scrubbing utensils, such as dishwashing liquid, hand sanitizer, brush bowl ball, etc.
  • EASY INSTALLATION
    Designed to be as simple as possible, easy to remove and wash. The buckle installation is more stable and will not shake.

SPECIFICATIONS:

  • Material: ABS
  • Size: 36CM × 9CM × 5CM
  • Weight: 260g
  • Color: Blue,green,red,yellow

PACKAGE INCLUDES:

  • 1 x Updated Telescopic Sink Storage Rack

Customer Reviews

Here are what our customers say.

Write a Review
Customer Reviews
Wow you reached the bottom
Newest
Most liked
Highest ratings
Lowest ratings
×
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.