如何測試HTML元素是否關注?我想在未選擇下拉選擇列表時執行代碼。所以,如果您點擊文檔,而不是選擇列表中的任何地方,則JavaScript將取消選中它的所有元素。未選擇檢測元素
此語句不工作:
var items=document.getElementById("items");
items.focused==false;
我希望有人能幫助我。
如何測試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.
需要更多jquery – crush
@crush我知道,對吧? :d –
不是一個確切的重複,但非常接近:http://stackoverflow.com/questions/483741/how -to-determine-which-html-page-element-has-focus –
你可以使用事件'onblur',當某些東西失去焦點時被調用 – RononDex
檢查項目是否=== document.activeElement' – crush