我想設置一個系統,以便當用戶點擊時,如果該點擊不是源於指定的div內,則應該觸發一個函數與該div的東西。基本上更多的時候,當用戶點擊一個div的外部我想隱藏它,但問題是,我有幾個元素,我想這樣做,所以event.stopPropagation不能很好地工作。如何在指定元素之外發生點擊時執行操作
document.onclick = function (e) {
e = !e ? window.event.srcElement : e.target;
if ($('#toppanel div#panel').not(e.id).is(':visible')) { $('.dashboardNav .addWidget').click(); }
if ($('#TrackRibbon').not(e.id).is(':visible')) { $('.dashboardNav #openRibbon').click(); }
if ($('.subnav').not(e.id).is(':visible')) { $('.subnav').hide(); }
}
但是這並不工作,因爲我想要麼是,它確實有點,但我的頁面上有多個.subnav以及與此,你可以把它們全部打開沒有其他人關閉。
關於如何完成這樣一個目標的任何想法將不勝感激,也如果我沒有解釋得好,只是讓我知道。
你使用jQuery嗎?你似乎是,但沒有標記這樣的問題,如果你使用jQuery,爲什麼不用它來設置你的事件處理程序? – nnnnnn
我正在使用jquery,並且在添加標籤時不小心碰到了輸入,並且沒有添加該標籤。我不知道如何設置處理器 – Zholen