如何测试 HTML 元素是否获得焦点?我想在未选择下拉选择列表时执行代码。所以,如果你点击文档,除了选择列表之外的任何地方,JavaScript 都会取消选择它的所有元素。
此语句不起作用:
var items=document.getElementById("items");
items.focused==false;
我希望有人可以帮助我。
最佳答案
较新版本的 JavaScript 允许这样做:
if( items.matchesSelector(":focus"))
但是对于较旧的浏览器,您可以尝试:
if( document.querySelector("#items:focus"))
但是,这在 IE 7 及更早版本中不起作用。
如果您需要这些支持,那么我会为您的处理程序建议这样的事情:
// some means of attaching a handler(evt) {
evt = evt || window.event;
var target = evt.srcElement || evt.target;
while(target) {
if( target.id == "items") return true;
target = target.parentNode;
}
// #items is not the target. Do something.
关于javascript - 未选择检测元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20953135/