Heeled sandals

405 Products
Filter
  • Reset
  • The highest price is 190
    $
    $
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
Filter
  • Price
  • Color
  • Platform
  • Heel Type
  • Season
    Price
  • The highest price is 190
    $
    $
    Color
    Platform
    Heel Type
    Season
Satin Pointed Toe Chain Decorative Heel Ankle Strap Pink Sandals Nicepairs Satin Pointed Toe Chain Decorative Heel Ankle Strap Pink Sandals Nicepairs

Satin Pointed Toe Chain Decorative Heel Ankle Strap Pink Sandals

$115.00
Add to cart
Pink & Orange Satin Pointed Toe Slingback Pumps with Rhinestone Bow Nicepairs Pink & Orange Satin Pointed Toe Slingback Pumps with Rhinestone Bow Nicepairs

Pink & Orange Satin Pointed Toe Slingback Pumps with Rhinestone Bow

$108.00
Add to cart
Pink Patent Leather Round Toe Side-Zip Decorative Heeled Ankle Boots Nicepairs Pink Patent Leather Round Toe Side-Zip Decorative Heeled Ankle Boots Nicepairs

Pink Patent Leather Round Toe Side-Zip Decorative Heeled Ankle Boots

$128.00
Add to cart
Metallic Light Pink Snip Toe Embroidered Heeled Cowgirl Ankle Boots Nicepairs Metallic Light Pink Snip Toe Embroidered Heeled Cowgirl Ankle Boots Nicepairs

Metallic Light Pink Snip Toe Embroidered Heeled Cowgirl Ankle Boots

$150.00
Add to cart
Dull Pink Satin Peep Toe Kitten Heeled Pumps for Elegant Ladies Nicepairs Dull Pink Satin Peep Toe Kitten Heeled Pumps for Elegant Ladies Nicepairs

Dull Pink Satin Peep Toe Kitten Heeled Pumps for Elegant Ladies

$101.00
Add to cart
Pink Satin Sophisticated Peep Toe Bridal Kitten Heeled Pumps for Girls Nicepairs Pink Satin Sophisticated Peep Toe Bridal Kitten Heeled Pumps for Girls Nicepairs

Pink Satin Sophisticated Peep Toe Bridal Kitten Heeled Pumps for Girls

$101.00
Add to cart
Pink Satin Sophisticated Pointed Toe Kitten Heeled Pumps for Women Nicepairs Pink Satin Sophisticated Pointed Toe Kitten Heeled Pumps for Women Nicepairs

Pink Satin Sophisticated Pointed Toe Kitten Heeled Pumps for Women

$101.00
Add to cart
Pink & Clear Square Toe 3'' Decorative Heel Ankle Strap Sandals Nicepairs Pink & Clear Square Toe 3'' Decorative Heel Ankle Strap Sandals Nicepairs

Pink & Clear Square Toe 3'' Decorative Heel Ankle Strap Sandals

$115.00
Add to cart
Pink Patent Leather Pointed Toe Slingback Mary Jane Flats Slip-On Convenience Nicepairs Pink Patent Leather Pointed Toe Slingback Mary Jane Flats Slip-On Convenience Nicepairs

Pink Patent Leather Pointed Toe Slingback Mary Jane Flats Slip-On Convenience

$100.00
Add to cart
Hot Pink Satin Slingback Pumps Pointed Toe Rhinestone Prom Heels Nicepairs Hot Pink Satin Slingback Pumps Pointed Toe Rhinestone Prom Heels Nicepairs

Hot Pink Satin Slingback Pumps Pointed Toe Rhinestone Prom Heels

$120.00
Add to cart
Pink Satin Buckle Ankle band Elegant Sandals with Wrapped Block Heels Nicepairs Pink Satin Buckle Ankle band Elegant Sandals with Wrapped Block Heels Nicepairs

Pink Satin Buckle Ankle band Elegant Sandals with Wrapped Block Heels

