Die Urban II Shorts ist mit Nieten der Marke Stuburt und aufgesetzten Gesäßtaschen ausgestattet. Die Kombination aus Polyester und Elastan in diesem neuen, strapazierfähigen Material verleiht dieser Shorts ultimative Bewegungsfreiheit und Komfort. Kleine Details wie die erhabene Stuburt-Keyline-Applikation am hinteren Passe und der inneren Münztasche vorne tragen zum frischen, klaren Look bei.
Merkmale:
96 % Polyester, 4 % Elasthan
Nieten mit Stuburt-Markenzeichen an der vorderen Seitennaht
Hardware-Knopf mit der Marke Stuburt vorne in der Mitte
Lasergeschnittenes Knopfloch
Stuburt Keyline-Logo auf der Rückenpasse
Münzfach innen vorne
Innenliegender, griffiger Bund mit Markenlogo
Innenbeinlänge: 25cm
1 / 5
Urban II Shorts£39.99 £19.99
What golfers say
Independent reviews, collected from Stuburt retailers.
5.0 / 5from 1 review
★★★★★
Great item
True to size absolutely love these and just ordered another colour
NAthan · via Clarkes Golf
Moves with your swingStretch where you need it
Pockets that hold a roundScorecard, tees, phone
True to sizeWaist sizes, measured
British since 1860Founded in Britain
Where the price difference actually goes
Where the price difference actually goes
Feature
These shorts£19.99
Typical short£55+
Stretch for a full turn
Yes, for Stuburt
Yes, for the comparison polo
Room through the middle
Yes, for Stuburt
No, for the comparison polo
No superstar mark-up in the price
Yes, for Stuburt
No, for the comparison polo
British sporting house since 1860
Yes, for Stuburt
No, for the comparison polo
Comparison against widely sold branded golf shorts at UK RRP.
Long enough for the dress code
Plenty of clubs still have a view on shorts. These are cut to keep you out of that conversation.
Full turn, no pull
Stretch where the swing asks for it, so nothing grips at the top of the backswing.
For the four warm weeks we get
Light enough for a July medal, tidy enough for the terrace afterwards.
Machine wash, no fuss
Cold wash at 30, tumble dry low, ready for next weekend.
Est. 1860 · Sergio Garcia’s Fireballs GC wear Stuburt on the LIV tour
`;
};
const bindCarousel = () => {
const carousel = section.querySelector('[data-carousel]');
const prev = section.querySelector('[data-direction="prev"]');
const next = section.querySelector('[data-direction="next"]');
if (!carousel) return;
const cardWidth = () => {
const c = carousel.querySelector('.stb-card');
if (!c) return 0;
return c.getBoundingClientRect().width + (parseFloat(getComputedStyle(carousel).gap) || 20);
};
const update = () => {
const max = carousel.scrollWidth - carousel.clientWidth;
// Edge fade: only where there's more to scroll (crisp resting edges).
carousel.toggleAttribute('data-fade-start', carousel.scrollLeft > 2);
carousel.toggleAttribute('data-fade-end', carousel.scrollLeft < max - 2);
if (!prev || !next) return;
prev.disabled = carousel.scrollLeft <= 2;
next.disabled = carousel.scrollLeft >= max - 2;
};
if (prev) prev.addEventListener('click', () => carousel.scrollBy({ left: -cardWidth(), behavior: 'smooth' }));
if (next) next.addEventListener('click', () => carousel.scrollBy({ left: cardWidth(), behavior: 'smooth' }));
carousel.addEventListener('scroll', update, { passive: true });
window.addEventListener('resize', update);
update();
};
/* Adding to cart is handled by the shared web component
(assets/stuburt-quick-pick.js) — it posts to /cart/add.js and dispatches the
`cart:update` event the mini-cart + cart bubble subscribe to, identical to
the SS26 carousel and the collection page. */
const load = async () => {
const handles = getViewed().filter(h => h && h !== currentHandle).slice(0, limit);
if (!handles.length) return; // stays hidden
const results = await Promise.all(
handles.map(h => fetch(`/products/${encodeURIComponent(h)}.js`, { headers: { Accept: 'application/json' }})
.then(r => r.ok ? r.json() : null).catch(() => null))
);
const valid = results.filter(Boolean);
if (!valid.length) return;
const carousel = section.querySelector('[data-carousel]');
carousel.innerHTML = valid.map(cardHTML).join('');
section.removeAttribute('hidden');
bindCarousel();
};
// Clear all: wipe the stored history and hide the section
const bindClearAll = () => {
const btn = section.querySelector('[data-clear-all]');
if (!btn) return;
btn.addEventListener('click', () => {
setViewed([]);
section.setAttribute('hidden', '');
});
};
bindClearAll();
// If we already have stored handles, reveal section so skeletons show while fetching
if (getViewed().filter(h => h && h !== currentHandle).length > 0) {
section.removeAttribute('hidden');
}
load();
})();
Cookie consent
We and our partners use cookies to personalise your experience, show relevant ads and analyse traffic. We won’t use them for these purposes unless you accept. Privacy Policy.