Así que tuve la solución funcional hasta que decidí cambiar mi página de inicio (porque era solo una página vacía) a uno de mis enlaces de navegación. Ahora, cuando hago clic en el enlace de navegación, me redirige a la página de inicio que no tiene URL, por lo que no se puede encontrar el enlace. Este es el código que usé antes:
var activePage = window.location.pathname; const navLinks = document.querySelectorAll("nav a"). forEach(link => { if (link.href.includes(activePage)) { link.classList.add("current"); } });esto es lo que probé
var activePage = window.location.pathname; if (activePage == "/") { activePage="/ProjectsList" } var d = document.getElementById("navLink3"); /*d.className += "current";*/ const navLinks = document.querySelectorAll("nav a"). forEach(link => { if (activePage == "/AdminPage" || activePage == "/Account/UserProfile") { if (link.href.includes(activePage)) { link.classList.add("current"); } } else { d.className += "current"; console.log("wok")} }); técnicamente llega a la declaración else pero la clase no se aplica. Quiero mencionar que uso asp.net y cambié la página de índice escribiendo en el .cshtml de la página de navegación @page "/" Alguna ayuda?
puedes hacer esto:
d.className = "current"; Instead of:- d.className += "current";