12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls
 12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls

12PCS Christmas Tree Decor Ornament Gift Xmas Hanging Decoration Balls

$28.99
$38.99
-26%
Style-Red
Please select a style
Quantity
Trusted Brand
Quality Assurance
30 Days Hassle-free Return
FREE shipping on orders $59+
/** @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);

  • Material: Plastic
  • Size: Diameter 6 CM
  • Quantity:12 x hanging decoration balls

Features:

  • Made of high-quality plastic, it is not easy to damage and is durable.
  • Hanging decoration ball, you can hang it where you want to hang it.
  • Add a festive atmosphere to Christmas.
  • Lightweight and easy to carry.
  • Can be used as a Christmas gift for friends.
  • Suitable for Christmas decorations, Christmas tree decorations, etc.