29

私はjQueryを使用してWeb環境で開発しています。

理由を知りたい

 $("#a#trigger").trigger('mouseenter');
 $("#a#trigger").trigger('hover');
 $("#a#trigger").trigger('mouseover');

これらの3つはすべて、私が持っているホバー機能をアクティブにするために機能していません。

$(function() {


        $('a#trigger').hover(function(e) {
          $('div#pop-up').show();

             }, function() {
          $('div#pop-up').hide();
        });

     });

      });

a#triggerはアンカーの名前であり、#pop-up私のWebのdiv要素です。

問題は、FullCalendarプラグインのイベントにマウスオーバーしたいのですが、それらの関数が機能しないことです。ありがとう。

4

2 に答える 2

82

あなたは正しい方向に進んでいます。問題は#セレクターの余分な部分です。最初のハッシュを削除するだけです。

$("a#trigger").trigger('mouseenter');

IDは一意である必要があるため、要素タイプを指定する必要がなく、$('#trigger')より効率的であることに注意してください。

また、次の点にも注意してください。

jQuery 1.8で非推奨、1.9で削除:"hover"文字列の省略形として使用される名前"mouseenter mouseleave"。これらの2つのイベントに対して単一のイベントハンドラーをアタッチし、ハンドラーはイベントがであるかどうかを判断するために調べる必要がevent.typeあります。疑似イベント名を、1つまたは2つの関数を受け入れるメソッドと混同しないでください。mouseentermouseleave"hover".hover()

于 2012-06-17T21:15:12.290 に答える
9

jQueryセレクターは次のように記述する必要があります。

$('a#trigger');

それ以外の$('#a#trigger');

jQueryでは、セレクターの#はIDと一致します。この場合triggerはIDですaが、HTML要素であり、プレフィックスは必要ありません。

最終的なコードは次のようになります。

$("a#trigger").trigger('mouseenter');
$("a#trigger").trigger('hover');
$("a#trigger").trigger('mouseover');
于 2012-06-17T21:14:49.417 に答える