使用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会出现并被破坏。 但是如果我们在“创建”上单击两次然后在“销毁”上单击,则qtip将不会被破坏。
这是一个测试它的jsfiddle:http://jsfiddle.net/7QmZj/
任何人都知道为什么? 谢谢。
答案 0 :(得分:2)
在创建另一个之前检查qtip是否存在,在创建之前检查是这样的:
if ($("#test").data("qtip")) return;
答案 1 :(得分:1)
页面上是否有多个Qtips用于不同的元素?如果没有,我有一个解决方案,如果您双击创建多次,将从页面中删除所有qtips。
$('#destroy').click(function()
{
$("div[id^=qtip-]").qtip('destroy');
});
只需用地雷替换你的“破坏”位,让我知道这是否有效。