YUI:Module.destroy()的语义是什么

时间:2010-09-20 03:59:50

标签: javascript yui

当用户将鼠标悬停在表单字段旁边显示的错误图标上时,我正在使用YUI工具提示显示错误消息。当错误消失时,我从DOM中删除警报图标,并且也想删除工具提示。为此,我致电tooltip.destroy()。这是正确的方法,还是destroy()用于其他目的? destroy()的文档在这个问题上并不十分清楚。

(我问的是问题,因为如果你在工具提示中调用doHide()后立即销毁工具提示,则会在5秒之后调用hide(),这会导致错误hide()尝试访问由destroy()设置为null的this.cfg。这可能是YUI错误,或者我怀疑,这表示我没有像预期的那样使用API​​。)

1 个答案:

答案 0 :(得分:1)

最好禁用工具提示,而不是tooltip.destroy()。它可能不像破坏工具提示那样具有内存效率,但它避免了问题中提到的问题,其中回调在调用destroy()之前注册,但之后运行很难处理对象的属性{{1 }}。此外,如果工具提示可能正在显示,您可以通过调用null立即隐藏它。总之,代码将是:

hide()