Step into spring with our fashionable and comfortable selection of shoes for women. From chic sandals to stylish loafers, we have the perfect footwear to complement your spring wardrobe. Explore our collection crafted with the latest trends and premium materials, ensuring both style and comfort. Whether you're strolling through the park or attending outdoor gatherings, our spring shoes are designed to keep you looking and feeling your best. Elevate your seasonal style with our versatile range of footwear options.

Spring Shoes

1138 Products
Filter
  • Reset
  • The highest price is 138
    $
    $
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
Filter
  • Price
  • Color
  • Platform
  • Heel Type
  • Season
    Price
  • The highest price is 138
    $
    $
    Color
    Platform
    Heel Type
    Season
White Pearl Peep Toe Chunky Heel Ankle Strap Pumps for Wedding Nicepairs White Pearl Peep Toe Chunky Heel Ankle Strap Pumps for Wedding Nicepairs

White Pearl Peep Toe Chunky Heel Ankle Strap Pumps for Wedding

$125.00
Add to cart
Green Round Toe Chunky Heel Platform Mules for Women Nicepairs Green Round Toe Chunky Heel Platform Mules for Women Nicepairs

Green Round Toe Chunky Heel Platform Mules for Women

$115.00
Add to cart
Burgundy Patent Leather Square Toe Buckled Ankle Strap Mary Jane Flats Nicepairs Burgundy Patent Leather Square Toe Buckled Ankle Strap Mary Jane Flats Nicepairs

Burgundy Patent Leather Square Toe Buckled Ankle Strap Mary Jane Flats

$100.00
Add to cart
Elegant Pointy Toe Stiletto Heels Evening Ankle Strap Zip Gold Pumps Nicepairs Elegant Pointy Toe Stiletto Heels Evening Ankle Strap Zip Gold Pumps Nicepairs

Elegant Pointy Toe Stiletto Heels Evening Ankle Strap Zip Gold Pumps

$103.00
Add to cart
Silver Patent Leather Chunky Heel Ankle Strap Mary Janes Shoes Nicepairs Silver Patent Leather Chunky Heel Ankle Strap Mary Janes Shoes Nicepairs

Silver Patent Leather Chunky Heel Ankle Strap Mary Janes Shoes

$101.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
Red & Gold Glitter Sparkling Heels Ankle Strap Platform Sandals Nicepairs

Red & Gold Glitter Sparkling Heels Ankle Strap Platform Sandals

$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
Black Studded Heeled Clogs Round Toe Platform Mules Vintage Shoes Nicepairs Black Studded Heeled Clogs Round Toe Platform Mules Vintage Shoes Nicepairs

Black Studded Heeled Clogs Round Toe Platform Mules Vintage Shoes

$116.00
Add to cart
Women's Ivory Lace Floral Bridal Shoes Ankle Strap Kitten Heel Pumps Nicepairs Women's Ivory Lace Floral Bridal Shoes Ankle Strap Kitten Heel Pumps Nicepairs

Women's Ivory Lace Floral Bridal Shoes Ankle Strap Kitten Heel Pumps

$118.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
Black Satin Square Toe Bow Inlay Kitten Heel Mules for Women Nicepairs Black Satin Square Toe Bow Inlay Kitten Heel Mules for Women Nicepairs

Black Satin Square Toe Bow Inlay Kitten Heel Mules for Women

$100.00
Add to cart
Red Patent Leather Square Toe Buckle Fastening Strappy Flat Mules Nicepairs Red Patent Leather Square Toe Buckle Fastening Strappy Flat Mules Nicepairs

Red Patent Leather Square Toe Buckle Fastening Strappy Flat Mules

$100.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
Black & White Flat Shoes Round Toe Slip-On Penny Loafers for Women Nicepairs Black & White Flat Shoes Round Toe Slip-On Penny Loafers for Women Nicepairs

Black & White Flat Shoes Round Toe Slip-On Penny Loafers for Women

$112.00
Add to cart
Blue Denim Patchwork Closed Pointed Toe Stiletto Heel Mules Shoes Nicepairs Blue Denim Patchwork Closed Pointed Toe Stiletto Heel Mules Shoes Nicepairs

Blue Denim Patchwork Closed Pointed Toe Stiletto Heel Mules Shoes

