我看到的几乎所有旨在将焦点设置到输入框的网页都将代码添加到正文 onload 事件中。这会导致代码在整个 html 文档加载后执行。从理论上讲,这似乎是一种很好的做法。
但是,根据我的经验,这通常会导致用户的双重工作,因为他们已经在两个或三个字段中输入了数据,并且当他们的光标在他们不知情的情况下跳回时正在输入另一个字段。我见过数量惊人的用户将密码的最后 2/3 输入到用户名字段的开头。因此,我总是在输入之后立即放置 JS 焦点代码,以确保没有延迟。
我的问题是:是否有任何技术原因不将此焦点代码内联?在页面末尾或 onload 事件中调用它是否有优势?考虑到明显的实际缺点,我很好奇为什么它已成为普遍做法。