lace up heels

1140 Products
Filter
  • Reset
  • The highest price is 155
    $
    $
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
Filter
  • Price
  • Color
  • Platform
  • Heel Type
  • Season
    Price
  • The highest price is 155
    $
    $
    Color
    Platform
    Heel Type
    Season
Green Velvet Chunky Heel Sandals Criss-Cross Strappy Bridal Shoes Nicepairs Green Velvet Chunky Heel Sandals Criss-Cross Strappy Bridal Shoes Nicepairs

Green Velvet Chunky Heel Sandals Criss-Cross Strappy Bridal Shoes

$105.00
Add to cart
Light Pink Heeled Ankle Tie Bridal Shoes with Pearl Flower Decor Nicepairs Light Pink Heeled Ankle Tie Bridal Shoes with Pearl Flower Decor Nicepairs

Light Pink Heeled Ankle Tie Bridal Shoes with Pearl Flower Decor

$112.00
Add to cart
Elegant White Bridal Shoes Peep Toe T-Strap Heeled Sandals Nicepairs Elegant White Bridal Shoes Peep Toe T-Strap Heeled Sandals Nicepairs

Elegant White Bridal Shoes Peep Toe T-Strap Heeled Sandals

$100.00
Add to cart
Black Rounded Toe Block Heel Gladiator Sandals with Platform Nicepairs Black Rounded Toe Block Heel Gladiator Sandals with Platform Nicepairs

Black Rounded Toe Block Heel Gladiator Sandals with Platform

$135.00
Add to cart
Royal Blue Satin Ankle Strap Heels Open Toe Sequin Platform Sandals Nicepairs Royal Blue Satin Ankle Strap Heels Open Toe Sequin Platform Sandals Nicepairs

Royal Blue Satin Ankle Strap Heels Open Toe Sequin Platform Sandals

$120.00
Add to cart
Ivory Low Chunky Heel Wedding Shoes Ankle Strap Floral Pearl Sandals Nicepairs Ivory Low Chunky Heel Wedding Shoes Ankle Strap Floral Pearl Sandals Nicepairs

Ivory Low Chunky Heel Wedding Shoes Ankle Strap Floral Pearl Sandals

$112.00
Add to cart
Red & Gold Glitter Sparkling Heels Ankle Strap Platform Sandals Nicepairs

Red & Gold Glitter Sparkling Heels Ankle Strap Platform Sandals

$115.00
Add to cart
Purple Faux Suede Kitten Heels Open Toe Ankle Strap Floral Sandals Nicepairs Purple Faux Suede Kitten Heels Open Toe Ankle Strap Floral Sandals Nicepairs

Purple Faux Suede Kitten Heels Open Toe Ankle Strap Floral Sandals

$115.00
Add to cart
Elegant Red Vegan Leather Rose Lace-Up Sandals with Stiletto Heels Nicepairs Elegant Red Vegan Leather Rose Lace-Up Sandals with Stiletto Heels Nicepairs

Elegant Red Vegan Leather Rose Lace-Up Sandals with Stiletto Heels

$128.00
Add to cart
Black Vegan Leather Open Toe Stiletto Heel Mid Calf Gladiator Sandals Nicepairs Black Vegan Leather Open Toe Stiletto Heel Mid Calf Gladiator Sandals Nicepairs

Black Vegan Leather Open Toe Stiletto Heel Mid Calf Gladiator Sandals

$112.00
Add to cart
Clear PVC Pointed Toe 4'' Stiletto Heel Slingback Pumps with Bow Nicepairs Clear PVC Pointed Toe 4'' Stiletto Heel Slingback Pumps with Bow Nicepairs

Clear PVC Pointed Toe 4'' Stiletto Heel Slingback Pumps with Bow

$117.00
Add to cart
Women's Peep Toe Cross Strap Chunky Heels Vintage Platform Sandals Nicepairs Women's Peep Toe Cross Strap Chunky Heels Vintage Platform Sandals Nicepairs

Women's Peep Toe Cross Strap Chunky Heels Vintage Platform Sandals

$108.00
Add to cart
Teal Velvet Braided Strap High Heels Sandals Elegant Evening Shoes Nicepairs Teal Velvet Braided Strap High Heels Sandals Elegant Evening Shoes Nicepairs

Teal Velvet Braided Strap High Heels Sandals Elegant Evening Shoes

$115.00
Add to cart
Ivory Satin Wedding Shoes Ankle Strap Block Heel Platform Sandals Nicepairs Ivory Satin Wedding Shoes Ankle Strap Block Heel Platform Sandals Nicepairs

Ivory Satin Wedding Shoes Ankle Strap Block Heel Platform Sandals

$112.00
Add to cart
Black Strappy Heels Patent Leather Square Toe Floral Decor Sandals Nicepairs Black Strappy Heels Patent Leather Square Toe Floral Decor Sandals Nicepairs

Black Strappy Heels Patent Leather Square Toe Floral Decor Sandals

$120.00
Add to cart
Blue Satin Knotted Wedding Shoes Square Toe Ankle Tie Heeled Sandals Nicepairs Blue Satin Knotted Wedding Shoes Square Toe Ankle Tie Heeled Sandals Nicepairs