$115.00
Add to cart
Pink Vegan Leather Pointed Toe Elegant Pumps With Flared Heels Nicepairs Pink Vegan Leather Pointed Toe Elegant Pumps With Flared Heels Nicepairs

Pink Vegan Leather Pointed Toe Elegant Pumps With Flared Heels

$118.00
Add to cart
Pink Elegant Patent Leather Sophisticated Pointed Toe Buckle Fastening Strappy Pumps With Stiletto Heels Nicepairs Pink Elegant Patent Leather Sophisticated Pointed Toe Buckle Fastening Strappy Pumps With Stiletto Heels Nicepairs

Pink Elegant Patent Leather Sophisticated Pointed Toe Buckle Fastening Strappy Pumps With Stiletto Heels

$118.00
Add to cart
Metallic Pink Floral Inlay Strappy Lace-Up Block Heeled Platform Sandals Nicepairs Metallic Pink Floral Inlay Strappy Lace-Up Block Heeled Platform Sandals Nicepairs

Metallic Pink Floral Inlay Strappy Lace-Up Block Heeled Platform Sandals

$115.00
Add to cart
Hot Pink Vegan Leather Fringe Wide Band Block Heeled Mules Nicepairs Hot Pink Vegan Leather Fringe Wide Band Block Heeled Mules Nicepairs

Hot Pink Vegan Leather Fringe Wide Band Block Heeled Mules

$118.00
Add to cart
Pink Vegan Leather Buckled Heart Rivet Strappy Platform Heeled Shoes  Nicepairs Pink Vegan Leather Buckled Heart Rivet Strappy Platform Heeled Shoes  Nicepairs

Pink Vegan Leather Buckled Heart Rivet Strappy Platform Heeled Shoes

$115.00
Add to cart
Pink Patent Leather Pointed Toe Slingback Pumps with Stiletto Heels Nicepairs Pink Patent Leather Pointed Toe Slingback Pumps with Stiletto Heels Nicepairs

Pink Patent Leather Pointed Toe Slingback Pumps with Stiletto Heels

$100.00
Add to cart
Pink Satin Round Toe Rhinestone Embellished Strappy Elegant Mules Nicepairs Pink Satin Round Toe Rhinestone Embellished Strappy Elegant Mules Nicepairs

Pink Satin Round Toe Rhinestone Embellished Strappy Elegant Mules

$118.00
Add to cart
Pink Patent Leather Heart Buckle Strappy Platform Heeled Mary Jane Shoes Nicepairs Pink Patent Leather Heart Buckle Strappy Platform Heeled Mary Jane Shoes Nicepairs

Pink Patent Leather Heart Buckle Strappy Platform Heeled Mary Jane Shoes

$115.00
Add to cart
Stylish Pink Open Toe Double Braided Strap Block Heel Mules for Women Nicepairs Stylish Pink Open Toe Double Braided Strap Block Heel Mules for Women Nicepairs

Stylish Pink Open Toe Double Braided Strap Block Heel Mules for Women

$115.00
Add to cart
Pink Patent Leather Round Toe Platform Pumps Ankle Strap Chunky Heels Nicepairs Pink Patent Leather Round Toe Platform Pumps Ankle Strap Chunky Heels Nicepairs

Pink Patent Leather Round Toe Platform Pumps Ankle Strap Chunky Heels

$124.00
Add to cart
Pink Mesh Sophisticated Round Toe Ballet Flats for Women Nicepairs Pink Mesh Sophisticated Round Toe Ballet Flats for Women Nicepairs

Pink Mesh Sophisticated Round Toe Ballet Flats for Women

$100.00
Add to cart
Pink Satin Kitten Heels Elegant Rhinestone Buckle Slingback Pumps Nicepairs Pink Satin Kitten Heels Elegant Rhinestone Buckle Slingback Pumps Nicepairs

Pink Satin Kitten Heels Elegant Rhinestone Buckle Slingback Pumps

