在IE 11中,setTimeout函数无法正常工作

6

我正在使用setTimeout函数在Bootstrap模态框中将焦点设置在按钮元素上。以下是我编写的代码片段:

let element = this.el.nativeElement;
setTimeout(() => element.focus(), 200);

这在Firefox和Chrome上运行正常。但在IE 11上,我只能看到按钮闪烁一下就失去了焦点。在这种情况下,我需要做些不同的事情吗?我做错了什么吗?非常感谢您的任何帮助。谢谢。

1
IE的setTimeout实现没有问题,但不支持ES6箭头函数。 - Teemu
明白了!谢谢。 :) - ShellZero
1个回答

26

IE11不支持箭头函数。您需要传递一个函数引用:

setTimeout(function (){ element.focus(); }, 200);

明白了,谢谢 :) 我刚找到这个 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/Arrow_functions - ShellZero
IE做得很好。 - PPr

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接