Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
1/13
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags
1/13

Crossbody Bags Men Multifunctional Backpack Shoulder Chest Bags

$22.99
$22.99
Save $0.00
Color.
Please select a color.
Quantity
Over $49.99 Free Shipping
30-day Zero-risk Return
100% Customer Satisfaction
Secure Payments
Customer Reviews

Here are what our customers say.

Write a Review
Customer Reviews
Wow you reached the bottom
Newest
Most liked
Highest ratings
Lowest ratings
×
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.

Product information:

Material: Nylon
Opening method: zipper
The internal structure of the bag: mobile phone pocket, document pocket, computer pocket
Bag size: medium
Bag shapes: square vertical section
Function: waterproof
Processing methods: soft surface
Hardness: Medium
Popular elements: car suture
Carrying parts: soft handle
Strap root number: single
Outer bag type: three-dimensional bag
Lining texture: polyester
Color: khaki, dark blue, black, army green, gray
Size: Length: 18cm, Width: 10cm, Height: 30cm

Packing list:

Backpack*1