Free shipping on orders over $34
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
7 / 12
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry
0% OFF

Bohemian Rhinestone Butterfly Tassel Ankle For Women Summer Beach Anklets Foot Chain Leg Bracelets Jewelry

$8.97
0 sold
Metal Color
Qty 665 in stock
Gender : Women
Shape\pattern : Animal
Model Number : ATMD23E97
Style : TRENDY
Length : as show
Material : CRYSTAL
Metals Type : Zinc alloy
Brand Name : genenic


Fine or Fashion : Fashion
Item Type : Anklets
type 1 : Foot Jewelry
type 2 : Butterfly Pendant Anklet
type 3 : Ankle For Women
type 4 : Leg Bracelets Jewelry

item: ankle chain
material:alloy
size:a:24cm(9.45in),b:20+5cm(7.87+1.97in),c:21+5cm(8.27+1.97in),d:22+5cm(8.66+1.97in)
weight:a:5g,b:6g,c:4.5g,d:10g
package:1 pc ankle chain
note:
1. please note the photo does not show actual size, please refer to description for size details.
2. please allowed 1-3mm(0.04-0.12in) differences due to manual measurement, thanks.




const TAG = 'spz-custom-painter-button-animation'; const MAX_ITERATION_COUNT = 99999999; const SITE = (window.C_SETTINGS && window.C_SETTINGS.routes && window.C_SETTINGS.routes.root) || ''; const ADD_TO_CART_ANIMATION_SETTING = `${SITE}/api/marketing_atmosphere_app/add_to_cart_btn_animation/setting`; class SpzCustomPainterButtonAnimation extends SPZ.BaseElement { /**@override */ static deferredMount() { return false; } /** @param {!SpzElement} element */ constructor(element) { super(element); /** @private {!../../src/service/xhr-impl.Xhr} */ this.xhr_ = SPZServices.xhrFor(this.win); /** @private {Object} */ this.data_ = null; /** @private {Element} */ this.addToCartButton_ = null; /** @private {boolean} */ this.productAvailable_ = true; /** @private {number} */ this.timerId_ = null; /** @private {number} */ this.animationExecutionCount_ = 0; /** @private {boolean} */ this.selectedVariantAvailable_ = true; /** @private {number} */ this.delay_ = 5000; /** @private {number} */ this.iterationCount_ = 5; /** @private {string} */ this.animationClass_ = ''; } /** @override */ isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } /** @override */ buildCallback() { this.productAvailable_ = this.element.hasAttribute('product-available'); this.selectedVariantAvailable_ = this.element.hasAttribute('selected-variant-available'); } /** @override */ mountCallback() { this.render_(); } /** @private */ render_() { if (!this.productAvailable_) { return; } this.fetch_().then((data) => { if (!data) { return; } this.data_ = data; this.animationClass_ = `painter-${data.animation_name}-animation`; this.iterationCount_ = data.animation_iteration_count === 'infinite' ? MAX_ITERATION_COUNT : data.animation_iteration_count; const animationDuration = 1; const animationDelay = data.animation_delay || 5; this.delay_ = (animationDuration + animationDelay) * 1000; this.handleButtonEffect_(); }); } /** * @param {JsonObject} data * @return {(null|Object)} * @private */ parseJson_(data) { try { return JSON.parse(data); } catch (e) { return null; } } /** * @return {Promise} * @private */ fetch_() { return this.xhr_.fetchJson(ADD_TO_CART_ANIMATION_SETTING).then((data) => { if (!data || !data.enabled) { return null; } return this.parseJson_(data.detail); }); } /** @private */ getAddToCartButton_() { this.addToCartButton_ = SPZCore.Dom.scopedQuerySelector( document.body, '[data-section-type="product"] [role="addToCart"], [data-section-type="product_detail"] [role="addToCart"], [data-section-type="product_detail"] [data-click="addToCart"], [data-section-type="product"] [data-click="addToCart"]' ); } /** @private */ restartAnimation_() { this.addToCartButton_.classList.remove(this.animationClass_); this.addToCartButton_./* OK */ offsetWidth; this.addToCartButton_.classList.add(this.animationClass_); this.animationExecutionCount_++; } /** @private */ clearTimer_() { this.win.clearInterval(this.timerId_); this.timerId_ = null; } /** @private */ setupTimer_() { this.timerId_ = this.win.setInterval(() => { this.restartAnimation_(); if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); this.clearTimer_(); } }, this.delay_); } /** @private */ restartTimer_() { if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); return; } this.setupTimer_(); } /** @private */ listenVariantChange_() { SPZUtils.Event.listen(self.document, 'dj.variantChange', (e) => { const selectedVariant = e.detail && e.detail.selected; if (!selectedVariant) { return; } const {available} = selectedVariant; if (this.selectedVariantAvailable_ !== available) { this.selectedVariantAvailable_ = available; this.clearTimer_(); if (available) { this.restartTimer_(); } } }); } /** @private */ removeAnimationClass_() { this.win.setTimeout(() => { this.addToCartButton_.classList.remove(this.animationClass_); }, 1000); } /** @private */ handleButtonEffect_() { this.getAddToCartButton_(); if (!this.addToCartButton_) { return; } if (this.selectedVariantAvailable_) { ++this.animationExecutionCount_; this.addToCartButton_.classList.add(this.animationClass_); if (this.iterationCount_ === 1) { this.removeAnimationClass_(); return; } this.setupTimer_(); } this.listenVariantChange_(); } } SPZ.defineElement(TAG, SpzCustomPainterButtonAnimation);