ページに複数の a タグがあり、クリックすると現在のページにジャンプします。クリックされたタグが色を変えて強調表示され、他のタグは元の色に戻るにはどうすればよいですか?
JS を使用すると、次のことを実現できます。
現在のページが「1.aspx」であると仮定します。
1. タグ ID の値を設定します。
次のようにコードをコピーします。
<a href="1.aspx?id=1" id="1" target="_parent">""</a>
<a href="1.aspx?id=2" id="2" target="_parent">""</a>
<a href="1.aspx?id=3" id="3" target="_parent">""</a>
2. JS メソッドを記述します。
次のようにコードをコピーします。
<スクリプト>
&(ドキュメント).ready(function(){
var id = windows.ulr.substring(windows.ulr.IndeOf("?id="),1) //ID値を取得します
var currtA = document.getElementById(id); //現在クリックされているタグを取得します。
if(currtA != null)
curtA.style.color = "#f00";
});
</script>
その他の状況で、a タグをクリックしてもページがジャンプしない場合は、次のように記述できます。
次のようにコードをコピーします。
<a href="#" onclick="changeCss(this)">""</a>
<スクリプト>
関数changeCss(obj){
var alist = document.getElementsByTagName("a");
for(var i =0;i < alist.Length;i++){
alist[i].style.color = "#000"; //すべての a タグに原色を割り当てる
}
obj.style.color = "#f00"; // 現在のラベルを強調表示します。
}
//もちろん、Jquery の $("a").removeCss() と addCss() を使用してこれを実現することもできます
</script>