Cash on Delivery to Japan,Taiwan HongKong and Singapore ,Free shipping over USD$59
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
2 / 9
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)
You May Also Like Don't Like These?
mysite

Men's Lapel Long Sleeve Two Button Basic Blazer (Sold Out)

$49.99 $99.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!

Wearing occasion: work/daily/leisure

Material:Cotton

Sleeve Length: Long Sleeve

Style: Fashion Casual

Style Type: Pure

Season: Autumn/Winter/Spring

Pattern Type: Print

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

Size Chat

Tag
Size
ReferenceReferenceReferenceLengthChestShoulderSleeve
USUKEURcm | inchcm | inchcm | inchcm | inch
M38-4038-4048-5064.5cm | 25.39''112cm | 44.09'' 46cm | 18.11''61.5cm | 24.21''
L42425266.5cm | 26.18''116cm | 45.67'' 47cm | 18.50''63cm | 24.80''
XL44445468.5cm | 26.97''120cm | 47.24'' 48cm | 18.90''64.5cm | 25.39''
2XL46465670.5cm | 27.76''124cm | 48.82'' 49cm | 19.29''66cm | 25.98''
3XL48485872.5cm | 28.54''128cm | 50.39'' 50cm | 19.69''67.5cm | 26.57''

 

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