本文實例講述了jQuery實現指定區域外單擊關閉指定層的方法。分享給大家供大家參考,具體如下:
在頁面上指定區域外單擊,關閉層。常見效果為彈出層外單擊,關閉彈出層。今天遇到一個這樣的效果,用jQuery實現起來挺簡單的,順便復習了一下相關知識。
$(document).mouseup(function(e){ if($(e.target).parent("#big_map").length==0){ $("#big_map").hide("fast"); } })
上面的jquery代碼的意思是:當在頁面中釋放鼠標按鍵,觸發function函數。找到觸發事件的包含著所有匹配元素的唯一父元素的元素集合,判斷找到元素的個數。如果等於0,則代表不在指定區域內,關閉指定層。
定義和用法:
e.target:觸發了單擊事件的元素(DOM對象),不會變化,它永遠是直接接受事件的目標DOM元素.
parent([expr]):取得一個包含著所有匹配元素的唯一父元素的元素集合。
length:jQuery 對象中元素的個數。
mouseup事件:
當在元素上放松鼠標按鈕時,會發生mouseup事件。
與click事件不同mouseup事件僅需要放松按鈕。當鼠標指針位於元素上方時,放松鼠標按鈕就會觸發該事件。
mouseup()方法觸發mouseup事件,或規定當發生mouseup事件時運行的函數。