0

いくつかの「見出し」があり、クリックすると展開/色などを変更したい.見出しの1つのクリックでdivを変更して、どちらをクリックしてもプロパティが変更されるようにする方法をいくつか用意しています。 . 問題の 1 つは、単一のインスタンスである必要があることです...前にクリックした後に別の「見出し」をクリックすると、前にクリックしたものを元に戻す必要があります。

したがって...「現在」がクリックしたものである場合:

<script>
Function ClickedHeadline() {
   document.GetElementByID('current').style.width="auto"
   document.GetElementByID('current').style.BackgroundColor="#999"  
}
</script>

たぶん、上記のスクリプトの前にスクリプトを実行して、IDが「現在」のdivに戻り、変更してから上記のスクリプトを実行することができます...

これについてはうまく説明できていないと思いますが、私がやろうとしていることを理解していただければ幸いです。すべての ID とともに別の見出しを作成するたびに関数を作成する必要がなくなります。しばらくすると、非常に混乱するだけです。

4

2 に答える 2

3

大文字と小文字を区別することに同意し、次のように変更したいオブジェクトを追加する方が良いと思います:

 function ClickedHeadline(o) {
   o.style.width="auto";
   o.style.backgroundColor="#999"; 
  }

そして、htmlに追加するだけです

onClick="ClickedHeadline(this);"

私はそれがより良いと思います、あなたは今関数を再利用することができます:) .

于 2013-05-18T22:55:27.870 に答える
0

Javascript は大文字と小文字を区別します。これに置き換えてください

  function ClickedHeadline() {
   document.getElementById('current').style.width="auto";
   document.getElementById('current').style.backgroundColor="#999"; 
  }

(常にセミコロンを使用することをお勧めします)

于 2013-05-18T22:52:40.203 に答える