1

背景色を変更する onClick コマンドへのリンクがあります。クリックすると色が変わるのですが、もう一度クリックすると背景色が通常の色に変わるようにするにはどうすればよいですか?

onClick="style.backgroundColor='#3E729F';"
4

2 に答える 2

4

スクリプト要素で関数を定義できます。

<script>
var oldColor;
function switchColor(el) {
   if (oldColor) {
        el.style.backgroundColor = oldColor;
        oldColor = null;
   } else {
       oldColor = el.style.backgroundColor;
       el.style.backgroundColor = '#3E729F';
   }
}
</script>

そしてそれをこのように呼びます:

onclick="switchColor(this);"

デモンストレーション

于 2012-10-14T18:15:46.300 に答える
0

背景色の追加または削除のみが必要な場合は、要素に背景色があるかどうかを確認できます。

<script>
function highlight(e) {
    if (e.style.backgroundColor) {
        e.style.backgroundColor = null;
    } else {
        e.style.backgroundColor = "#ffa";
    }
}
</script>
<div onclick="highlight(this);">a</div>
<div onclick="highlight(this);">a</div>
于 2012-11-24T10:45:16.870 に答える