Buckle and Data Cable Storage
Buckle and Data Cable Storage

Buckle and Data Cable Storage

$9.99 $15.99 Save $6.00
Color:  Black 3 pack
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-1651799308132').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);
Free worldwide shipping
Fast shipping
Sustainably made
Secure payments
Share the love
Description

About This Item
1、Minimalist Design — Suitable for a wide variety of settings, including offices, homes, bedrooms, kitchens, desks, nightstands, gaming consoles, cars, and more. Say goodbye to tangled cables, keep your desktop clutter-free, manage cords with ease, and enhance the aesthetic appeal of your workspace.
2、360° Rotatable Design — This spring-loaded cable organizer features a full 360° rotation capability, allowing you to easily swivel or adjust the position of your cables, charging cords, or other wires without the need to detach or remount the clip. Ideal for desktop cable management, nightstand organization, and kitchen appliance cord storage, this organizer offers a practical and flexible solution to keep your cables neat, tidy, and always within easy reach.
3、Spring-Lock Mechanism — This cable clip utilizes a spring-loaded opening mechanism combined with a 90° rotating axis, allowing you to effortlessly add or remove cables with just one hand! With a quick, one-second spring-lock action, your cables snap securely into place, staying perfectly organized and tidy.
4、Strong, Residue-Free Adhesive — Our upgraded, high-strength acrylic adhesive bonds firmly to almost any clean, flat surface—such as wood, glass, metal, tile, or marble—without causing damage or leaving behind any sticky residue. The product also includes a spare adhesive pad, ensuring you can easily reuse the cable organizer whenever needed.
Effortless Installation and Use — Simply clean the target surface, attach the clip, and let it sit for 30 minutes to allow the adhesive to cure. No tools required—it’s quick, easy, and convenient! The spring-clip design allows for effortless, one-handed cable insertion and removal, making cable organization a fast and hassle-free task.