1

重複の可能性:
ホバー() でデリゲート() を使用しますか?

私はこのコードを試していますが、どうやら何か間違っているようです。このコードでは、hover効果は機能しません。

ただし、次のようなもの$('.group>span').hover (function() {はうまく機能しますが、html()コンテンツを委任する必要があります。

<div class="group">
    <span></span>
</div>

$('.group>span').delegate("hover", "a", function() {
    $(this).html('<a href="#new_list">Some button</a>');
}, function() {
    $(this).empty();
});​

何か案が?ありがとう

4

2 に答える 2

0

hovermouseenterは、 andの単なる便利なラッパーmouseleaveです。それぞれ個別に対応する必要があると思います。

于 2012-04-10T01:10:17.653 に答える
0

に渡す引数の数delegateが無効です。4を渡しますが、3 しかかかりません。

.delegate( selector, eventType, handler(eventObject) )関数シグネチャです。
そして、コード内のパラメーターの順序が間違っています! セレクターとイベントタイプを入れ替えました

あなたはこれを書きました:

$('.group>span').delegate ("hover", "a", function() {

この順序である必要がありますが:

$('.group>span').delegate ("a", "hover", function() {

delegateとにかく、hoverこの方法で使用できます:

$('.group>span').delegate("a", "mouseenter", function() {
    $(this).html('<a href="#new_list">Some button</a>');
});

$('.group>span').delegate("a", "mouseleave", function() {
    $(this).empty();
}​);

LIVE DEMO
この質問の別の方法を見ることができます:
Using delegate() with hover()?

于 2012-04-10T01:10:45.907 に答える