2

jQueryUI ツールチップで ajax 呼び出しを使用すると、複数のインスタンスを選択するとツールチップが閉じないという問題が発生しました。

ここで実証しましたhttp://jsfiddle.net/MHptk/11/

var html = '';
var testbox = $("#testid"); //div element
for (var i=0; i<25; i++) {
html += '<a href="#" title="test!">test!</a><br />';
}

testbox.html(html);

testbox.tooltip(
    {tooltipClass:'preview-tip',
     content: function(callback) {
         $.ajax({url: '/echo/html/',
                 data: {
                     html: 'woop!',
                 },
                 method: 'post',
                 success: function(data) {
                     callback(data);
                 },
         });
     }, 
    });

リンクの上でマウスをすばやく移動すると、ツールチップが閉じないことがわかります。私の実際の例では、それ自体が ajax 要求を行う複数のリンクを含む jquery ajax 呼び出しでテーブルを作成しています。open: を使用してコンテンツを設定しようとしましたが、同じ問題が発生しました。

回避策として、テーブルを作成するときにタイトル属性を直接入力するだけでよいと思いますが、データの揮発性が非常に高いため、これは適切ではありません。

4

2 に答える 2

0

多数のリンクが非常に接近しているだけで、ajax 呼び出しと相まって問題が発生していると思います。それらを少し広げれば、同じ問題は見られません。これは、矢継ぎ早に発火する多数の ajax 呼び出しです。

<p>no link</p>より多くのスペースを確保するために、フィドルにa を挿入しました

新しいフィドルリンク

于 2013-03-28T04:13:12.613 に答える