Multifunctional Portable Wireless Massager
Multifunctional Portable Wireless Massager
Multifunctional Portable Wireless Massager
Multifunctional Portable Wireless Massager
Multifunctional Portable Wireless Massager
Multifunctional Portable Wireless Massager
Multifunctional Portable Wireless Massager
Multifunctional Portable Wireless Massager
Multifunctional Portable Wireless Massager
Multifunctional Portable Wireless Massager

Multifunctional Portable Wireless Massager

Price
$106.98
$59.98
Save  $47.00
Power Supply
Please select a power supply
Color
Please select a color
Quantity
Worldwide shipping
Free returns
24/7 customer support
Secure payments

 Release the stress of  life!!

It can relieve your fatigue from working all day, and it can also relax the muscles that are tense after exercise.

Why choose us

Convenient and wireless

 We provide wireless styles so that you can awaken the vitality of your shoulders and neck anytime and anywhere to release the stress of life. Whether you are on the sofa at home or in the travel car, you can use it.

Imitation manual massage

 This massager can imitate the posture and intensity of the manual massage, bringing you the most comfortable relaxation experience.

Constant-temperature hot compress

 It has a 42° hot compress function. Hot compresses can effectively promote blood circulation and eliminate muscle fatigue. In the winter, it can give you a warm massage experience.

Adjustable direction and intensity

 Gentle mode is suitable for students and the elderly to relax their muscles. Strong mode is suitable for office workers and fitness people to eliminate fatigue.

2600mAh large-capacity lithium battery

 it can work five times when fully charged for 15 minutes each time.

Skin-friendly and breathable material

 We chose a high-resilience memory foam, which is very soft. The surface is made of POM material, which is wear-resistant and breathable.

Timing function

 This massager comes with a 15-minute timing function to give you the perfect massage experience.

Specification

Applicable parts: head, neck, waist,

Power supply method: battery supply/cable supply

Rated voltage: 12.6V

Rated power: 25W

Size: 350*120*185MM

Package Includes:1* Multifunctional Portable Massager

Notes

Do not use the massager if you have any skin conditions or allergies.

 

Do not use the massager for more than 20 minutes at a time.

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.