🎁Free Shipping on Orders Over $59🎉
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
1 / 11
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
2023 New Design Sports Backpacks
50% OFF
Fnkus

2023 New Design Sports Backpacks

$29.99 $59.99
0 sold
Color
Qty 1000 in stock

undefined

  • Light & Large Capacity: The size of the backpack is 16.9"*13.4", which can accommodate most sports and daily items, such as basketball, gym clothes, swimming gear, sports towels, textbooks, shoes, etc.; the weight is only 0.83 lbs ( 0.38kg), very light.

undefined

undefined

  • Multi-Pocket Design: Side mesh pockets with elastic straps on both sides of the sports bag backpack can accommodate water bottles, umbrellas; front pocket can store tissues and toiletries; the bottom is an independent shoe compartment;There is also an extra interior zippered pocket inside the rope bag, which is big enough to hold small valuables like sports watch, wallet, etc. to avoid the pickpockets

undefined

  • Waterproof and Durable Materials: Our drawstring backpack bag is mainly made of high-density and durable material, and the inner lining is polyester, which is waterproof, can withstand daily wear and tear

undefined

  • Widened Shoulder Straps and Adjustable Design: Our backpack shoulder straps are wider than ordinary drawstring shoulder straps, which can reduce the burden on your shoulders; in addition, the shoulder straps are adjustable and can be adjusted according to the length you need

undefined

undefined

undefined

undefined

  • Great Helper for Going Out: The backpack is perfect for gym, sports, yoga, dance, travel, luggage, camping, hiking, teamwork, training, etc. It is a great gift for women, men and children

undefined

Feature:
The shoulder straps are padded and can be adjustable with loops,Grab top handle,Wearable and Durable. 
Movement: Gym/swimming/outdoor sports
Gender: Men and Women 
Material: Oxford
Size: L34*W15*H43CM  L13.38INCH*W5.9*H16.9INCH
Color: Orange, Black, Deep Blue, Yellow, Gray, Purple

Note 1: There might be slightly difference in color, because of the computer monitor settings.
Note 2: With the difference in the measurement method, please allow 1-3 cm in size deviation.
Note 3: New bag just come out from factory, therefore it will be a little smell

undefined

undefined

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