Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
1/11
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
Mens All-terrain Versatile Tactical Jacket
1/11

Mens All-terrain Versatile Tactical Jacket

$119.99
$129.99
Save $10.00
It's been recommended by 683 people on Facebook, Twitter and Instagram
Color
Please select a color
Size
Please select a size
Quantity
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);
Weight: 0kg
Barcode:

PRODUCT SIZE

undefined

The new design is higher functioning, more stylish and even more abuse proof. It still retains the signature articulated spine pad, but has also been equipped with double layer elbow sleeves that accept  articulated padding system.

FEATURES

  • Polyester fiber for great weather and wind resistance
  • Double layer elbows and shoulders
  • 12 pockets
  • Interior hammock pockets
  • Interior zippered pockets
  • Articulated spine pad
  • Articulated arms
  • Emergency drag strap
  • Elbow insert sleeves for  padding system
  • Cinching waist

Specifications

  • Material: Polyester fiber
  • Color: Light green/Army Green/Khaki/Black/8060*Khaki
  • Product size: S-3XL
  • Product weight: 600g
  • Package includes: 1 x Mens All-terrain Versatile Tactical Jacket

Notes

  • Due to manual measurements, please allow slight measurement deviations.
  • Due to the different display and lighting effects, the actual color of the item may be slightly different from the color displayed in the picture.

Men's Wear