$108.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
Brown Vegan Leather  Square Toe Ankle Strappy Platform Pumps With Chunky Heels Nicepairs Brown Vegan Leather  Square Toe Ankle Strappy Platform Pumps With Chunky Heels Nicepairs

Brown Vegan Leather Square Toe Ankle Strappy Platform Pumps With Chunky Heels

$120.00
Add to cart
Blue Denim Knot Design Ankle Strap Platform Sandals With Chunky Heels Nicepairs Blue Denim Knot Design Ankle Strap Platform Sandals With Chunky Heels Nicepairs

Blue Denim Knot Design Ankle Strap Platform Sandals With Chunky Heels

$116.00
Add to cart
Beige Open Square Toe Ruffle Decor Block Heel Mules for Women Nicepairs Beige Open Square Toe Ruffle Decor Block Heel Mules for Women Nicepairs

Beige Open Square Toe Ruffle Decor Block Heel Mules for Women

$100.00
Add to cart
Black Open Square Toe Wide Band Kitten heel Mules for Women Nicepairs Black Open Square Toe Wide Band Kitten heel Mules for Women Nicepairs

Black Open Square Toe Wide Band Kitten heel Mules for Women

$100.00
Add to cart
White Satin Wedding Shoes Ankle Strap Pearl Trim Bow Pointy Toe Pumps Nicepairs White Satin Wedding Shoes Ankle Strap Pearl Trim Bow Pointy Toe Pumps Nicepairs

White Satin Wedding Shoes Ankle Strap Pearl Trim Bow Pointy Toe Pumps

$100.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
Black Satin Rhinestone Bow Kitten Heels Pointed Toe Mules Shoes Nicepairs Black Satin Rhinestone Bow Kitten Heels Pointed Toe Mules Shoes Nicepairs

Black Satin Rhinestone Bow Kitten Heels Pointed Toe Mules Shoes

$120.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
Orange Satin Pointy Toe 3'' Stiletto Heel Ankle Strap Slingback Pumps Nicepairs Orange Satin Pointy Toe 3'' Stiletto Heel Ankle Strap Slingback Pumps Nicepairs

Orange Satin Pointy Toe 3'' Stiletto Heel Ankle Strap Slingback Pumps

$120.00
Add to cart
Clear PVC Pointed Toe 4'' Stiletto Heel Pearl Ankle Strap Sandals Nicepairs Clear PVC Pointed Toe 4'' Stiletto Heel Pearl Ankle Strap Sandals Nicepairs

Clear PVC Pointed Toe 4'' Stiletto Heel Pearl Ankle Strap Sandals

$120.00
Add to cart
Black Patent Leather Closed Toe Chunky Heel Platform Ankle Strap Pumps Nicepairs Black Patent Leather Closed Toe Chunky Heel Platform Ankle Strap Pumps Nicepairs

Black Patent Leather Closed Toe Chunky Heel Platform Ankle Strap Pumps

$112.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
Multicolor Crystal & Polka Dot Decor Round Toe Flat Loafers Nicepairs Multicolor Crystal & Polka Dot Decor Round Toe Flat Loafers Nicepairs

Multicolor Crystal & Polka Dot Decor Round Toe Flat Loafers

$124.00
Add to cart
Vintage Slip-on Leather Chunky Loafers for Women Nicepairs Vintage Slip-on Leather Chunky Loafers for Women Nicepairs

Vintage Slip-on Leather Chunky Loafers for Women

$128.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
Silver Glittery Ankle Strappy Platform Mary Janes with Chunky Heel Nicepairs Silver Glittery Ankle Strappy Platform Mary Janes with Chunky Heel Nicepairs

Silver Glittery Ankle Strappy Platform Mary Janes with Chunky Heel

$115.00
Add to cart
Red Square Toe Satin Ankle Strappy Platform Mary Janes with Chunky Heel Nicepairs Red Square Toe Satin Ankle Strappy Platform Mary Janes with Chunky Heel Nicepairs

Red Square Toe Satin Ankle Strappy Platform Mary Janes with Chunky Heel

$115.00
Add to cart
Mustard Slingback Pumps Square Toe Block Heel Vintage Mary Jane Shoes Nicepairs Mustard Slingback Pumps Square Toe Block Heel Vintage Mary Jane Shoes Nicepairs

Mustard Slingback Pumps Square Toe Block Heel Vintage Mary Jane Shoes

