Cash on Delivery to Japan,Taiwan HongKong and Singapore ,Free shipping over USD$59
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
11 / 12
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
Hook Mount Car Mobile Phone Bracket
You May Also Like Don't Like These?
mysite

Hook Mount Car Mobile Phone Bracket

$12.99 $24.99
0 sold
Color
Qty
Qty 1000 in stock

Stable and not shaking / Do not bow / Not deforming / Not falling
Use it for navigation! Hook mount car phone bracket you are definitely worth having.

FEATURES

  • NEVER FALL OFF: New spiral hook, strong and stable. The clamp arm adopts a curved groove design so that the phone grip is more stable, crazy can not be thrown off.

  • STABLE AND SAFE CAR PHONE BRACKET: Triangular force design, the phone can be firmly locked even in sudden braking, turning, and on bumpy roads, making driving safer.

 

  • 360° ROTATION ANGLE: The 360-degree rotatable head gives you the best viewing angle and enables you to quickly switch to any orientation you want.

 

  • ONE-HAND OPERATION: Slide the phone down the buckle, which is automatically locked, a put that is stable. One-handed pickup and release, driving without distraction.

  • ONE KEY TO ADJUSTING THE LENGTH: According to the size of the phone, press the button to adjust the long and short of the claw. It will not block the volume/power button and can be adapted to any mobile phone model.

Using Methods

    SPECIFICATIONS

    • Material: ABS

    • Color: Black

    • Weight: 110g

    • Size: 20 × 10 × 5cm / 7.9 × 3.9 × 2inches
                        PACKAGE
                        • 1 * Hook Mount Car Mobile Phone Bracket

                        NOTE

                        • Please allow slight measurement deviations due to manual measurement.

                        • Due to the different monitor and light effect, the actual color of the item might be slightly different from the color showed in the pictures

                        You May Also Like Don't Like These?
                        const TAG = 'spz-custom-painter-button-animation'; const MAX_ITERATION_COUNT = 99999999; const SITE = (window.C_SETTINGS && window.C_SETTINGS.routes && window.C_SETTINGS.routes.root) || ''; const ADD_TO_CART_ANIMATION_SETTING = `${SITE}/api/marketing_atmosphere_app/add_to_cart_btn_animation/setting`; class SpzCustomPainterButtonAnimation extends SPZ.BaseElement { /**@override */ static deferredMount() { return false; } /** @param {!SpzElement} element */ constructor(element) { super(element); /** @private {!../../src/service/xhr-impl.Xhr} */ this.xhr_ = SPZServices.xhrFor(this.win); /** @private {Object} */ this.data_ = null; /** @private {Element} */ this.addToCartButton_ = null; /** @private {boolean} */ this.productAvailable_ = true; /** @private {number} */ this.timerId_ = null; /** @private {number} */ this.animationExecutionCount_ = 0; /** @private {boolean} */ this.selectedVariantAvailable_ = true; /** @private {number} */ this.delay_ = 5000; /** @private {number} */ this.iterationCount_ = 5; /** @private {string} */ this.animationClass_ = ''; } /** @override */ isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } /** @override */ buildCallback() { this.productAvailable_ = this.element.hasAttribute('product-available'); this.selectedVariantAvailable_ = this.element.hasAttribute('selected-variant-available'); } /** @override */ mountCallback() { this.render_(); } /** @private */ render_() { if (!this.productAvailable_) { return; } this.fetch_().then((data) => { if (!data) { return; } this.data_ = data; this.animationClass_ = `painter-${data.animation_name}-animation`; this.iterationCount_ = data.animation_iteration_count === 'infinite' ? MAX_ITERATION_COUNT : data.animation_iteration_count; const animationDuration = 1; const animationDelay = data.animation_delay || 5; this.delay_ = (animationDuration + animationDelay) * 1000; this.handleButtonEffect_(); }); } /** * @param {JsonObject} data * @return {(null|Object)} * @private */ parseJson_(data) { try { return JSON.parse(data); } catch (e) { return null; } } /** * @return {Promise} * @private */ fetch_() { return this.xhr_.fetchJson(ADD_TO_CART_ANIMATION_SETTING).then((data) => { if (!data || !data.enabled) { return null; } return this.parseJson_(data.detail); }); } /** @private */ getAddToCartButton_() { this.addToCartButton_ = SPZCore.Dom.scopedQuerySelector( document.body, '[data-section-type="product"] [role="addToCart"], [data-section-type="product_detail"] [role="addToCart"], [data-section-type="product_detail"] [data-click="addToCart"], [data-section-type="product"] [data-click="addToCart"]' ); } /** @private */ restartAnimation_() { this.addToCartButton_.classList.remove(this.animationClass_); this.addToCartButton_./* OK */ offsetWidth; this.addToCartButton_.classList.add(this.animationClass_); this.animationExecutionCount_++; } /** @private */ clearTimer_() { this.win.clearInterval(this.timerId_); this.timerId_ = null; } /** @private */ setupTimer_() { this.timerId_ = this.win.setInterval(() => { this.restartAnimation_(); if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); this.clearTimer_(); } }, this.delay_); } /** @private */ restartTimer_() { if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); return; } this.setupTimer_(); } /** @private */ listenVariantChange_() { SPZUtils.Event.listen(self.document, 'dj.variantChange', (e) => { const selectedVariant = e.detail && e.detail.selected; if (!selectedVariant) { return; } const {available} = selectedVariant; if (this.selectedVariantAvailable_ !== available) { this.selectedVariantAvailable_ = available; this.clearTimer_(); if (available) { this.restartTimer_(); } } }); } /** @private */ removeAnimationClass_() { this.win.setTimeout(() => { this.addToCartButton_.classList.remove(this.animationClass_); }, 1000); } /** @private */ handleButtonEffect_() { this.getAddToCartButton_(); if (!this.addToCartButton_) { return; } if (this.selectedVariantAvailable_) { ++this.animationExecutionCount_; this.addToCartButton_.classList.add(this.animationClass_); if (this.iterationCount_ === 1) { this.removeAnimationClass_(); return; } this.setupTimer_(); } this.listenVariantChange_(); } } SPZ.defineElement(TAG, SpzCustomPainterButtonAnimation);