$112.00
Add to cart
Elegant Pink Satin Open-Toe Bow Double Strap Mule Heels for Women Nicepairs Elegant Pink Satin Open-Toe Bow Double Strap Mule Heels for Women Nicepairs

Elegant Pink Satin Open-Toe Bow Double Strap Mule Heels for Women

$105.00
Add to cart
Pink & White Ankle Length Embroidered Cowgirl Boots with Chunky Heel Nicepairs Pink & White Ankle Length Embroidered Cowgirl Boots with Chunky Heel Nicepairs

Pink & White Ankle Length Embroidered Cowgirl Boots with Chunky Heel

$136.00
Add to cart
Pink Vegan Leather Square Toe Strappy Classic Mary Janes   Nicepairs Pink Vegan Leather Square Toe Strappy Classic Mary Janes   Nicepairs

Pink Vegan Leather Square Toe Strappy Classic Mary Janes

$109.00
Add to cart
Hot Pink Satin Open-Toe Rhinestone Butterfly Heeled Platform Mules Nicepairs Hot Pink Satin Open-Toe Rhinestone Butterfly Heeled Platform Mules Nicepairs

Hot Pink Satin Open-Toe Rhinestone Butterfly Heeled Platform Mules

$120.00
Add to cart
Pink Distressed Embroidered Wide-Calf Cowgirl Ankle Boots Nicepairs Pink Distressed Embroidered Wide-Calf Cowgirl Ankle Boots Nicepairs

Pink Distressed Embroidered Wide-Calf Cowgirl Ankle Boots

$128.00
Add to cart
Glitter Pointed Toe Sparkling Silver And Pink Slingback Kitten Heel Pump For Women Nicepairs Glitter Pointed Toe Sparkling Silver And Pink Slingback Kitten Heel Pump For Women Nicepairs

Glitter Pointed Toe Sparkling Silver And Pink Slingback Kitten Heel Pump For Women

$112.00
Add to cart
Pink Leopard Print Patent Leather Pointed Toe Elegant Kitten Heel Slingback Dress Pump Shoes Nicepairs Pink Leopard Print Patent Leather Pointed Toe Elegant Kitten Heel Slingback Dress Pump Shoes Nicepairs

Pink Leopard Print Patent Leather Pointed Toe Elegant Kitten Heel Slingback Dress Pump Shoes

$112.00
Add to cart
Pink Patent Leather Pointed Toe Kitten Heel Pumps with Lip Pattern Nicepairs Pink Patent Leather Pointed Toe Kitten Heel Pumps with Lip Pattern Nicepairs

Pink Patent Leather Pointed Toe Kitten Heel Pumps with Lip Pattern

$112.00
Add to cart
Pink Leopard Print Pointed Toe Kitten Heel Slingback Pumps for Dress Nicepairs Pink Leopard Print Pointed Toe Kitten Heel Slingback Pumps for Dress Nicepairs

Pink Leopard Print Pointed Toe Kitten Heel Slingback Pumps for Dress

$112.00
Add to cart
Pink Kitten Heels Sexy Stiletto Pumps  Sparkly Ankle Strap Heels Sandals Dress Shoes for Women Nicepairs Pink Kitten Heels Sexy Stiletto Pumps  Sparkly Ankle Strap Heels Sandals Dress Shoes for Women Nicepairs

Pink Kitten Heels Sexy Stiletto Pumps Sparkly Ankle Strap Heels Sandals Dress Shoes for Women

$112.00
Add to cart
Women's Pink Striped Pattern Patent Leather High Heels Nicepairs Women's Pink Striped Pattern Patent Leather High Heels Nicepairs

Women's Pink Striped Pattern Patent Leather High Heels

$112.00
Add to cart
Pink Floral Pattern Patent Leather Pointed Toe Elegant Kitten Heel Slingback Dress Pump Shoes Nicepairs Pink Floral Pattern Patent Leather Pointed Toe Elegant Kitten Heel Slingback Dress Pump Shoes Nicepairs

