这里有一个代码库来演示我所看到的:https://codepen.io/anon/pen/zMvxPy
HTML:
<input type="text" />联署材料:
$('input').on('focus', () => {
console.log('focused...')
});
$('input').focus();在Chrome上,文本输入将接收焦点,并触发“焦点”事件。在Firefox (63.0.1)上,文本输入没有焦点,焦点事件也没有触发。
但是,您可以单击文本输入,“焦点”事件将正确启动。
对于为什么.focus()方法不触发火狐中的“焦点”事件有任何解释吗?
注意:我知道调用.focus()是通过类似于按钮单击(如在field中)的方式工作的,但是这个示例用于在初始页面加载期间调用.focus()。
发布于 2018-11-08 13:34:01
对于其他遇到这种情况的人,我发现我打开了Firefox工具,Firefox将焦点放在页面加载上,而不是在初始呈现过程中调用.focus()的任何项。
以下是几点意见:
.focus()调用。ngAfterViewInit()中调用ngAfterViewInit()也会被Firefox最初关注的开发控制台所覆盖。
https://stackoverflow.com/questions/53175151
复制相似问题