Blue Satin Knotted Wedding Shoes Square Toe Ankle Tie Heeled Sandals

$100.00
Add to cart
Nude Velvet Bridal Shoes Open Toe Cross Strap Block Heel Sandals Nicepairs Nude Velvet Bridal Shoes Open Toe Cross Strap Block Heel Sandals Nicepairs

Nude Velvet Bridal Shoes Open Toe Cross Strap Block Heel Sandals

$105.00
Add to cart
Ivory Satin Ankle Strap Heels Square Toe Pearl Inlay Wedding Shoes Nicepairs Ivory Satin Ankle Strap Heels Square Toe Pearl Inlay Wedding Shoes Nicepairs

Ivory Satin Ankle Strap Heels Square Toe Pearl Inlay Wedding Shoes

$112.00
Add to cart
Turquoise Square Toe Floral Ankle Strap Sandals with Kitten Heels Nicepairs Turquoise Square Toe Floral Ankle Strap Sandals with Kitten Heels Nicepairs

Turquoise Square Toe Floral Ankle Strap Sandals with Kitten Heels

$115.00
Add to cart
Black & Red Ankle Strap Flower Shoes Square Toe Flat Sandals for Women Nicepairs Black & Red Ankle Strap Flower Shoes Square Toe Flat Sandals for Women Nicepairs

Black & Red Ankle Strap Flower Shoes Square Toe Flat Sandals for Women

$108.00
Add to cart
Red Faux Suede Ankle Strap Heels Open Toe Rhinestone Platform Sandals Nicepairs Red Faux Suede Ankle Strap Heels Open Toe Rhinestone Platform Sandals Nicepairs

Red Faux Suede Ankle Strap Heels Open Toe Rhinestone Platform Sandals

$125.00
Add to cart
Red & Gold Glitter Ankle Strap Heels Rhinestone Platform Sandals Nicepairs

Red & Gold Glitter Ankle Strap Heels Rhinestone Platform Sandals

$115.00
Add to cart
White Satin Ruffle Wedding Shoes Open Toe Ankle Strap Heeled Sandals Nicepairs White Satin Ruffle Wedding Shoes Open Toe Ankle Strap Heeled Sandals Nicepairs

White Satin Ruffle Wedding Shoes Open Toe Ankle Strap Heeled Sandals

$115.00
Add to cart
Yellow Vegan Suede Open Toe Ankle Strap Sandals with Low Chunky Heels Nicepairs Yellow Vegan Suede Open Toe Ankle Strap Sandals with Low Chunky Heels Nicepairs

Yellow Vegan Suede Open Toe Ankle Strap Sandals with Low Chunky Heels

$115.00
Add to cart
Multicolor Square Toe Ankle Strap Platform Sandals with Chunky Heel Nicepairs Multicolor Square Toe Ankle Strap Platform Sandals with Chunky Heel Nicepairs

Multicolor Square Toe Ankle Strap Platform Sandals with Chunky Heel

$115.00
Add to cart
Women's Black & Red Ankle strap Heels Peep Toe Platform Sandals Nicepairs Women's Black & Red Ankle strap Heels Peep Toe Platform Sandals Nicepairs

Women's Black & Red Ankle strap Heels Peep Toe Platform Sandals

$120.00
Add to cart
Glitter Red Opened Toe Ankle Strappy Platform Sandals With Chunky Heels Nicepairs

Glitter Red Opened Toe Ankle Strappy Platform Sandals With Chunky Heels

$115.00
Add to cart
White Satin Bridal Shoes Block Heel Ankle Strap Pearl Sandals Nicepairs White Satin Bridal Shoes Block Heel Ankle Strap Pearl Sandals Nicepairs

White Satin Bridal Shoes Block Heel Ankle Strap Pearl Sandals

$115.00
Add to cart
White Satin Wedding Sandals Square Toe Bow High Heel Mules for Women Nicepairs White Satin Wedding Sandals Square Toe Bow High Heel Mules for Women Nicepairs

White Satin Wedding Sandals Square Toe Bow High Heel Mules for Women

$120.00
Add to cart
Black Mesh Peep Toe Stiletto High Heel Ankle Strap Sandals with Platform Nicepairs Black Mesh Peep Toe Stiletto High Heel Ankle Strap Sandals with Platform Nicepairs

Black Mesh Peep Toe Stiletto High Heel Ankle Strap Sandals with Platform

$125.00
Add to cart
Gold Glitter Open Toe Chunky Heel Platform Sandals with Rhinestone Nicepairs Gold Glitter Open Toe Chunky Heel Platform Sandals with Rhinestone Nicepairs

Gold Glitter Open Toe Chunky Heel Platform Sandals with Rhinestone

$138.00
Add to cart
Black & Hot Pink Satin Open Toe 4'' Stiletto Heel Ankle Strap Sandals Nicepairs Black & Hot Pink Satin Open Toe 4'' Stiletto Heel Ankle Strap Sandals Nicepairs

Black & Hot Pink Satin Open Toe 4'' Stiletto Heel Ankle Strap Sandals

