0

同じJSPページが異なるパラメータで同じページの複数の領域にロードされるWebアプリケーションに取り組んでいます。動的JavaScriptはセクションごとに作成されます。問題は、クラス名でjQueryセレクターを使用すると、そのJSPのすべてのインスタンスでそのクラスのすべての要素が返されることです。

私がやりたいのは、その動的javascriptファイルで、ベースの$('。classname')スタイルセレクターをオーバーライドして、リファクタリングなしで... $('<%= containerDiv%> .className')のようなことを行うことです。これを行うためのすべてのコード。

変更しようとしているすべてのコードは1つのjavascriptオブジェクトにカプセル化されているため、コンストラクターでこれを実行したいと思います。

前もって感謝します。

編集:

擬似コードで私が探しているのは...

$(regularConstructor) = $(localVar + ' ' + regularConstructor);
4

1 に答える 1

1

生成しないようにすることもできますが、セレクターのコンテキストを 2 番目の引数として指定するだけです。

これは次のようになります。

var widget = $("<div/>"); //Creating dom node
/*
  Or you can get it by your dinamic id: 
  widget = $("<%=containerDiv%>");
*/
widget.html("<div class='classname'>111</div>"); //Filling it with content
widget.appendTo("body"); //Inserting it to document
$(".classname", widget).fadeOut(); //working with elements inside your widget

そして、セレクターで競合することなくスクリプトで使用できる Dom ノード リンクがあります。

于 2012-07-20T13:19:55.317 に答える