Personalized Spider Web Print Long Sleeve Hoodies

$9.98
$69.88
-$59.90
people are viewing this right now
Color:  Black
Size:  S
Quantity
🎉 The More You Buy, The More You Save 4

🛍 Buy More, Save More:

Buy 2, get 20% OFF

Buy 3, get 30% OFF

Buy 4 or more, enjoy even deeper !🎁

/** @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

Description

Description

Description

  • Occasion : Street , Outdoors
  • Design : Kangaroo Pocket
  • Season : Summer , Autumn , Winter , Spring
  • Sleeve Length : Long Sleeve
  • Style : Street , Casual , Basics
  • Pattern Type : Print
  • Color : Black

Size Chart

cm
SizeSMLXL2XL
Shoulder4446485052
Bust105109113117121
Length6970717273
Sleeve Length5556575859
inch
Size inchSMLXL2XL
Shoulder17.318.118.919.720.5
Bust41.342.944.546.147.6
Length27.227.628.028.328.7
Sleeve Length21.722.022.422.823.2

Delivery Time

FREE SHIPPING ON ORDERS $100 AND UP!
All our garments are handcrafted one by one at the time of order, this to guarantee you a better quality product at the best price.

We do our best to process orders as quickly as possible but our working method can sometimes be slower than many other stores, so if you think of buying from us expecting the speed of Amazon or similar, don't buy, you might be left disappointed...聽

The average production time are聽15-20 days聽and an additional聽5-9 days聽for shipping but may vary depending on the periods and volume of orders (e.g. Black Friday, Christmas, sales or particular promotions on our part) in this case the times can be longer and in rare cases even exceed the calendar month.聽

ATTENTION:

1. In case of delays or non-availability of the product, no communication will be sent, the customer purchases the goods aware of the timing written above.

2. For logistical reasons, some items purchased in the same order may need to be sent in separate packages. This means you may not receive all your products in one package.

3.聽Prices displayed on the website do not include duties or taxes. Depending on where you live, your country's customs office may impose a few additional charges on your order: import fees, declaration fees, import duties (tariffs), or taxes.

If there is any shipping issue with your package, you can contact us atservice@growlxx.comafter your order was placed.

Return & Exchange

Thank you for shopping at聽growlxx.com

If you are not entirely satisfied with your purchase, we're here to help.

We have a 30-day return policy, which means you have 30 days after receiving your item to request a return.

To be eligible for a return, your item must be in the same condition that you received it, unworn or unused, with tags, and in its original packaging. You'll also need the receipt or proof of purchase.

Products that do not meet these criteria will not be considered for return. To return the products, please submit items change request to customer service via service@growlxx.com. Most returns are processed within 5 business days after we receive your package. We鈥檒l issue the refund to your wallet in amount of few days if we are not otherwise informed to refund to your payment account in advance. Wallet balance can be used on your next purchase or be withdrawn to your payment account. Once your refund has been issued, you will receive a confirmation email. We do not accept any request of exchange&return once the "specials" are sold.

Damages and Issues

Please inspect your order upon receipt and contact us immediately if the item is defective, damaged, or if you receive the wrong item, so that we may evaluate the issue and make it right.

Certain types of items cannot be returned, like perishable goods (such as food, flowers, or plants), custom products (such as special orders or personalized items), and personal care goods (such as beauty products). We also do not accept returns for hazardous materials, flammable liquids, or gases. Please get in touch if you have questions or concerns about your specific item.

Unfortunately, we cannot accept returns on sale items or gift cards.

Order Cancellation

We offer full refund if the order is cancelled within 24 hours of your purchase. You should submit an order cancellation request to our customer service via聽service@growlxx.comonce you decide to cancel the order. For orders canceled after 24 hours of purchase but have not been shipped, we will offer partial refund after charging a 15% cancellation fee. We will NOT accept order cancellation requests if the orders have been shipped.

Refunds

We will notify you once we鈥檝e received and inspected your return to let you know if the refund was approved or not. If approved, you鈥檒l be automatically refunded on your original payment method within 10 business days. Please remember it can take some time for your bank or credit card company to process and post the refund too.

  • 1. Size Issues:

    • We do not offer refunds or exchanges for incorrect sizing. Each product is uniquely crafted to fit the specifications provided by the customer at the time of order. Please double-check your sizing information before completing your purchase.

    2. Damaged or Incorrect Products:

    • In the rare event that you receive a damaged product or one with an incorrect design, we are happy to process a refund. Please contact our customer support team within聽10 days of receiving your order, providing clear photos of the damaged item or the design discrepancy. We will work swiftly to address the issue.

    3. Immediate Production:

    • Once an order is placed, it is immediately sent to production to ensure timely delivery. Due to this, we are unable to accommodate refunds or cancellations once an order has been confirmed. Please review your order carefully before finalizing the purchase.

    4. Lost in Transit:

    • We are not responsible for packages lost in transit. If your tracking information indicates that your order has been delivered, but you have not received it, please contact the shipping company directly to file a claim. We recommend reaching out to them as soon as possible.

    Contact Information:

    • For all refund-related inquiries or to report damaged/incorrect products, please contact ourcustomer support team service@growlxx.com.

    Note:

    • Our refund policy is subject to change without notice. It is the responsibility of the customer to review this policy periodically.

Q&A

ORDERS
 
WHERE CAN I FIND MY TRACKING NUMBER?
All tracking will be available once the item arrives in the destination country! Once the item arrives we will be able to update you with the tracking number.
 
 
 
THERE’S SOMETHING WRONG WITH MY ORDER.
Please email us or message us on Facebook for the quickest reply!
  
HOW LONG DOES IT TAKE FOR A RETURN/EXCHANGE TO BE COMPLETED?
We typically process returns/exchanges within 48 hours upon receiving your package.
 
INTERNATIONAL CUSTOMERS
 
WHY ISN’T THIS PRODUCT AVAILABLE TO SHIP TO MY COUNTRY?
Due to our licensing agreements, some of our licensed products are limited to select countries.
 
DO YOU SHIP INTERNATIONALLY?
We currently ship to over 50 countries!
 
HOW LONG WILL MY ORDER TAKE TO ARRIVE?
Shipping times vary depending on your country of residence and the shipping method you select.
 
WILL I NEED TO PAY DUTIES AND TAXES?
You may be required to pay duties and taxes depending on the laws of your country of residence.
 
RETURNS & EXCHANGES
 
HOW DO I RETURN/EXCHANGE AN ITEM?
RETURN POLICY

We want you to fall in love with your purchase and we continually strive to deliver the highest quality products possible. If for some reason, you are not completely satisfied with your purchase, you may return it for REFUND or EXCHANGE it for another style within 30 days of receiving your order.

Merchandise must be returned within 30 days of receipt.
Merchandise must be unworn and unwashed.
Merchandise must have all original tags attached.
Any merchandise purchased at discount or on sale cannot be returned.
Customers may begin the return process by contacting us at service@nanoarke.com, stating reason for return.

RETURNS/EXCHANGES

Exchanges and returns for store credit will be processed free of charge. Returns for a refund to your original payment method (i.e. credit card, Paypal) will require a handling & processing fee of $5.99, which will be deducted from the amount to be refunded. Original shipping charges are non-refundable.

To begin your return or exchange, please contact us at service@nanoarke.com

To return or exchange an item please follow the steps below:

Include a copy of the packing slip or confirmation email from your order and note the new size or item desired. (We cannot guarantee all items and sizes will be in stock for exchanges.)
Mail your return to address provided to you via email.
Once your return is received, your new item(s) will be shipped out at no additional cost or we will issue your refund.

REFUNDS

Refunds will be processed within approximately 3 to 7 business days after we receive your return.
Original shipping charges are non-refundable.
Import duties/taxes and customs fees are non-refundable.
All refunds are subject to a $5.99 processing & handling fee, which will be deducted from your refund amount.


Thank you for your understanding and continued support. We love, and appreciate each and every one of you.
 
  Team

Shipping Info

SHIPPING METHODS & CHARGES

Your order will be shipped to the specified address according to the shipping method selected during checkout: 

Method Shipping Time Frame  Price
Order $39+  5-12 business days (excluding processing time) Free
VIP Free Shipping 5-10 business days (excluding processing time) Free
Standard Shipping 5-12 business days (excluding processing time) $6.99
Expedited shipping 3-5 business days (excluding processing time) $12.99
 
 
 
PLEASE NOTE:
The shipping time frame does not include production time.

Please keep in mind that the estimated shipping time frames are impacted by your selected shipping method, and does not account for delays caused by vendors or service and weather disruptions.
All MyNameNecklace products are personalized. Some items have longer production days than others. These details can be found on the product pages and throughout the checkout process.

PLEASE NOTE:
All our packages are fully insured and shipping time frames described above applies to orders shipped within the continental United States. The time frames mentioned above for shipping include production time. 
Express shipments require a customer signature upon delivery.
 

Even if you live outside of the country, don’t fret! We also provide free international shipping to many countries. 
Each customer is responsible for any customs charges that may be applied to international shipments. MyNameNecklace has no control over these charges and is not responsible for any actions taken by customs or delivery services.

ADDRESS INFORMATION

Please note that it is the customer's responsibility to provide us with a correct and complete shipping address. 
If your shipping address is different from your billing address, please specify this during checkout.

SHIPPING NOTIFICATION

When your order ships, you will receive a Shipping Notification email. 
This email will provide you with your order ID to track your item as it makes its way to you, as well as the date your order was shipped.

ESTIMATED SHIPPING

The estimated Shipping date is based on the selected shipping method.Shipping dates are based on business days and they do not include weekends and holidays
Please note that special orders may have a longer processing and manufacturing time frame.

OUR GUARANTEE

  • 100% Money Back Guarantee.
  • Fast Shipping.
  • Guaranteed safe and secure checkout via: Paypal | VISA | MASTERCARD
  • We take pride in our products as we believe they are amazing. However, we understand that buying things online can be daunting, especially for the first time, so we offer a 100% satisfaction 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.

class SpzSmartBlockComponent extends SPZ.BaseElement { constructor(element) { super(element); this.templates_ = null; this.container_ = null; this.i18n_ = {}; this.config_ = {}; this.show_type_ = 3; this.product_resource_id_ = ''; this.collection_resource_id_ = ''; this.cart_items_ = []; this.customer_id_ = ''; this.order_id_ = ''; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { const template_type = window.SHOPLAZZA.meta.page.template_type; if (template_type === 1) { this.show_type_ = 3; this.product_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 2) { this.show_type_ = 4; this.collection_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 15){ this.show_type_ = 5; } else if (template_type === 13){ this.show_type_ = 6; } else if (template_type === 20){ this.show_type_ = 7; this.customer_id_ = window.SHOPLAZZA.customer.customer_id; } else if (template_type === 35){ this.show_type_ = 8; this.order_id_ = window.location.pathname.split('/').pop(); } this.templates_ = SPZServices.templatesForDoc(this.element); this.setAction_(); } mountCallback() { console.log('appzebu smart mounted'); const that = this; const themeName = window.SHOPLAZZA.theme.merchant_theme_name; const isGeek = /Geek/.test(themeName); this.fetchRules().then((res) => { if (res && res.rules && res.rules.length) { const blockEl = document.getElementById('smart_recommend_block'); SPZ.whenApiDefined(blockEl).then((api) => { api.render({data: res}, true).then(() => { if (isGeek && that.show_type_ === 6) { blockEl.querySelector('.plugin_container_wrpper').style.padding = '30px 0'; } const recommendStyle = document.createElement('style'); recommendStyle.innerHTML = ` .plugin__recommend_container,.app-recommend-card { display: none !important; } `; document.head.appendChild(recommendStyle); const fetchList = []; res.rules.forEach((rule) => { fetchList.push(this.fetchRuleProductList(rule.id)); }); const fetchAll = Promise.all(fetchList); fetchAll.then((p_res) => { res.rules.forEach((rule, index) => { rule.products = p_res[index] && p_res[index].products; const ruleEl = document.getElementById('smart_recommend_rule_' + rule.id); SPZ.whenApiDefined(ruleEl).then((api) => { api.render({data: rule}, true).then(() => { that.impressListen(`#smart_recommend_rule_ul_${rule.id}`, function(){ that.trackRuleImpress(rule); }); const btnElList = document.querySelectorAll(`#smart_recommend_rule_ul_${rule.id} button`); btnElList.forEach((btnEl) => { if (btnEl && rule.config && rule.config.quick_shop_button_bg_color && rule.config.quick_shop_button_text_color) { btnEl.style.backgroundColor = rule.config.quick_shop_button_bg_color; btnEl.style.color = rule.config.quick_shop_button_text_color; } }) }); }); }); }); }) }) } else { if (window.top !== window.self) { const template_type = window.SHOPLAZZA.meta.page.template_type; const holderEl = document.getElementById('smart_recommend_preview_no_data_placeholder'); SPZ.whenApiDefined(holderEl).then((api) => { api.render({data: { isCart: template_type === 13, isCollection: template_type === 2, isProduct: template_type === 1, isIndex: template_type === 15 }}, true); }); } } }); } setAction_() { this.registerAction('quickShop', (data) => { const that = this; const product_id = data.args.product_id; const productIndex = data.args.productIndex; const rule_id = data.args.rule_id; const ssp = data.args.ssp; const scm = data.args.scm; const cfb = data.args.cfb; const ifb = data.args.ifb; const modalRender = document.getElementById('smart_recommend_product_modal_render'); if (product_id) { this.fetchProductData(product_id).then((res) => { const product = res.products && res.products.length && res.products[0] || {}; product.cfb = cfb; product.ifb = ifb; SPZ.whenApiDefined(modalRender).then((api) => { api.render({product: product, productIndex: productIndex, rule_id: rule_id, ssp: ssp, scm: scm, show_type: that.show_type_}, true).then(() => { const modalEl = document.getElementById('smart_recommend_product_modal'); SPZ.whenApiDefined(modalEl).then((modal) => { that.impressListen('#smart_recommend_product_modal', function(){ that.trackQuickShop({ rule_id: rule_id, product_id: product_id }); }); modal.open(); }); const formEl = document.getElementById('smart_recommend_product_form'); SPZ.whenApiDefined(formEl).then((form) => { form.setProduct(product); }); const variantEl = document.getElementById('smart_recommend_product_variants'); SPZ.whenApiDefined(variantEl).then((variant) => { variant.handleRender(product); }); }); }) }); } }); this.registerAction('handleScroll', (data) => { this.directTo(data.args.rule_id, data.args.direction); }); this.registerAction('handleProductChange', (data) => { const variant = data.args.data.variant; const product = data.args.data.product; const imageRenderEl = document.getElementById('smart_recommend_product_image'); SPZ.whenApiDefined(imageRenderEl).then((api) => { api.render({ variant: variant, product: product }); }); }); this.registerAction('handleAtcSuccess', (detail) => { const data = detail.args; data.data.product = data.data.product || {}; data.data.variant = data.data.variant || {}; const product_id = data.data.product.id; const product_title = data.data.product.title; const variant_id = data.data.variant.id; const price = data.data.variant.price; const rule_id = data.rule_id; const aid = `smart_recommend.${this.show_type_}.${rule_id}`; const ifb = data.data.product.ifb; const cfb = data.data.product.cfb; const ssp = data.ssp; const scm = data.scm; const spm = `smart_recommend_${this.show_type_}.${data.spmIndex}`; const params = { id: product_id, product_id: product_id, number: 1, name: product_title, variant_id: variant_id, childrenId: variant_id, item_price: price, source: 'add_to_cart', _extra: { aid: aid, ifb: ifb, cfb: cfb, scm: scm, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, ssp: ssp, } }; this.tranckAddToCart(params); }); this.registerAction('addATCHook', (data) => { const params = data.args; const spm = `smart_recommend_${this.show_type_}.${params.spmIndex}`; this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({ event: 'dj.addToCart', params: { aid: `smart_recommend.${this.show_type_}.` + params.rule_id, ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, }, once: true }); }); } tranckAddToCart(detail) { if (window.$) { window.$(document.body).trigger('dj.addToCart', detail); } } fetchRules() { const payload = { show_type: this.show_type_, }; let that = this; if (this.show_type_ === 6) { let line_items = []; return this.fetchCart().then((res) => { if (res && res.cart && res.cart.line_items) { line_items = res.cart.line_items.map((item) => { return { product_id: item.product_id, variant_id: item.variant_id, quantity: item.quantity, price: item.price } }); } payload.line_items = line_items; that.cart_items_ = line_items; return that.fetchRulesRequest(payload); }); } else { if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return this.fetchRulesRequest(payload); } } fetchRulesRequest(payload) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_query", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }); } fetchCart() { return fetch(`/api/cart/cart-select?r=${Math.random().toString(36).slice(-4)}`) .then((res) => { if (res.ok) { return res.json(); } }); } fetchRuleProductList(rule_id) { const payload = { page: 1, limit: 100, fields: ["title", "url", "image", "min_price_variant.price", "min_price_variant.compare_at_price"], rule_id: rule_id, }; if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 6) { payload.line_items = this.cart_items_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); }); } fetchProductData(product_id) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ product_ids: [product_id], fields: [ "images", "options", "min_price_variant", "variants"] }) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); const loadingEl = document.getElementById('smart_recommend_loading'); if (loadingEl) { loadingEl.style.display = 'none'; } }); } getStyle(ele, style) { if (!ele) return; if (window.getComputedStyle) { return window.getComputedStyle(ele)[style]; } return ele.currentStyle[style]; } directTo(id, direction) { const scrollElement = document.getElementById(`smart_recommend_rule_ul_${id}`); const blockWidth = parseInt(this.getStyle(scrollElement, 'width')); const scrollLength = (blockWidth * 0.19 - 12) * 5; const scrollPoint = scrollElement.scrollWidth - scrollElement.clientWidth; if (!scrollElement) return; if (direction === 'left') { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft - scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: Math.max(scrollElement.scrollLeft - scrollLength, 0), behavior: 'smooth' }); } else { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint + 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: scrollElement.scrollLeft >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); } } trackRuleImpress(rule) { if (window.sa && window.sa.track) { window.sa.track("plugin_common", { plugin_name: "upsell", event_type: "impressions", rule_id: rule.id, ssp: rule.ssp, scm: rule.scm, show_type: this.show_type_, support_app_block: window.SHOPLAZZA.theme.support_app_block }); window.sa.track("module_impressions", { aid: `smart_recommend.${this.show_type_}.${rule.id}`, support_app_block: window.SHOPLAZZA.theme.support_app_block }); } } trackQuickShop(data) { window.sa && sa.track && sa.track("plugin_common", { plugin_name: "upsell", event_type: "quick_shop", rule_id: data.rule_id, product_id: data.product_id, show_type: this.show_type_, }); } impressListen(selector, cb) { const el = document.querySelector(selector); const onImpress = (e) => { if (e) { e.stopPropagation(); } cb(); }; if (el && !el.getAttribute('imprsd')) { el.addEventListener('impress', onImpress) } else if (el) { onImpress(); } } } SPZ.defineElement('spz-custom-smart-block', SpzSmartBlockComponent);

Sign up and save

Subscribe to get special offers, free giveaways, and once-in-a-lifetime deals.