<ul id=getcolor>
<li><a href="#" >11</a></li>
<li><a href="#" >22</a></li>
<li><a href="#" >33</a></li>
<li><a href="#" >44</a></li>
</ul>
我想用jquery獲取當前點擊的<a>標籤的值,並且同時添加一個屬性class。並且把別的<a>標籤的屬性移除
我的代碼是這樣的,已經獲取到了<a>標籤值,但是怎麼添加屬性都不對
var lis = $("#getcolor li");
for(i=0;i<lis.length;i++){
lis[i].οnclick=function(){
alert(this.getElementsByTagName("a")[0].innerHTML);
//在這裏添加屬性和移除別的a標籤屬性,該怎麼寫???
}
}
另外this.getElementsByTagName("a")[0].innerHTML這句,在jquery中有沒有方法代替?
------解決方案--------------------
<script type="text/javascript">
//點擊當前的a添加on類,並給其他a清除類名
$("#getcolor li a").click(function(){
$(this).addClass("on").parent().siblings().find("a").removeAttr("class");
})
</script>
------解決方案--------------------
$("#getcolor li").click(function(){
$(this).children("a").addClass("class1").parent().siblings().find("a").removeClass("class1");
});
------解決方案--------------------
另外this.getElementsByTagName("a")[0].innerHTML這句,在jquery中可替換爲$(this).find("a").eq(0).text()
------解決方案--------------------
因爲a是行內替換元素,對其寬度什麼不太容易統一控制,還是操作li的樣式比較好。
$(function() {
$("ul li").bind("click",function() {
$(this).addClass("selected").siblings().removeClass("selected");
});
});