0

次のコードでqTipが機能し、ツールチップが生成されます。

$('a.ppname[rel]').live('mouseover', function() {
    $(this).qtip( {
     content : {
      url : $(this).attr('rel')
     },
     position : {
      corner : {
       tooltip : 'leftBottom',
       target : 'rightBottom'
      }
     },
     style : {
      border : {
       width : 5,
       radius : 10
      },
      padding : 10,
      textAlign : 'center',
      tip : true, // Give it a speech bubble tip with
      // automatic corner detection
      name : 'cream' // Style it according to the preset
     // 'cream' style
     }

    });
  });
 });

しかし、qTip は dom から削除されません。時々、消えて再び表示され、開いているツールチップがたくさん表示されます。

代替テキスト

私はdomを見ました.qtipは削除されていないようですが、見えないように設定されています。ツールチップを破棄するには、いくつかの簡単なロジックが必要です。たとえば、a.ppname集中していて、それ以上集中していない場合、それを破壊できます。しかし、それは JavaScript ではどのように見えるでしょうか? 何か案は?

更新: jQuery をqTip に推奨される 1.3.2 にダウングレードしました。ツールチップが開いたままになることはありませんが、別の問題があります。

代替テキスト

今のところ削除できないツールチップは、次のアイテムにカーソルを合わせると表示されるようです。ツールチップを破棄する方法をいくつか提案してください。

更新:使用

$('a.ppname[rel]').each(function(){

コードの最初の行で問題が解決されます。しかし、それは別の問題につながります ここで説明する別の問題qTip ツールチップが表示されない jQuery。ジレンマのようです^:D

4

2 に答える 2

2

あなたが欲しいのは

$('a.ppname[rel]').qtip({
   content : {stuff},
   style : {stuff},
   position: {stuff},
   show: 'mouseover',
   hide: 'mouseout'
})
于 2010-12-10T14:06:14.893 に答える
1

ツールチップが非表示のときにメソッドを呼び出すことで、DOM からツールチップを削除できますdestroy。これを試してください(私がコピーして修正した彼の例についてMattに敬意を表します):

$('a.ppname[rel]').qtip({
   content : {stuff},
   style : {stuff},
   position: {stuff},
   show: 'mouseover',
   hide: 'mouseout',
   onHide: function() { $(this).qtip('destroy'); }
});
于 2010-12-10T14:22:43.040 に答える