使用 jQuery 检测 HTML5 的自动对焦功能

发布于 2024-11-19 12:41:25 字数 287 浏览 2 评论 0 原文

每当文本字段聚焦在我的网站上时,我都会使用 jQuery 执行一个操作。只要我通过单击手动将焦点集中在文本字段上,一切都会正常工作。

但是:我正在使用 HTML5 的自动聚焦功能,并且 jQuery 没有检测到文本字段已自动聚焦。无论文本字段是手动还是自动聚焦,如何确保我的脚本执行操作?

现在,我正在使用...

$("input:text, input:password").focus(function() { });

...来检测文本字段何时突出显示。

I perform an action with jQuery every time a textfield is focused on my website. Everything works fine as long as I manually focus on the textfield by clicking on it.

However: I'm using HTML5's autofocus feature, and jQuery doesn't detect that a textfield automatically has been focused. How can I make sure that my script performs an action whether a textfield has been manually or automatically focused?

Right now, I'm using...

$("input:text, input:password").focus(function() { });

... to detect when a textfield is highlighted.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

诗笺 2024-11-26 12:41:25

如果您只需要担心初始页面加载时的自动对焦,那么也许是这样的?

在页面加载时触发自动聚焦元素的焦点事件:

<script>
$(document).ready( function () {
  $("input:text, input:password").focus(function () { });//attach the focus event

  $('input[autofocus]').trigger('focus');//force fire it on the autofocus element
});
</script>

If you only need to worry about autofocus on the initial page load then maybe something like this?

Trigger the focus event on autofocus'd elements on pageload:

<script>
$(document).ready( function () {
  $("input:text, input:password").focus(function () { });//attach the focus event

  $('input[autofocus]').trigger('focus');//force fire it on the autofocus element
});
</script>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文