javascript/jQuery를 처음 사용하고 페이지 URL이 과 일치하지 않으면 CSS 클래스를 요소에 추가하려고합니다. 중 하나 3 개의 현. 이 코드는 작동하지 않습니다.window.location.href가 특정 문자열과 일치하지 않는 경우 요소에 CSS 클래스 추가
if (window.location.href.match(/(interests|ideas|art)/) > -1) {
jQuery("#nav-about").addClass('active');
}
아이디어가 있으십니까? 내 구문이 올바르지 않습니까?
편집 :
그것은 모든 사람들이 저를 작동해야 주신 답변처럼 보이지만, 그들이되지 않습니다. 어쩌면 내 코드의 다른 줄이 충돌합니다.
$(document).ready(function() {
if (window.location.href.search(/(interests|ideas|art)/) > -1) {
jQuery("#nav-about").addClass('active');
}
if (window.location.href.match(/(interests)/) != null) {
jQuery("#nav-interests").addClass('active');
}
if (window.location.href.match(/(ideas)/) != null) {
jQuery("#nav-ideas").addClass('active');
}
if (window.location.href.match(/(art)/) != null) {
jQuery("#nav-art").addClass('active');
}
});
내 사이트는 benxd.me입니다. 이 메인 페이지의 #nav-about
링크는 클래스 active
이 필요한 것입니다. 이 페이지에서는 스크립트가 작동하지 않습니다. 다른 페이지의 스크립트, 관심 분야, 아이디어 및 사진 작업.
하지만 'match() === null'도 올바르게 작동합니다. 맞습니까? – moped
@moped, 예. 그것도 작동하지만'.match()'가 첫 번째 매칭 위치에서 멈추지 않고 전체 문자열을 검색하고 더 많은 정보를 가진 배열을 반환한다는 점을 감안할 때 잠재적으로 좀 더 많은 처리가 필요합니다 (일치하는 것이 발견되면). – Makyen