
直接操作鼠标事件可以正常获取所触发元素的焦点,例如document.activeElement.value等。但如果我们要通过另外一个按钮事件来使某个元素获得焦点,在火狐和谷歌浏览器下测试返回获取焦点的对象是父级的body。解决方法是创建一个setTimeout将获取焦点的函数置后一小段时间执行。
function get_focus(){
setTimeout(function(){set_focus_event();}, 200);
}
function set_focus_event(){
//给某个元素获取焦点 ...
alert(document.activeElement.value);
}