前言
相信大家多少會遇到不管選單還是燈箱視窗,一定要再按一次漢堡鈕或叉叉才能把資訊關閉的情況,這對於使用者來說的確是個不太友善的行為模式,但解決方法其實很簡單,加個判斷式就能輕鬆完工,不用花你太多時間,繼續看下去吧!
( 圖片來源 )
jQuery
$(document).mouseup(function(e) {
var _con = $('目標區域'); // 就是你不希望被點到的 div
if (!_con.is(e.target) && _con.has(e.target).length === 0 ) {
$('.mobile-nav').removeClass('active'); // 功能代碼
}
});
if 裡判斷點擊事件發生在區域外的條件是:
- 點擊事件的對像不是目標區域本身
- 事件對象同時也不是目標區域的子元素