我正在尝试使用if语句来确定提交了哪个按钮/文本框。
例如在firefox / IE / Opera中,当我点击submitNameSearch标记为id的按钮时,以下代码总是返回true;
$(document.activeElement)[0] === $("#submitNameSearch")[0]
但是,当我在chrome / safari中测试我的代码时,返回值为false。
请问我是否做错了什么?
非常感谢你的帮助!
答案 0 :(得分:4)
如果点击后触发,你为什么不这样做:
$('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
}
}
});