Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner
Stain Remover Roller-ball Cleaner

Stain Remover Roller-ball Cleaner

Price
$19.99
$12.99
Save  35%
Amount
Please select a amount
Quantity
Worldwide shipping
Free returns
24/7 customer support
Secure payments
Are you still worried about getting stains?
Various Sauce / Oil Stains?
Coffee Beverage Stains?
Cosmetics / Lipstick Stains?
Red Wine Stains, ect.

Sudden small accidents at important moments spoil the mood throughout the day!
Don't worry anymore! Our stain remover can help you solve these problems.
    The new mild formula effectively removes stains on clothes. Quick decontamination, no need to wash, ball design, increase friction, do not damage clothes.

    Main Features

    • Effectively Remove All Kinds Of Stains
      It can be used for food stains, cosmetic stains, beverages (coffee, tea, wine, milk, cola, etc.), ketchup, oil stains, etc. It is practical and easy to use.
    • 1 Minute Decontamination
      It only takes 1 minute to solve any stain-related problems! Rollback and forth with the stain remover on the stained area, and the stain will immediately disappear without a trace.
    • Ideal For Emergency Stain Removal
      It is very suitable for outdoor stains, such as sudden stains caused by work, parties, camping, etc. Convenient and compact design, easy to carry around, it can save you from the embarrassing situation of dirty clothes.
    • Safe Use
      This stain remover is specially developed to deal with all kinds of stains. It is safe and gentle on the skin, has no corrosive effect on the fabric, will not harm your fabric, and will not affect the beautiful color of the clothes.
    • Suitable For A Variety Of Fabric Clothing
      One bottle is multi-purpose, saving water, effort, and money. It is suitable for cotton, linen, polyester, blended fabric, denim, down jacket, and so on.

    Using Methods

      Specifications

      Product Weight
      • 70 G
      Product Size
      (L x W x H)
      • 10x5x5 cm / 3.9x2x2 inches
      Package Contents
      • Stain Remover Roller-ball Cleaner x 1
      Net content 50 ML

      Note

      • Due to manual measurements, please allow slight measurement deviations.
      • Due to the different display and lighting effects, the actual color of the item may be slightly different from the color displayed on the picture.

      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.