2010-03-21 24 views
3

如果我使用了一些非常简单的代码,如:销毁jquery函数和我的对象之间的绑定?

$('#elm').tipTip(); 

它会做什么插件供。有没有办法破坏这个绑定到插件tipTip()将不会长时间绑定到这个元素?

UPDATE

的原因是,这并不是说我想从弹出停止的提示,我有用户会看到一个主数据格,并为他们点击从隐藏层周围的内容以时髦的过渡进入它。

这个插件工作得很好,但是如果我删除内容然后再次添加它(单击其他内容然后再次返回),它们就不起作用。

我认为最好的做法是从我的元素中删除整个提示插件绑定,然后每次将内容移入框中时再次启动,可能不会。

+0

看看这个:http://stackoverflow.com/questions/1548426/unbind-jquery-plugins – 2010-03-21 09:54:23

+0

我没有使用editable()虽然? – tarnfeld 2010-03-21 10:11:18

回答

4

如果问这样一个问题,首先要做的第一件事是,如果你包含一个到你正在使用的插件的链接,那将会很好。你的意思是这个TipTip?如果是的话:

据我所见,这个插件没有内置的功能来“销毁”已经创建的TipTip对象。 (至少在文档中没有这个概念,并且源代码在快速检查中也没有提供这个)。

由于我对插件本身并不熟悉,也没有详细说明如何使用插件,所以我不确定我的解决方案是否适合您。但是,如果有的话,你可以尝试并提供反馈。

这应该会阻止提示提示出现。

$('#elem').unbind('hover'); 

问题与此解决方案:

  • 只解除绑定插件结合本身的事件
  • 的TipTip对象是不是真的删除,但只是不再触发
  • 此次荣获”如果你自己绑定另一个处理程序到这个元素的悬停事件

如果有你可能会考虑取消额外的DOM的TipTip功能在网页上LY一个元素的东西,插件使用过

$("div[id^=tiptip_]").remove(); //remove the tiptip holder/content/arrow divs 
+0

这就是插件,我已经调整了上面的问题。 – tarnfeld 2010-03-21 11:05:16

+0

@jitter,我也浏览了插件源代码,没有用户销毁或取消绑定的实现。 – 2010-03-21 11:16:48

+0

我的解决方案是否适合您? – jitter 2010-03-21 11:42:43

1

我发现,只有重新绑定tipTip()的元素,它会覆盖旧的提示。