$("#aaa").on("input propertychange","input", function() {
});
如何对每个input元素(包括后面生成的input)只触发一次?
$("#aaa").on("input propertychange","input", function() {
});
如何对每个input元素(包括后面生成的input)只触发一次?
var b=0
$("#aaa").on("input propertychange","input", function() {
if(b==1)
{
}
else
{
//你的代码
b=1
}
});
那你只有自己记录哪些节点被点过了,使用 .one
肯定不行。
$("#aaa").on("input propertychange", "input", function(event) {
if (event.target.classList.contains('clicked')) {
return;
}
event.target.classList.add('clicked');
// do what you need to do
});
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
6 回答1.1k 阅读
3 回答1.3k 阅读✓ 已解决
data-*
自定义属性,jQ有现成的API可以支持).one()
来绑定事件;或者使用.on()
,然后在回调里用$(this)
+.off()
掉这个事件就行了。当然嫌事件名太长的话,可以加命名空间$(this).data('do')
这样的语句,执行前判断一下它的值,如果执行过就直接跳出回调就好了。