0

jqueryを使用して、マウスオーバーイベントで画像を表示する簡単なプロジェクトが与えられました。目標は、マウスオーバーの場合にのみ qtip を表示することです。事前にすべてをロード時にバインドし、非常に遅かったです。彼らはqtip 1.0を使用していますが、「再帰エラーが多すぎます」というエラーが発生し、再帰が発生した場所を特定できません。いくつかの調査を行いましたが、イベントのバブリングに関係している可能性がありますが、まだ修正できていません。

$(document).ready(function(){

$( ".employee" ).hover(function(event) {
         event.stopPropagation();
         var content = '<img src="/upload_test/';
        <!--  content += $(this).attr('id'); -->
          content += 'test.jpg';
          content += '" alt="Loading thumbnail..." height="202" width="254" />';

        $("#" + event.target.id).qtip(
          {
             content: content,
             position: {
                corner: {
                   tooltip: 'leftTop',
                   target: 'leftTop'
                }
             },
             style: {
                 height:202,
                 width:280,
             border: {
                 width: 7,
                 radius: 5,
                 color: 'black'
          }
                 // Give it a speech bubble tip with automatic corner detection

             },
            hide: { fixed: true, delay: 1000 }
          });
    });

});
4

2 に答える 2

0

代わりにevent.currentTargetを使用しない理由:

 $("#" + event.currentTarget.id).qtip( ...

また、 currentTarget が特定のクラスまたは ID をクリックしていることを確認して、クリックしているものがトリガーしたい要素であることを確認することもできます

if($(e.currentTarget).is(".some-class")){

     // code goes here for qtip
     $("#" + event.currentTarget.id).qtip( ...
     ...
}

私はあなたのマークアップを見ることができません..しかし、あなたのクリックが何をクリックしたいのかをチェックすることによって、上記のようにイベント委任を使用して、DOMをバブルアップさせません

于 2013-10-14T16:38:15.203 に答える
-1

うーん、問題は、マニュアルをきちんと読んでおらず、間違って実装したことです。今はすべて順調です。

于 2013-10-15T12:07:22.260 に答える