微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – 业力测试案例:焦点事件

我正在使用业力测试案例测试 angularjs中的焦点事件.但要素没有得到集中.在我执行element.focus()之后,检查元素是否正确
我很专注,我很虚伪.而此时的document.activeElement就是整个身体.

请提出解决方案.谢谢

解决方法

(这个答案受到 Testing for focus an AngularJS directive的启发)

您需要将元素添加到文档正文中,以便document.activeElement可以使用它.

调用element.focus()之前,请执行以下操作:

element.appendTo(document.body);

此外,如果您在单元测试中执行此操作,我建议您在测试后删除元素,否则每个测试都会向主体添加一个元素(这可能会影响您的其他测试结果).

afterEach(function () {
    element.remove();
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