2013-05-06 21 views
3

HTML:jQuery可以點擊調用懸停功能嗎?

<div class="hover">hover</div> 

<div class="click">click</div> 

的jQuery:

$('.hover').hover(function(){ 
    alert("hovered!"); 
}); 

$('.click').click(function(){ 
    $('.hover').hover(); 
}); 

此代碼是不行的,但我可以這樣做$('.hover').hover()

遊樂場:http://jsfiddle.net/wbFLH/


PS:我知道我能做到像

$('.hover').hover(function(){ 
    func(); 
}); 

$('.click').click(function(){ 
    func(); 
}); 

function func() { 
    alert("something") 
} 

但我想知道,我可以懸停,並通過使用調用懸停功能「點擊「功能?

回答

8

.hover()使用.mouseenter().mouseleave()因此您必須改爲觸發.mouseenter/.mouseleave

jQuery .hover docs

的.hover()方法結合處理程序兩者的mouseenter和鼠標離開事件。您可以使用它在鼠標位於元素內時簡單地將行爲應用於元素。

調用$(選擇器).hover(handlerIn,handlerOut)可以簡寫:

$(選擇器).mouseenter(handlerIn).mouseleave(handlerOut);

$('.hover').hover(function(){ 
    $('code').append('l'); 
}); 

$('.click').click(function(){ 
    $('.hover').mouseenter(); 
}); 

EXAMPLE

+0

Yeahhhh,謝謝'.mouseenter()' – l2aelba 2013-05-06 13:27:06

+1

媽的,7個secondes,我不得不刪除我的(upvoted)回答,因爲沒用:) – 2013-05-06 13:27:32

+0

@dystroy還是要謝謝你:d – l2aelba 2013-05-06 13:28:09