【问题标题】:Meteor: Is there a way to be notified when a template is take off the dom?Meteor:有没有办法在模板脱机时得到通知?
【发布时间】:2012-10-04 09:44:25
【问题描述】:

模板有一个被销毁的事件,但是当模板不再在 dom 中时该事件被调用。

我想在脱掉dom之前访问模板。

我想在将另一个模板放入 dom 并关闭旧模板之前关闭一个工具提示。

【问题讨论】:

  • 能否向我们展示您实际拥有的东西,或者您尝试过的东西?在这种情况下,如果没有代码,这有点难以回答。

标签: events templates dom meteor


【解决方案1】:

destroyed 是 Spark 目前公开的唯一模板拆卸事件。我认为我们实际上并不能保证它是在节点从 DOM 物理移除之前还是之后调用。

我不完全确定,但听起来你想要做的是在创建模板后手动创建一个浮动工具提示 DIV(我猜来自鼠标悬停事件处理程序,甚至可能来自 created) ,然后在模板离开屏幕时手动将其从 DOM 中删除。这里有一些方法可以解决这个问题:

  • 与其手动创建工具提示 DIV,不如将其放在模板中,然后更改类以显示/隐藏它(可能使用基于鼠标悬停位置设置的会话变量。)

  • 在模板对象的tooltip 属性中保存指向工具提示 DIV 的指针。然后从removed 中删除this.tooltip

  • 给工具提示一个唯一的 id 或类名,并使用 jquery 或 querySelectorAll(或 Meteor 的尚未记录的 DomUtils.find)按 id 或类查找元素并将其删除。

如果这还不够,我愿意添加更多功能,但我需要更好地了解您要做什么 :) 请求新功能的最佳方式(除了自己编写之外) :P) 是提交一个 GitHub 问题,但它需要附带一个详细示例,说明您正在尝试做什么以及为什么需要新的钩子。谢谢。

【讨论】:

    猜你喜欢
    • 2021-09-21
    • 2016-04-21
    • 1970-01-01
    • 1970-01-01
    • 2015-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多