2011-07-22 93 views
0

目標:
當您輸入地址計算或project.html時,菜單中的一個主要元素應根據您輸入的網頁標記背景顏色。例如,如果您輸入的是calculate.html,則應選擇名爲Calculation(來自菜單)的選擇項,以便與其他背景色相比較。在網頁中添加背景顏色

問題:

我不知道如何通過具有背景色,一旦你 單擊的鏈接做一個標記。我想要用jQuery編寫代碼。

如果可能的話,最好在元素「a href」中添加「id」來改變背景顏色。

jQuery的值「Project」和「calculation」是html代碼中元素標題的值。

HTML:

<div id="nav-menu"> 
    <ul id="kthh"> 
     <li><a href="calculation.html">Kalkylering</a></li> 
     <li><a href="project.html">Projekt</a></li> 
    </ul> 
</div> 

的Javascript:

$(document).ready(function() 
{ 

var data = $('title'); 

    if(data[0].textContent == "Project") 
    { 
     $('#kthh').closest('li').next('li').find('a').addClass("asdd"); 

    } 
    if(data[0].textContent == "calculation") 
    { 
     //$('title').html('someHTML'); 
    } 

}); // ready 

CSS:

/* Menu for display */ 

#nav-menu ul 
{ 
    list-style: none; 
    padding: 0; 
    margin: 0; 
} 

#nav-menu li 
{ 
    float: right; 
} 

#nav-menu li a 
{ 
    height: 70px; 
    line-height: 110px; 
    float: left; 
    padding-left: 13px; 
    padding-right: 13px; 
    display: block; 
    color: #FFFFFF; 
    text-decoration: none; 
    text-align: center; 
    font-family: Verdana; 
    font-weight:bold; 
} 

#nav-menu li a:hover { background: #AA1133;} 

#nav-menu li.last-child { padding-right: 50px;} 

.asdd 
{ 
    background: #AA1133; 
} 
+1

這種情況往往是做服務器端。你使用哪種服務器端技術?任何理由必須是客戶端?一般來說,你應該嘗試設計一些東西,這樣即使js沒有啓用,它們也能工作。 – mrtsherman

+0

我明白了。在這種情況下,我只能使用html,css和javascript。 –

回答

0

我認爲你不應該使用textcontenttext

$(document).ready(function() 
{ 

    var data = $('title'); 

    if(data[0].text() == "Project") 
    { 
     $('#myFirstButton').addClass("asdd"); 

    } 
    if(data[0].text() == "calculation") 
    { 
     //... 
    } 

}); 

您可以通過添加一個ID所有的按鈕也簡化你的生活:

<div id="nav-menu"> 
    <ul id="kthh"> 
     <li><a id="myFirstButton" href="calculation.html">Kalkylering</a></li> 
     <li><a id="mySecondButton" href="project.html">Projekt</a></li> 
    </ul> 
</div>