$115.00
Add to cart
Gold Chain Pointed Toe Chunky High Heel Ankle Strap Sandals for Women  Nicepairs Gold Chain Pointed Toe Chunky High Heel Ankle Strap Sandals for Women  Nicepairs

Gold Chain Pointed Toe Chunky High Heel Ankle Strap Sandals for Women

$115.00
Add to cart
Blue Suede Peep Toe 4'' Chunky High Heel Sandals with Platform Nicepairs Blue Suede Peep Toe 4'' Chunky High Heel Sandals with Platform Nicepairs

Blue Suede Peep Toe 4'' Chunky High Heel Sandals with Platform

$109.00
Add to cart
Gold Pointed Toe Strappy Sandals With Full Rivet Flats Gladiator Sandals Nicepairs Gold Pointed Toe Strappy Sandals With Full Rivet Flats Gladiator Sandals Nicepairs

Gold Pointed Toe Strappy Sandals With Full Rivet Flats Gladiator Sandals

$150.00
Add to cart
Black Polka Dot Open Toe Flared Heel Sandals with Bow-Knot Nicepairs Black Polka Dot Open Toe Flared Heel Sandals with Bow-Knot Nicepairs

Black Polka Dot Open Toe Flared Heel Sandals with Bow-Knot

$109.00
Add to cart
Gold Leather Closed Toe Kitten Heel Sandals with Bow Nicepairs Gold Leather Closed Toe Kitten Heel Sandals with Bow Nicepairs

Gold Leather Closed Toe Kitten Heel Sandals with Bow

$109.00
Add to cart
Women's White Open-Toe Slingback Shoes 4 Inch Stiletto Heeled Sandals Nicepairs Women's White Open-Toe Slingback Shoes 4 Inch Stiletto Heeled Sandals Nicepairs

Women's White Open-Toe Slingback Shoes 4 Inch Stiletto Heeled Sandals

$109.00
Add to cart
Red Patent Leather Peep Toe Stiletto Heel Ankle Strap Sandals Nicepairs Red Patent Leather Peep Toe Stiletto Heel Ankle Strap Sandals Nicepairs

Red Patent Leather Peep Toe Stiletto Heel Ankle Strap Sandals

$124.00
Add to cart
Multicolor Rainbow Open Toe Chunky Heel Ankle Strap Sandals for Dating Nicepairs Multicolor Rainbow Open Toe Chunky Heel Ankle Strap Sandals for Dating Nicepairs

Multicolor Rainbow Open Toe Chunky Heel Ankle Strap Sandals for Dating

$135.00
Add to cart
Women's Purple Satin Braided Strap Square Toe Block Heel Sandals Nicepairs Women's Purple Satin Braided Strap Square Toe Block Heel Sandals Nicepairs

Women's Purple Satin Braided Strap Square Toe Block Heel Sandals

$109.00
Add to cart
Beige Stiletto Shoes Peep Toe Multi-Strap Buckle High Heels Sandals Nicepairs Beige Stiletto Shoes Peep Toe Multi-Strap Buckle High Heels Sandals Nicepairs

Beige Stiletto Shoes Peep Toe Multi-Strap Buckle High Heels Sandals

$109.00
Add to cart
Women's Velvet Peep Toe Ankle Strap Block Heel Sandals with Platform Nicepairs Women's Velvet Peep Toe Ankle Strap Block Heel Sandals with Platform Nicepairs

Women's Velvet Peep Toe Ankle Strap Block Heel Sandals with Platform

$106.00
Add to cart
Pink Square Toe Strappy High Heel Sandals Floral Wedding Shoes Nicepairs Pink Square Toe Strappy High Heel Sandals Floral Wedding Shoes Nicepairs

Pink Square Toe Strappy High Heel Sandals Floral Wedding Shoes

$109.00
Add to cart
Multi Color Open Toe Cross Strap Block Heel Sandals Buckle Slingbacks Nicepairs Multi Color Open Toe Cross Strap Block Heel Sandals Buckle Slingbacks Nicepairs

Multi Color Open Toe Cross Strap Block Heel Sandals Buckle Slingbacks

$108.00
Add to cart
Women's Beige Open Toe Buckle T-Strap Flat Gladiator Sandals Nicepairs Women's Beige Open Toe Buckle T-Strap Flat Gladiator Sandals Nicepairs

Women's Beige Open Toe Buckle T-Strap Flat Gladiator Sandals

$100.00
Add to cart
Gold Metallic Chunky Heels Round Toe Ankle Strap Platform Sandals Nicepairs Gold Metallic Chunky Heels Round Toe Ankle Strap Platform Sandals Nicepairs

Gold Metallic Chunky Heels Round Toe Ankle Strap Platform Sandals

$108.00
Add to cart
Black Satin Square Toe Red Rose Inlay Ankle Strap Heeled Sandals Nicepairs Black Satin Square Toe Red Rose Inlay Ankle Strap Heeled Sandals Nicepairs

Black Satin Square Toe Red Rose Inlay Ankle Strap Heeled Sandals

$116.00
Add to cart
Sorry, there are no products in this collection.
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('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 }, true); }); }); 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);