Free shipping over $40
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
2 / 8
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
Car Rearview Mirror Mobile Phone Holder
44% OFF
Save $22.00
Delis666

Car Rearview Mirror Mobile Phone Holder

$27.99 $49.99
0 sold
Color
Style
Qty

MAIN FEATURES

  • ✔【NO MORE LOOKING DOWN】- The rear view mirror phone holder is mounted on the rearview mirror of your car. Rearview mirror phone holder for car can be freely adjusted to keep your eyes on the road. There is no need to look down at the navigation and you can enjoy a more comfortable and safer user experience.

           

  • ✔【ONE HAND OPERATION】- Our rearview mirror phone holder allows you to easily adjust your phone to landscape or portrait screen nearly through one hand while driving. The four-claw design of the rotatable and retractable car phone holder holds the phone firmly in place no matter how bumpy the road is.

          

  • ✔【360 DEGREE ROTATION ADJUSTMENT】- Rotatable retractable car phone holder with a 360° rotating structure, you can put your phone in any direction (horizontal, vertical, and more) and just enjoy the best driving experience. At the same time, the arm length can be telescoped 0-5cm, which will not block your view.

          

  • ✔【WIDE APPLICABILITY】- Universal car phone holder suitable for all mobile phones and all car models. You/people at the co-pilot can use the mirror phone holder to navigate, watch videos, make video calls, live stream, record videos, record driving records, and more. The rear view mirror phone holder with a simple design brings you a different user experience.

          

  • ✔【HIGH QUALITY-NO TRACE LEFT AFTER REMOVAL】- Our mirror phone holder for cars selected high-quality ABS material, mellow design, durability, and non-deformation. It is easy to install and remove, and it does not leave traces after removal. Unlike suction cups or sticky car phone holders, which are easy to hurt the dashboard or leave unsightly glue marks.

SPECIFICATIONS

  • Material: ABS
  • Weight: 250g

      Shipping:

      • Free Shipping Over $39.99.
      • Orders will be processed within 7 business days of ordering and shipped out the next day after the processing day. Orders will generally be delivered within 7 to 14 working days.

      Returns:Fast refund for any dissatisfaction within 15 days, 100% money-back guarantee.

      Note:

      • 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.
      /** @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-1711005325228').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);