Traffic cones are essential for ensuring safety and traffic management in both urban and construction areas. At Urban Tex Enterprises, our traffic cones are made from durable materials, providing high visibility with their bright colors and reflective strips. These traffic cones are lightweight yet sturdy, making them easy to transport and set up for directing vehicles, pedestrians, or marking hazardous zones. Ideal for roadwork, parking lots, or event control, our traffic cones ensure clear visibility and effective safety measures.
document.addEventListener('DOMContentLoaded', function () {
const menuSelector =
'.header-navigation nav.navbar-nav, #main-header .navbar-nav';
const margin = 15;
function adjustSubmenu(li) {
if (window.innerWidth < 992) return;
const submenu = Array.from(li.children).find(
el => el.tagName === 'UL'
);
if (!submenu) return;
// Ignore first dropdown; adjust nested levels only
const parentUl = li.parentElement;
if (!parentUl || parentUl.matches(menuSelector)) return;
submenu.classList.remove('urbatex-flip-left');
// Measure even when the submenu is not currently visible
const previous = {
display: submenu.style.display,
visibility: submenu.style.visibility
};
submenu.style.display = 'grid';
submenu.style.visibility = 'hidden';
const parentRect = li.getBoundingClientRect();
const width = submenu.getBoundingClientRect().width;
if (parentRect.right + width > window.innerWidth - margin) {
submenu.classList.add('urbatex-flip-left');
}
submenu.style.display = previous.display;
submenu.style.visibility = previous.visibility;
}
document.querySelectorAll(menuSelector).forEach(menu => {
menu.addEventListener('pointerover', function (event) {
if (window.innerWidth < 992) return;
const li = event.target.closest('li');
if (li && menu.contains(li)) {
adjustSubmenu(li);
}
});
menu.addEventListener('focusin', function (event) {
const li = event.target.closest('li');
if (li && menu.contains(li)) {
adjustSubmenu(li);
}
});
});
window.addEventListener('resize', function () {
document.querySelectorAll('.urbatex-flip-left')
.forEach(el => el.classList.remove('urbatex-flip-left'));
});
});