我在頁面中有5個元素。 我已經選擇他們使用類名稱$('.class')
jquery - 對任何事件執行效果
我想執行一個函數爲那些選定的元素,而不考慮事件(點擊或懸停或watever)。
例如:
$('.class').hover(function(){definition1});
$('.class').click(function(){definition1});
我不想具有2個獨立的事件如上述圖2,代替我想不論其懸停或點擊事件要執行的功能。
我在頁面中有5個元素。 我已經選擇他們使用類名稱$('.class')
jquery - 對任何事件執行效果
我想執行一個函數爲那些選定的元素,而不考慮事件(點擊或懸停或watever)。
例如:
$('.class').hover(function(){definition1});
$('.class').click(function(){definition1});
我不想具有2個獨立的事件如上述圖2,代替我想不論其懸停或點擊事件要執行的功能。
$('.class').bind('click mouseenter', function() {
// Go nuts.
});
(如果使用jQuery> = 1.7,交換bind()
與on()
。)
記住hover()
的第二個參數是mouseleave
的事件,你有沒有在這裏寫東西。
如果要覆蓋大多數事件,請傳遞'模糊焦點focusin focusout載入調整大小滾動卸載點擊dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change選擇提交keydown keypress keyup error'作爲第一個參數。
您也可以嘗試通過遍歷以on
開頭的屬性來檢測它們,但它對我來說聽起來太飄忽不定。
如果你不想給exec的功能沒有任何事件把它放在
$(function(){
function test(){definition1}
});
然後在HTML
<body onload="test();">
我不認爲這是OP的想法。 –
是的。我會說我想要一個類似的。這裏缺少的一件事是,我想選擇元素並執行一個沒有任何事件的操作。 所以,像... $('。class')。function(){} –
我錯誤的理解了這個問題 – tmjam
要綁定多個事件一個元素的jQuery 1.7及更高版本您可以通過以空格分隔事件名稱來執行以下操作:
jQuery('.class').on('click hover mousenter mouseleave', function(event){
// do what you need to do
});
你可以在jsfiddle中看到。
但是:要小心,因爲您可以輕鬆地將事件觸發太多時間(超過必要且綽綽有餘)。通過綁定如此多的事件,可能會不必要地調用某些事件(如上例所示,當鼠標光標離開元素時,代碼將被觸發兩次)。
除了日誌事件之外,您還可以在每個可能的事件上做什麼?你真的想在每一個mousemove事件上運行javascript嗎?我建議你分享你真正想要完成的事情,這樣我們可以提供一個更合適的答案。 – jfriend00