Emp*_*pty 6 focus angularjs karma-runner
我正在使用业力测试案例测试angularjs中的焦点事件.但要素没有得到集中.在我执行element.focus()并检查元素是否被聚焦之后,我得到了错误.而此时的document.activeElement就是整个身体.
请提出解决方案.谢谢
(这个答案受到测试的启发,专注于AngularJS指令)
您需要将元素添加到文档正文中,以便document.activeElement可以使用它.
在你打电话之前element.focus(),这样做:
element.appendTo(document.body);
Run Code Online (Sandbox Code Playgroud)
此外,如果您在单元测试中执行此操作,我建议您在测试后删除元素,否则每个测试都会向主体添加另一个元素(这可能会影响您的其他测试结果).
afterEach(function () {
element.remove();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2430 次 |
| 最近记录: |