我已经用尽了我的研究使用.one()来满足我的需求,并让它在每个类选择器实例中正常工作,它只显示一次。但是在jQuery.com上它声明以下内容将起作用,如果单击一次,如果使用相同的类选择器单击另一个元素,它将不会再次运行。但是,这对我不起作用。我在一个页面上拥有并且需要相同的特定类选择器。
这里是jQuery.com给出的代码示例:
$("#foo").one("click", function() {
alert("This will be displayed only once.");
});
$("body").one("click", ".foo", function() {
alert("This displays once for the first .foo clicked in the body.");
});
上面的第二个似乎没有像它说的那样起作用。有谁知道如何让这个工作。我可以在几个地方使用.foo,但只有一个.foo被点击后,该函数只显示一次。当点击另一个.foo时,它将不再运行该函数?非常感谢您的任何帮助/建议。
答案 0 :(得分:0)
正如本评论中所述,这是status-bydesign。如果正确读取(如dystroy says,它编写得不好),处理程序只会激活一次,对于与选择器匹配的第一个元素。
为了让这次火灾不超过 每 .foo
元素,你必须自己做(注意我们已经从使用{切换} {1}}到one()
,并自行处理速率限制。
on()
答案 1 :(得分:0)
你可以试试这个:
$(function(){
$(".foo").one("click",function(event) {
alert("This displays once for the first .foo clicked in the body.");
});
});
这只会点击.foo
和alert for one time
。如果再次点击而没有重新加载警报则不会显示。