🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
1/7
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
🔥Waterproof Wi-Fi Bluetooth Smart LED Light
1/7

🔥Waterproof Wi-Fi Bluetooth Smart LED Light

$22.99
$44.99
Save $22.00
It's been recommended by 683 people on Facebook, Twitter and Instagram
Lenght
Please select a lenght
Quantity
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);
Weight: 0kg
Barcode:

Smart Permanent Outdoor Lights

Multiple lighting effects

Our lights contain independent control chip which allow individual segments to display multiple colors at the same time. Bring you an excellent color experience.

undefined

undefined

DIY Your lighting effects

Our smart outdoor lights contain independent control chip which allow individual segments to display multiple colors at the same time. Outdoor strip light brings you an excellent color experience.

undefined

Smart app control

Discover a library of convenient and exciting features for your outdoor lights with the  App. Adjust your brightness color saturation effects and more with a simple tap.

undefined

undefined

Multiple app functions

The App allows to fully personalize your strip lights. Choose from 16+ million color options sync the lights with your favorite audio with music mode .

undefined

IP44 water resistance

Warm Tip: Dear buyer due to the lighting effect monitor's brightness manual measurement etc. there could be some slight differences in the color and size between the photo and the actual item. Sincerely hope that you can understand! Thank you!

undefined

Real Customer Reviews:

Our Guarantee

We truly believe that we provide some of the most unique and innovating products available in the world. Although buying products online can be a daunting task, please realize that there is ZERO risk when buying from us.

Our products come with our 100% Happiness Guarentee. If you're not happy we'll make it right. Your satisfaction is our ultimate goal.

Men's Wear