如何为一个元素创建一个函数,比如each()
为多个元素做了什么?
我想做什么,(仅仅是为了示例)
$(".element").each(function () {
var height = $(this).height();
$(this).css("bottom", "-" + height + "px");
});
我应该使用Each()
还是应该使用one()
?
答案 0 :(得分:1)
each()
对于仅包含一个元素的集合也可以正常工作,但在这种情况下它并不是必需的,并且一个元素只引入开销,所以最好简单地写一下
var height = $(".element").height();
$(".element").css("bottom", "-" + height + "px");
还要注意one()
不是替代选择,因为它的目的是附加一个必须只调用一次的处理程序
答案 1 :(得分:1)
如果你只想做一次,只需调用.css函数即可。您可以将匿名函数作为第二个参数传递,以便执行您要执行的操作。
请记住,这仍然会对匹配您的选择器的每个元素执行操作。如果您只想将其应用于一个元素,则需要对选择器更具体。
$(".element").css("bottom", function() {
return "-" + $(this).height() + "px");
});
答案 2 :(得分:0)
jQuery每个都只能与其中的一个元素完美配合。所以你可以继续使用.each安全
答案 3 :(得分:-1)
$(".element").css("bottom", "-" + $(this).height() + "px");
它不需要在函数中