我想在该元素的jQuery.data()
集合中存储元素的默认值。因为我不能这样做......
$("#myElement").data('defaultValue', $(this).html());
...因为$(this)
没有给我#myElement
的参考,最有效的方法是什么?我试图避免像这样两次选择元素:
$("#myElement").data('defaultValue', $("#myElement").html());
答案 0 :(得分:2)
除了将jQuery对象保存在临时变量中之外,没有理智的方式:
var $element = $("#myElement");
$element.data('defaultValue', $element.html());
一个只有一个表达的替代,但恕我直言的情况要糟糕得多:
$("#myElement").each(function() { $(this).data('defaultValue', $(this).html()); });
答案 1 :(得分:1)
Ehhh。
你可以试着破解它:
$("#myElement").each(function(){$(this).data('defaultValue', $(this).html());});
或者像其他帖子一样:
var $element = $("#myElement");
$element.data('defaultValue', $element.html());
答案 2 :(得分:0)
var el = $("#myElement");
el.data('defaultValue', el.html());
答案 3 :(得分:0)
var myElement = $("#myElement");
myElement.data('defaultValue', myElement.html());
答案 4 :(得分:0)
如果你是一个表演怪胎,你可以通过保存对#myElement的引用来节省纳秒:
var $myElement = $("#myElement");
$myElement.data('defaultValue', $myElement.html());