$100.00
Add to cart
Vegan Leather Buckle Fastening Slingback Chunky Heeled Loafers In Brown Nicepairs Vegan Leather Buckle Fastening Slingback Chunky Heeled Loafers In Brown Nicepairs

Vegan Leather Buckle Fastening Slingback Chunky Heeled Loafers In Brown

$100.00
Add to cart
Olive Patent Leather Buckle Fastening Slingback Chunky Heeled Loafers Nicepairs Olive Patent Leather Buckle Fastening Slingback Chunky Heeled Loafers Nicepairs

Olive Patent Leather Buckle Fastening Slingback Chunky Heeled Loafers

$100.00
Add to cart
Brown & White Vegan Leather Square Toe Platform Loafers With Chunky Heels Nicepairs Brown & White Vegan Leather Square Toe Platform Loafers With Chunky Heels Nicepairs

Brown & White Vegan Leather Square Toe Platform Loafers With Chunky Heels

$115.00
Add to cart
Leopard Vegan Leather Square Toe Slip-On Classic Flat Loafers Nicepairs Leopard Vegan Leather Square Toe Slip-On Classic Flat Loafers Nicepairs

Leopard Vegan Leather Square Toe Slip-On Classic Flat Loafers

$100.00
Add to cart
Silver Vegan Leather Sophisticated Round Toe Cut-Out Slip-On Flat Mules  Nicepairs Silver Vegan Leather Sophisticated Round Toe Cut-Out Slip-On Flat Mules  Nicepairs

Silver Vegan Leather Sophisticated Round Toe Cut-Out Slip-On Flat Mules

$100.00
Add to cart
Black Vegan Leather Closed Round Toe Studded Platform Mules With Wedged Heels Nicepairs Black Vegan Leather Closed Round Toe Studded Platform Mules With Wedged Heels Nicepairs

Black Vegan Leather Closed Round Toe Studded Platform Mules With Wedged Heels

$118.00
Add to cart
Black Patent Leather Opened Pointed Toe Ankle Strappy High Heeled Sandals Nicepairs Black Patent Leather Opened Pointed Toe Ankle Strappy High Heeled Sandals Nicepairs

Black Patent Leather Opened Pointed Toe Ankle Strappy High Heeled Sandals

$115.00
Add to cart
White Vegan Leather Sophisticated Buckle Fastening Ankle Strappy Sandals With Chunky Heels Nicepairs White Vegan Leather Sophisticated Buckle Fastening Ankle Strappy Sandals With Chunky Heels Nicepairs

White Vegan Leather Sophisticated Buckle Fastening Ankle Strappy Sandals With Chunky Heels

$115.00
Add to cart
Beige Vegan Leather Buckle Fastening Ankle Strappy Sandals With Chunky Heels Nicepairs Beige Vegan Leather Buckle Fastening Ankle Strappy Sandals With Chunky Heels Nicepairs

Beige Vegan Leather Buckle Fastening Ankle Strappy Sandals With Chunky Heels

$115.00
Add to cart
Maroon Patent Leather Round Leather Black Fringe Loafers With Chunky Heels Nicepairs Maroon Patent Leather Round Leather Black Fringe Loafers With Chunky Heels Nicepairs

Maroon Patent Leather Round Leather Black Fringe Loafers With Chunky Heels

$100.00
Add to cart
Red Patent Leather Round Leather Fringe Loafers With Chunky Heels Nicepairs Red Patent Leather Round Leather Fringe Loafers With Chunky Heels Nicepairs

Red Patent Leather Round Leather Fringe Loafers With Chunky Heels

$112.00
Add to cart
Beige Vegan Leather Opened Pointed Toe Buckle Fastening Ankle Strappy Sandals With Kitten Heels Nicepairs Beige Vegan Leather Opened Pointed Toe Buckle Fastening Ankle Strappy Sandals With Kitten Heels Nicepairs

Beige Vegan Leather Opened Pointed Toe Buckle Fastening Ankle Strappy Sandals With Kitten Heels

$115.00
Add to cart
Gold Satin Opened Toe Pearl Embellished Ankle Strappy Sandals With Chunky heels Nicepairs Gold Satin Opened Toe Pearl Embellished Ankle Strappy Sandals With Chunky heels Nicepairs

Gold Satin Opened Toe Pearl Embellished Ankle Strappy Sandals With Chunky heels

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