jQuery cluetip(’destroy’)不会破坏/删除cluetip?

我试图理解cluetip实际上是如何工作的。 我有一个虚拟DOM结构,我做了一些警告,以检查在锚元素上调用cluetip(’destroy’)后是否已删除cluetip。 然而,cluetip div似乎还活着。 这真让我困惑……

纠正我,如果我错了… AFAIK,cluetip在网页上有1个实例,它存在于标签的层次结构中,即cluetip> cluetip-outer> cluetip-inner。 当它首次附加到html元素(在我的例子中是一个锚点)时,它会将自身附加到DOM结构的某个位置。

所以问题是:在html元素上调用cluetip(’destroy’)实际上会删除cluetip,还是会删除/重置cluetip中的某种变量(如果是这样,哪个变量)? 或者我完全不在这里?

谢谢。

看起来所有的destroy函数都是删除事件触发器(第28-30行)

if (js == 'destroy') { return this.unbind('.cluetip'); } 

如果您想确保cluetip中的数据消失,请自行清除:

 $('#cluetip-inner').empty(); 

更新:要回答关于查看元素是否有任何约束的问题,我将向您推荐我从James Padolsey网站上找到的内容 :

 // List bound events: console.dir( jQuery('#elem').data('events') ); // Log ALL handlers for ALL events: jQuery.each($('#elem').data('events'), function(i, event){ jQuery.each(event, function(i, handler){ console.log( handler.toString() ); }); }); 

*注意: console指的是Firebug控制台。

请尝试以下方法:

 $(this).cluetip('destroy'); $(this).remove(); 

remove()函数也应该取消绑定事件。