2014-01-05 3 views
1

가 같은 페이지로 이동 같은 페이지로 이동 두 URL과 일치하는 사이트 URL
https://googledrive.com/host/0B5jOXzxlxbMhaERteVA4cmJwdDg/index.html    ,210     색인 페이지의 URL루프 내 웹 사이트 모두 다음 URL에

나는 탐색 메뉴에서 현재 페이지의 링크 강조 루프가 있습니다

<!DOCTYPE html> 
<html> 

<head> 
    <meta charset="UTF-8"> 
    <title>Index</title> 
    <style> 
     ul { 
      list-style-type: none; 
      margin: 0; 
      padding: 0; 
     } 
     li { 
      display: inline; 
     } 
     a.current { 
      background: red; 
     } 
    </style> 
</head> 

<body> 
    <ul> 
     <li><a href="https://googledrive.com/host/0B5jOXzxlxbMhaERteVA4cmJwdDg/index.html">Index</a> 
     </li> 
     <li><a href="https://googledrive.com/host/0B5jOXzxlxbMhaERteVA4cmJwdDg/news.html">News</a> 
     </li> 
     <li><a href="https://googledrive.com/host/0B5jOXzxlxbMhaERteVA4cmJwdDg/contact.html">Contact</a> 
     </li> 
     <li><a href="https://googledrive.com/host/0B5jOXzxlxbMhaERteVA4cmJwdDg/about.html">About</a> 
     </li> 
    </ul> 
    <h1>Index</h1> 
    <script> 
     for (var i = 0; i < document.links.length; i++) { 
      if (document.links[i].href == document.URL) { 
       document.links[i].className = 'current'; 
      } 
     } 
    </script> 
</body> 

</html> 


지금 문제가 지수 링크를 강조하지 않습니다되어 때를 주요 사이트 URL로 이동하십시오 :
https://googledrive.com/host/0B5jOXzxlxbMhaERteVA4cmJwdDg/

답변

0
for (var i = 0; i < document.links.length; i++) { 
    if (document.links[i].href == document.URL || document.links[i].href == document.URL + 'index.html') { 
     document.links[i].className = 'current'; 
    } 
} 
1

현재 URL이 ".html"로 끝나는 지 여부를 테스트 할 수 있으며 그 전에 "index.html"을 루프 :

var currentURL = document.URL; 
    if (currentURL.slice(-5) != ".html") { 
     currentURL = currentURL.replace(/\/?$/,"/index.html"); 
    } 
    for (var i = 0; i < document.links.length; i++) { 
     if (document.links[i].href === currentURL) { 
      document.links[i].className = 'current'; 
     } 
    } 
+0

대답을 주셔서 감사합니다,하지만 난 그냥 단순한 접근 방식 함께했다. – Mori