Photo Frame Hanging Tool

people are viewing this right now
Shipping
Estimated Delivery:Dec-13 - Dec-21
$25.99
$35.99
-$10.00
Type- PICTURE HANGING TOOL
Qunantity- 1PCS
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);
Description

MAIN FEATURES

✅ Multi-Function
✅ Quickly Accurately for Marking & Installation
✅ Easy to Use
✅ Wide Application

 

DESCRIPTION

  • ✨Multifunctional Hanging Ruler✨
    Picture frame hanging ruler is ideal for hanging pictures, photo frames, mirrors to help you mark the exact position and level it. 
  • ✨Quickly Accurate Marking & Installation✨
    Level ruler with built-in nails to mark exactly the position you need to avoid mistake holes and scratches.
  • ✨Easy to Use✨
    No need to debug too much, no more measuring, saving time, and is perfectly placed in seconds. 
  • ✨Wide Application✨
    It is suitable for all wall materials, perfect to hang pictures, frames, mirrors, clocks, plates, degree plaques.

 

Usage Scenarios

  • It has rubber cushions on the back to protect your walls from scratches.

Using Methods

 

Specification

Materials
  • ABS
Product Size
  • 35CM × 9CM × 5CM
Product Weight
  • 113g
Package Contents
  • Option 1: 1 * Picture Hanging Tool
  • Option 2: 1 * Picture Hanging Tool + 1 * Set of Picture Hanging Accessories

Accessories Box Includes:

  • 6pcs: 1- 1/2" Sawtooth Hook
  • 6pcs: 50lb Picture Hook.
  • 7pcs: 30lb Picture Hook
  • 12pcs: 10lb Picture Hook
  • 10pcs: Screw eye
  • 6pcs: 1-1/2"Half round head nail
  • 37pcs: 1" Half round head nail
  • 15pcs: 1/2" Half round head nail
  • 1pc: 3.3Ft lron wire

Note

  • Due to the different display and lighting effects, the actual color of the item may be slightly different from the color displayed in the picture.
  • Be careful not to nails your hand. Do not let children under 10 touch them to avoid unnecessary injuries!
可展开列表

FREQUENTLY ASKED QUESTIONS

WHAT PRODUCTS DOES CAIPCMALL OFFER? +

We offer a wide variety of products, from fashionable clothing, comfortable and durable household items, to high-quality electronic products and exquisite accessories, we can meet your needs.

HOW LONG DOES SHIPPING TAKE? +

Worldwide delivery usually takes 14-30 business days.

CAN I RETURN MY ORDER? +

Yes, we offer a 14-day return guarantee. Not satisfied? Simply send the product back.

WHICH SHIPPING SERVICE PROVIDER WILL DELIVER MY ORDER? +

The choice of shipping provider depends on the size, weight and TVP of the product. You can use the tracking number we provide in the shipping confirmation to find out which service provider will deliver your order. Our partners are: DHL, Hermes and DPD.

You may also like