DIY Smart LED Curtain Sync Lights

$85.99 $149.99 Save 43%
Size:  3.3*3.3 FT /(1*1m)
Quantity
Share the love
Free worldwide shipping
Free returns
Sustainably made
Secure payments
Description
Transform your space into a rhythmic light show! Mobile APP or remote control to customize the patterns, texts, GIFs, and screen effects, DIY the color, brightness and the dynamic scenes that move with the music. Suitable for parties, cozy nights and various festival events, bringing you a romantic and cool atmosphere.

😍Customize Your Own Curtain Lighting Show!✨

Transform your space into a rhythmic light show! Mobile APP or remote control to customize the patterns, texts, GIFs, and screen effects, DIY the color, brightness and the dynamic scenes that move with the music. Suitable for parties, cozy nights and various festival events, bringing you a romantic and cool atmosphere.

400 LED lamp beads, 228 static + dynamic patterns can be switched at any time, and you can control the display speed, brightness color or display position, etc, upload your own patterns and gifs, text the word. The more interesting is you can also convert static images into dynamic images! Come and unlock millions of customized decor lighting gameplay!

Millions of Customization 💡

400 LED lamp beads, 228 static + dynamic patterns can be switched at any time, and you can control the display speed, brightness color or display position, etc, upload your own patterns and gifs, text the word. The more interesting is you can also convert static images into dynamic images! Come and unlock millions of customized decor lighting gameplay!

Our curtain lights can also set the rhythm of the dynamic display of music-synchronized LED lights. Easily adjust the lights to match the beat of your favorite music, creating a lively, energetic atmosphere. It is such a must-have decoration for all parties, dances, and festivals!

🎵Music Sync LED Lights

Our curtain lights can also set the rhythm of the dynamic display of music-synchronized LED lights. Easily adjust the lights to match the beat of your favorite music, creating a lively, energetic atmosphere. It is such a must-have decoration for all parties, dances, and festivals!

Up to 8 sets of curtain Lights can be controlled at the same time in GIF or static display. Compared with other traditional decorative lights, it is more energy-saving and safer, suitable for long-term use.

APP "GROUP CONTROL"+ Remote Control

Up to 8 sets of curtain Lights can be controlled at the same time in GIF or static display. Compared with other traditional decorative lights, it is more energy-saving and safer, suitable for long-term use.

100% waterproof curtain lights can withstand heavy rain and snow (the USB has to keep in a dry place). iToolMax Curtain Lights are perfect for indoor and outdoor decoration: home, party, bedroom, window, patio, garden, arch, Christmas tree, backyard, deck, office building, bar, Music festival etc.

IP65 Waterproof

100% waterproof curtain lights can withstand heavy rain and snow (the USB has to keep in a dry place).
iToolMax Curtain Lights are perfect for indoor and outdoor decoration: home, party, bedroom, window, patio, garden, arch, Christmas tree, backyard, deck, office building, bar, Music festival etc.

Customize Your Own Unique Atmosphere

Whether you want to use it to express your love for Valentine's Day, enhance the ambience of your living room, brighten your outdoor patio, or create a gaming paradise, we have you covered.

Whether you want to use it to express your love for Valentine's Day, enhance the ambience of your living room, brighten your outdoor patio, or create a gaming paradise, we have you covered.

Whether you want to use it to express your love for Valentine's Day, enhance the ambience of your living room, brighten your outdoor patio, or create a gaming paradise, we have you covered.

Whether you want to use it to express your love for Valentine's Day, enhance the ambience of your living room, brighten your outdoor patio, or create a gaming paradise, we have you covered.

Timing and Dimmable Functions

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.