Free shipping worldwide over $50
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
9 / 18
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
Anti-Slip Shoe Sole Protector
0% OFF

Anti-Slip Shoe Sole Protector

$11.99
0 sold
Length
Width
Qty

FEATURES

REPAIR WORN-OUT SOLES – Easily fix and restore damaged shoe soles by applying this anti-slip protector, bringing your favorite shoes back to life with improved traction and durability.

ENHANCED GRIP – Adds a slip-resistant layer to your shoe soles, providing better grip and preventing slips on wet or smooth surfaces, improving your safety while walking.

EASY TO TRIM – The shoe sole protector can be easily trimmed with scissors to perfectly fit the size and shape of your shoe soles for a precise application.

VERSATILE USE – Suitable for all types of shoes including sneakers, boots, flats, and sandals, providing reliable slip protection on a variety of footwear.

COST-EFFECTIVE REPAIR – An affordable solution to prolong the life of your shoes by preventing further wear and tear, saving you money on replacements or professional repairs.

SPEC

Color: Black

Material: EVA

Length: 1m, 2m

Width: 40mm, 50mm, 60mm, 80mm, 100mm

Package Included: 1 * Anti-Slip Shoe Sole Protector

NOTES

Due to manual measurements, please allow slight measurement deviations.

Color may not appear as exactly as in real life due to variations between the computer monitors.

You May Also Like Don't Like These?

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.