Javascript 焦点和选择在 FF 中不起作用

标签 javascript jquery select focus

使用jQuery,下面的在FF里不行,在IE里可以

$(this).focus().select();

我环顾四周,发现您可以使用超时来解决这个问题,但如果可以避免的话,我不想这样做。有谁知道另一种方法可以做到这一点并让它在 FF 中工作?

大都会

最佳答案

我以前也遇到过这个。我相信 setTimeout() 解决方案是在 Firefox 中工作的唯一方法。这个问题与事件处理的顺序有关,如果我没记错的话:IE 会在调用 focus() 方法时立即更改控件焦点,但是 Firefox 通过将焦点事件添加到事件队列来处理它,直到当前事件处理完成后。 setTimeout() 技巧之所以有效,是因为它在焦点更改事件之后将您的代码的其余部分添加到事件队列中的另一个事件,导致它在您的代码继续处理之前解决。

关于Javascript 焦点和选择在 FF 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2562723/

相关文章:

javascript - 将 jQuery 转为普通 JS - 在 h1 之后插入 p 元素

javascript - 如何在输入类型日期中设置占位符 [React]

javascript - 检测 Firefox 中的选项卡可见性

javascript - 悬停时弹出表单 - 如何使其成为页面上唯一的一个?

mysql - 覆盖 MySQL UNION 中的隐含数据库?

MySQL Select 语句 - 来自其他表的值名称

mysql - 在今天和昨天之间选择

javascript - AngularJS dataTable,$http get 不起作用

JavaScript:在继续 while 循环之前等待 n 秒

jquery - 使用 Jquery 发布图像