我正在尝试使用 if 语句来确定提交哪个按钮/文本框。
例如在firefox/IE/Opera中,当我点击标记为submitNameSearch as id的按钮时,下面的代码总是可以返回true;
$(document.activeElement)[0] === $("#submitNameSearch")[0]
但是,当我在 chrome/safari 中测试我的代码时,返回值为 false。
请问我是不是做错了什么?
非常感谢您的帮助!
最佳答案
如果它是通过点击触发的,为什么不这样做:
$('button').on('click', function() {
if (this.id=='submitNameSearch') {
//do something
}
});
并在焦点转移到单击的按钮之前查看哪个元素获得焦点,您始终可以执行以下操作:
var activeElm = null;
$('button').on({
mousedown: function() {
activeElm = document.activeElement;
},
click: function() {
if (activeElm&&aciveElm.id=='submitNameSearch') {
activeElm.focus; //returns focus
}
}
});
关于javascript - chrome中如何获取当前事件元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12898114/