1

在使用 qtip2 库时,我有以下代码:

HTML:

<div id="test">Test</div>
<br />
<a id="create">Create</a><br />
<a id="destroy">Destroy</a>

Javascript:

$('#create').click(function() {
    $('#test').qtip({content:'test',show: {delay: 0,ready: true,effect: false},hide: false});
});

$('#destroy').click(function() {
   $('#test').qtip('destroy'); 
});

如果我们点击“创建”然后点击“销毁”它工作正常,qtip 出现并被销毁。但是如果我们点击两次“create”然后点击“destroy”,qtip 不会被销毁。

这里有一个 jsfiddle 来测试它:http: //jsfiddle.net/7QmZj/

有人知道为什么吗?谢谢你。

4

2 回答 2

2

在创建另一个 qtip 之前检查是否存在,在创建之前是这样的:

if ($("#test").data("qtip")) return;
于 2013-09-23T13:13:10.853 回答
1

页面上是否会有针对不同元素的多个 Qtip?如果没有,我有一个解决方案,如果您多次双击创建,它将从页面中删除所有 qtip。

    $('#destroy').click(function() 
      {
         $("div[id^=qtip-]").qtip('destroy'); 
      });

只需用地雷替换您的“破坏”位,让我知道这是否有效。

于 2013-09-23T13:07:28.097 回答