如果我不放autocomplete="off"
在我的<input type="text" />
上浏览器有时会用可能/记住的数据填充它们。
在 DOM 加载生命周期中什么时候会发生这种情况?
它似乎是在之后:
$(function(){ alert('i happen before autocomplete'); });
表单自动完成之后是否发生 dom-load 事件?
如果是这样,那是什么?
如果没有,呃,我该怎么做才能“在页面加载时”执行一些 JS,但在自动完成之后?
解决方案需要跨浏览器
谢谢
安德鲁
最佳答案
您可以尝试一下$(window).load(callback)
。这将等到所有内容都完全加载(图像等),而不是像 $(document).ready
那样在 DOM 加载之后。
我不能 100% 确定它是否发生在自动完成之前,但它肯定会发生在 DOM 准备好之后。
或者,您可以尝试在 DOM 准备就绪时注册“一次性”更改事件处理程序,如下所示:
$(document).ready(function() {
$('input').one('click', function() {
// do whatever you wanted to do when it first changed
});
});
这只会在字段第一次更改时触发。唯一的问题是浏览器在执行自动完成时是否会触发更改事件。
关于jquery - 浏览器文本框自动完成事件,什么时候发生?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1567610/