2014-09-04 59 views
0

我曾在像有源標籤多路試圖其後是當前瀏覽器的URL在輕快菜單欄上的父標籤元素的顏色,JavaScript的等需要改變

<ul id="MenuBar1" class="MenuBarHorizontal"> 
    <li><a href="index.php" class="MenuBarItemSubmenu">Home</a> </li> 
    <li><a class="MenuBarItemSubmenu" href="#">Exam</a> 
    <ul> 
     <li><a href="english.php">English</a></li> 
     <li><a href="math.php">Math</a></li> 
     <li><a href="details.php">Details</a></li> 
    </ul> 
    </li> 
    <li><a href="uklife.php" class="MenuBarItemSubmenu">Uk Life</a> 
</ul> 

當我在的index.php「首頁「的文字顏色會有所不同。當在english.php或math.php或detauls.php中時,「考試」文字顏色將會不同。

回答

0

最後爲了突出顯示當前的url菜單,我得到了這段代碼。我正在工作。

<script type="text/javascript"> 
    var url=window.location.href; 
    var elems = document.querySelectorAll('.MenuBarItemSubmenu'),elem,desiredElemContents; 
    if (url.indexOf('index.php')>-1) 
     desiredElemContents = 'Home'; 
    else if(url.indexOf('english.php')>-1||url.indexOf('math.php')>-1 ||url.indexOf('details.php')>-1) 
     desiredElemContents = 'Exam'; 
    else if (url.indexOf('uklife.php')>-1) 
     desiredElemContents = 'Uk Life'; 
    for(var i=elems.length-1; i>=0; i--) 
     { 
     var elemContents = elems[i].textContent || elems[i].innerText; 
     if(elemContents!==desiredElemContents) continue; 
     elem = elems[i]; 
     break; 
     }; 
    if (elem) 
    { 
    elem.style.backgroundColor= "#ce0808"; 
    elem.style.color="white"; 
    } 
</script>