Pink Floral Pattern Patent Leather Pointed Toe Elegant Kitten Heel Slingback Dress Pump Shoes

$112.00
Add to cart
Pink Cow Pattern Patent Leather Pointed Toe Elegant Kitten Heel Nicepairs Pink Cow Pattern Patent Leather Pointed Toe Elegant Kitten Heel Nicepairs

Pink Cow Pattern Patent Leather Pointed Toe Elegant Kitten Heel

$112.00
Add to cart
Pink Daisy Pattern Patent Leather Pointed Toe Elegant Kitten Heel Slingback Dress Pump Shoes Nicepairs Pink Daisy Pattern Patent Leather Pointed Toe Elegant Kitten Heel Slingback Dress Pump Shoes Nicepairs

Pink Daisy Pattern Patent Leather Pointed Toe Elegant Kitten Heel Slingback Dress Pump Shoes

$112.00
Add to cart
Pink Patent Leather Pointed Toe Kitten Heel Panda Slingback Pumps Nicepairs Pink Patent Leather Pointed Toe Kitten Heel Panda Slingback Pumps Nicepairs

Pink Patent Leather Pointed Toe Kitten Heel Panda Slingback Pumps

$112.00
Add to cart
Pink Patent Leather Pointed Toe Kitten Heel Panda Slingbacks Nicepairs Pink Patent Leather Pointed Toe Kitten Heel Panda Slingbacks Nicepairs

Pink Patent Leather Pointed Toe Kitten Heel Panda Slingbacks

$112.00
Add to cart
Pink Patent Leather Pointed Toe Kitten Heel Leopard Print Slingbacks Nicepairs Pink Patent Leather Pointed Toe Kitten Heel Leopard Print Slingbacks Nicepairs

Pink Patent Leather Pointed Toe Kitten Heel Leopard Print Slingbacks

$112.00
Add to cart
Pink Metallic Finish Pointed Toe Embroidered Mid-Calf Cowgirl Boots Nicepairs Pink Metallic Finish Pointed Toe Embroidered Mid-Calf Cowgirl Boots Nicepairs

Pink Metallic Finish Pointed Toe Embroidered Mid-Calf Cowgirl Boots

$136.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
Elegant Pale Pink Satin Round Toe Bow Inlay Comfy Ballet Flats Nicepairs Elegant Pale Pink Satin Round Toe Bow Inlay Comfy Ballet Flats Nicepairs

Elegant Pale Pink Satin Round Toe Bow Inlay Comfy Ballet Flats

$100.00
Add to cart
Pink Faux Suede Caged Studded Platform Sandals with Chunky Heels Nicepairs Pink Faux Suede Caged Studded Platform Sandals with Chunky Heels Nicepairs

Pink Faux Suede Caged Studded Platform Sandals with Chunky Heels

$112.00
Add to cart
Pink Leopard Print Pointed Toe Kitten Heel Slingback Pumps Nicepairs Pink Leopard Print Pointed Toe Kitten Heel Slingback Pumps Nicepairs

Pink Leopard Print Pointed Toe Kitten Heel Slingback Pumps

$112.00
Add to cart
Pink Round Toe Flats Classic Horsebit Women's Loafers Nicepairs Pink Round Toe Flats Classic Horsebit Women's Loafers Nicepairs

Pink Round Toe Flats Classic Horsebit Women's Loafers

$108.00
Add to cart
Pink Metallic Vegan Leather Buckled Strappy Heeled Mary Janes Shoes Nicepairs Pink Metallic Vegan Leather Buckled Strappy Heeled Mary Janes Shoes Nicepairs

Pink Metallic Vegan Leather Buckled Strappy Heeled Mary Janes Shoes

$100.00
Add to cart
Women's Stylish Pink Glittery Square Toe Wide Band Mules       Nicepairs Women's Stylish Pink Glittery Square Toe Wide Band Mules       Nicepairs

Women's Stylish Pink Glittery Square Toe Wide Band Mules

$109.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);