1

次のコードは、Javascript 関数を標準に準拠した素敵な方法で呼び出しています:)。イベントリスタナーがその甥に関連付けられているため(より良い用語が必要なため)、関数に送信する必要があることに注意してくださいelementsList[i]( this キーワードは適切ではありません)

このややこじれたコードは、elementsList[i] 内の現在のノードの動的な動作のためのコントロール要素を効果的に見つけ、そこにクリック イベント リスナーを追加します。起動されると、クリックされたノードがトグル関数に渡されます。

elementsList[i].previousSibling.lastChild.addEventListener
("click", (function(el){return function(){toggle(el)};})(elementsList[i]),false); 

問題は、IE8 以下ではまったく機能せず、午前中のほとんどを回避策を見つけようとしているにもかかわらず、ボールをプレーさせることができないということです。誰かがこれを IE crapo コードに変換する方法を知っているなら、私はそれを見て感謝します.

4

2 に答える 2

2

やってみました

elementsList[i].previousSibling.lastChild.attachEvent
("onclick", (function(el){return function(){toggle(el)};})(elementsList[i]),false);
于 2011-07-04T12:47:28.917 に答える
0

2つの潜在的な提案。

1.)プロジェクトにjQueryを組み込み、x-browser イベント バインディング (またはmootoolsやその他のライブラリ)を使用します。

2.) あまりお勧めしませんが、独自の x-browser イベント バインドをロールします。

于 2011-07-04T12:48:20.833 に答える