🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
1/4
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO
1/4

🔥Christmas Crazy Sale🔥 Luminous Rope Propeller EVO

$39.00
$60.00
Save $21.00
BUNDLE & SAVE
Please select a bundle & save
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);

😍 96.9% Of Customers Buy 2 Or More 😍

MADE FOR EVERYONE.

An unmatched design and powerful technology creates a mind-blowing effect you haven't seen anywhere else. The perfect toy, made for everyone.

UNLIMITED TRICKS

UNLIMITED FUN.

New moves are being discovered every day. Which will you discover?

YOUR OWN LIGHTSHOW.

GLOW IN THE DARK.

BUILT IN, BABY.

Our GlowTech™ UV-Reactive string and built-in UV-Blacklight look like magic at night. The perfect sidekick for concerts, raves, and music festivals.

STRING + TECH + PHYSICS = OMG

Setup Is Simple:

Step 1: Choose Your String

Step 2: Insert Your String Into The Rope propeller

Step 3: Turn It On!

The Rope propeller is easy to use, yet has limitless patterns and tricks to discover.

  • HyperTorque™ Dual Motors: Safely shoots glowing string at over 40 MPH through the air, creating a stunning levitation effect.
  • Built-In UV Blacklight: A built-in 395nm wavelength blacklight illuminates your string, allowing you to seemingly break physics and bend light.
  • TouchAdjust™ Control Wheel: Electronic speed controls give you the power to adjust string speed and behavior.
  • USB-C QuickCharge: 1 hour charge time for all day regular use.

  • Although the string is shooting out at over 35 miles per hour, it's actually completely safe to touch. Our intelligent power cutoff feature automatically shuts off the motors if there's a tangle or anything else that shouldn't be in between the wheels. And our strings are designed to break under tension. We've had thousands of parents get the Luminous Rope Propeller as a gift with no worries. But like anything when it comes to small children, we recommend parental supervision.

GET YOURS WORRY-FREE

90-DAY MONEY-BACK GUARANTEE

2nd

We’d be shocked if you didn’t absolutely love the Luminous Rope Propeller. But in the highly unlikely event that you’re not happy in any way — we’ll give you every cent back. No hassle. No hoops to jump through.

You’re protected by our 90-Day 100% Money-Back Guarantee. Contact us and we’ll return every dollar you paid.