0

以下の行がmootoolsで正しいかどうか誰かに教えてもらえますか?:

document.getElementById("step-1").getElements('.saved strong.savTitle').set('html', "Billing");

この行をjspに追加すると、「オブジェクトはこのプロパティまたはメソッドをサポートしていません」というjsエラーが発生します。

4

1 に答える 1

0

これに関するいくつかの小さな問題:

document.getElementById('step-1')mootools ではdocument.id('step-1')、どちらも要素を返しますが、mootools は Element プロトタイプから継承しない古い IE にプロトタイプ メソッドをインストールし、要素の uid とストレージを設定します。

IE6、7、および 8 でそうしないと、投稿しているエラーが発生します。

2番目

このエラーが発生した場合は、呼び出しを分割して、チェーンのどこでデバッグに失敗したかを確認する必要があります。参照を var に保存し、後でメソッドを適用することをお勧めします。

三番

複数の要素を取得し、コレクションを呼び出しています。これは、MooTools がループ.set()を介してすべてのメンバーに自動的に適用されます。eachコレクションでチェーンを使用する必要があり、それが複数のアクションである場合は、.each複数の繰り返しを避けるために自分で行う必要があります。

最後に

これを単一のセレクターに固定できます。

document.getElements('#step-1 .saved strong.savTitle').set('html', 'hai'); 
$$('#step-1 .saved strong.savTitle').set('html', 'hai'); // also same.

これは、QSA を備えたブラウザで最も速く動作します。

于 2013-03-01T15:11:45.600 に答える