Cash on Delivery to Japan,Taiwan HongKong and Singapore ,Free shipping over USD$59
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
4 / 6
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top
You May Also Like Don't Like These?
mysite

Solid Pocket Single Breasted Cardigan Cotton Hemp Long Sleeve Casual Shirt Top

$36.89 $65.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!

Collar Type: Lapel Collar

Sleeve Length: Long Sleeved

Pattern: Solid Color

Thickness: Thin Style

Style Details: Pocket Decoration

Workmanship: Collage/Splice

Fabric: Cotton And Hemp

Size Chat

Tag
Size
ReferenceReferenceReferenceLengthChestShoulderSleeve
USUKEURcm | inchcm | inchcm | inchcm | inch
XS30-3230-3240-4273cm | 28.7''106cm | 41.7''44.4cm | 17.5''63cm | 24.8''
S34-3634-3644-4674.5cm | 29.3''111cm | 43.7''46.2cm | 18.2''64cm | 25.20''
M38-4038-4048-5076cm | 29.9''116cm | 45.7''48cm | 18.9''65cm | 25.6''
L42425277.5cm | 30.5''123.6cm | 48.7''50.4cm | 19.8''66cm | 26''
XL44445479cm | 31.1''131.6cm | 51.8''52.8cm | 20.8''67cm | 26.4''
2XL46465680.5cm | 31.7''138.8cm | 54.6''55.2cm | 21.7''68cm | 26.8''
3XL48485880.5cm | 31.7''146.4cm | 57.6''57.6cm | 22.7''68cm | 26.8''




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);