jQuery中的on()方法,是用來處理事件委托的。它的語法如下:
$(selector).on(event, childSelector, data, function)
其中,event是要處理的事件類型,如click、mousemove等。而selector則表示要綁定事件的元素。
而我們要關注的,是on()方法中的childSelector參數。它是可選項,表示對哪些子元素的事件進行監聽。但是,它還有一個非常重要的功能,那就是在事件觸發時排除一些元素。
這個功能,多用于拖拽等特殊事件場景。比如,我們要實現一個可以拖拽的
,但是
內部又有一些元素是不能觸發拖拽事件的,比如按鈕、鏈接等等。那么,我們就需要使用排除功能,來去除這些元素的影響。
具體的實現方法是,使用:not()選擇器,來排除不需要觸發事件的元素。如下所示:
$(".drag-area").on("mousedown", ".draggable:not(.exclude)", function(e) {
//執行拖拽操作
})
上面的代碼,表示在拖拽區域中,選中帶有.draggable類名的元素,但是不包括帶有.exclude類名的元素。這樣,就可以排除這些元素的干擾,實現拖拽效果。
總之,jQuery的on()方法排除功能功能非常強大,在特殊場景下能發揮重要作用。需要大家在實際開發中多加使用,熟能生巧。
上一篇流動的城市css網頁設計
下一篇jquery on 版本