如果我不将autocomplete="off"
放在我的<input type="text" />
上,浏览器有时会用可能/记住的数据填充它们。
这在DOM负载生命周期中何时发生?
似乎是在:
之后$(function(){ alert('i happen before autocomplete'); });
是否在表单自动完成后发生了dom-load事件?
如果是这样,它是什么?
如果没有,嗯,我怎样才能在页面加载时执行一些JS,但是在自动完成之后呢?
解决方案需要跨浏览器
由于
安德鲁
答案 0 :(得分:4)
您可以尝试$(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
});
});
这将仅在字段第一次更改时触发。唯一的问题是浏览器在执行自动完成时是否会触发更改事件。