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