0

jQuery.data()要素のコレクションに要素のデフォルト値を保存したいと思います。これができないから…

$("#myElement").data('defaultValue', $(this).html());

...$(this)への参照が得られないため#myElement、これを行う最も効率的な方法は何ですか? 次のように、要素を 2 回選択しないようにしています。

$("#myElement").data('defaultValue', $("#myElement").html());
4

5 に答える 5

2

jQueryオブジェクトを一時変数に保存する以外に正しい方法はありません。

var $element = $("#myElement");
$element.data('defaultValue', $element.html()); 

ただ1つの表現である代替案ですが、IMHOははるかに悪いです:

$("#myElement").each(function() { $(this).data('defaultValue', $(this).html()); });
于 2012-06-01T16:17:02.400 に答える
1

えーと。

あなたはそれをハックしようとすることができます:

$("#myElement").each(function(){$(this).data('defaultValue', $(this).html());});

ぶさいくな

または他の投稿を好きにしてください:

var $element = $("#myElement");
$element.data('defaultValue', $element.html());
于 2012-06-01T16:18:18.023 に答える
0
var el = $("#myElement");
el.data('defaultValue', el.html());
于 2012-06-01T16:16:52.420 に答える
0
var myElement = $("#myElement");
myElement.data('defaultValue', myElement.html());
于 2012-06-01T16:17:33.397 に答える
0

パフォーマンスがおかしい場合は、#myElementへの参照を保存することでナノ秒を節約できます。

var $myElement = $("#myElement");
$myElement.data('defaultValue', $myElement.html());
于 2012-06-01T16:18:04.753 に答える