Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder
Multifunctional 360 Degree Rotatable Car Phone Holder

Multifunctional 360 Degree Rotatable Car Phone Holder

268 sold
$25.98
$32.00
-19%
Color-Gray
Please select a color
Buy More Save More-Buy 1
Please select a buy more save more
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);
Free worldwide shipping
Free returns
Sustainably made
Secure payments

KEEP FOCUS ON THE ROAD & DRIVE SAFELY

Maintain a steady grip on your device while driving, whether you’re using GPS, chatting, navigating, listening to music, or charging.

STURDY & STABLE

The power gripper and the skid-proof paddings keep your phone sturdy & stable. Anti-shake, supports sturdy mounting, not falling off even in turns, bumps, brakes or fast speed. 

360 DEGREE ROTATION

The 360-degree rotating design allows you to adjust your phone to the optimal viewing angle.

MULTIPLE USES

Apart from using it in cars, you can also use it in classrooms, kitchens, or any place to meet your needs for work, study, and entertainment.

EASY TO INSTALL

Strong clip securely attaches & one-hand accessible phone clip makes it easy to insert or remove mobile phones without falling off.


Specifications

  • Material: ABS

  • Dimensions: 2.6 x 5.5 x 14.6cm /  1 x 2.2 x 5.7in



Care instructions

  • Store In A Cool, Dry Place.

  • Gently Wipe To Remove Dust. 

PACKAGE INCLUDES:

  1 x  4 Layers Automatic Rolling Egg Holder Rack

Notes

  • Due to manual measurements, please allow slight measurement deviations.
  • Due to the different display and lighting effects, the actual color of the item may be slightly different from the color displayed on the picture.

100% GUARANTEE: If you think the size is not suitable for you, or the quality is not good enough, please just contact us, and we will make a partial or full refund back to you depending on the situation.


OUR GUARANTEE

  • We truly believe we carry some of the most innovative products in the world, and we want to make sure we back that up with a risk-free ironclad 60 days guarantee.
  • If you don't have a positive experience for ANY reason, we will do WHATEVER it takes to make sure you are 100% satisfied with your purchase.
  • Buying items online can be a daunting task, so we want you to realize that there are absolutely ZERO risks in buying something and trying it out. If you don't like it, no hard feelings we'll make it right.
  • We have 24/7/365 Ticket and Email Support. Please contact us if you need assistance.