我有两个输入,一个是静态的:
<input type="text" class="someclass" />
等动态:
$("<input />", {
type: "number",
min: "0"
}).addClass("someclass").appendTo($("#someid"));
此代码在静态输入中可以正常工作:
$(document).on("focusout", ".someclass", function(){ alert("hello!");});
但是对于动态输入生成带有警报的无限循环,这种情况仅发生在Chrome中,有人知道吗?
错误是当焦点放在同一个类的其他输入上时
最佳答案
正如Terry所说,警告框不是解决任何JS问题的最佳方法。
用console.log()替换警报表明该事件仅在Chrome和其他浏览器中触发一次。
$("<input />", {
type: "number",
min: "0"
}).addClass("someclass").appendTo($("#someid"));
$(document).on("focusout", ".someclass", function() {
console.log("alert");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="someclass" />
<div id='someid'>
</div>
看到这个答案:
https://stackoverflow.com/a/6869420/529024
关于javascript - Focusout jQuery中的无限循环,仅在Chrome中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41657036/