Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
1 / 14
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan
mysite

Men's Classic Casual Lapel Long Sleeve Cashmere Knit Cardigan

$24.99 $79.99
0 sold
Color
Size
Qty 1000 in stock

Buy 2 Get Extra 10% OFF

Buy 4 Get Extra 15% OFF & FREE SHIPPING

Refresh Your Look And Stay In Fashion!

Applicable Scene: Daily

Material:  100%Cashmere

Applicable Season: Fall/Autumn / Winter / Spring

Style: Casual,Classic

Collar: Lapel

Item Type: Tops

Tops Type: Cardigan

Hooded: No

Fabric Type: Broadcloth

Gender: MEN

Color: Black,Blue,Light Grey,Army Green,Khaki

Size: M,L,XL,2XL,3XL,4XL

Style:Classic,Fashion,Casual

Size Chat

Tag
Size
ReferenceReferenceReferenceLengthChestShoulderSleeve
USUKEURcm | inchcm | inchcm | inchcm | inch
M38-4038-4048-5074cm | 29.13''115cm | 45.28''49.0cm | 19.29''65cm | 25.59''
L42425275cm | 29.53''120cm | 47.24''50.5cm | 19.88''66cm | 25.98''
XL44445476cm | 29.92''125cm | 49.21''52.0cm | 20.47''67cm | 26.38''
2XL46465677cm | 30.31''130cm | 51.18''53.5cm | 21.06''68cm | 26.77''
3XL48485878cm | 30.71''135cm | 53.15''55.0cm | 21.65''69cm | 27.17''
4XL5050 6079cm | 31.10''140cm | 55.12''56.5cm | 22.24'' 70cm | 27.56''
跨境出口 秋季纯色雪尼尔开衫毛衣男 日系宽松青年休闲针织衫外套
You May Also Like Don't Like These?
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);