【发布时间】:2011-07-05 04:03:21
【问题描述】:
当我在输入框上使用dispatchEvent 触发focus 事件时,它的onfocus 被调用,但在UI 上输入框没有聚焦。
这种行为有什么原因吗?
var test = document.getElementById("test");
test.onfocus = function(event) {
console.log('focused');
}
var e = document.createEvent('Event');
e.initEvent("focus", true, true);
test.dispatchEvent(e);
另一方面,这按预期工作。
var test = document.getElementById("test");
test.focus();
我正在调查此问题的原因是我使用 ZeptoJS 来触发事件,它使用 dispatchEvent。
【问题讨论】:
-
你在哪个浏览器上测试过这个? IE8及以下不支持dispatchEvent
标签: javascript events focus dom-events setfocus