3

HTML:

<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")
}

但我想知道,我可以通过使用“点击”功能悬停和调用悬停功能吗?

4

1 回答 1

8

.hover()使用.mouseenter().mouseleave()因此您必须改为触发.mouseenter/.mouseleave

来自jQuery .hover 文档

.hover() 方法绑定了 mouseenter 和 mouseleave 事件的处理程序。您可以使用它在鼠标位于元素内时简单地将行为应用于元素。

调用 $(selector).hover(handlerIn, handlerOut) 是以下的简写:

$(选择器).mouseenter(handlerIn).mouseleave(handlerOut);

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

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

例子

于 2013-05-06T13:25:39.773 回答