【发布时间】:2015-07-18 12:04:07
【问题描述】:
我正在使用 Bootstrap 自己的工具提示,这需要一些初始化。有人告诉我这样做:
Template.myTemplate.rendered = function() {
$('.tooltipped').tooltip()
}
然后我可以通过添加类 tooltipped 和一些 data-tags 来添加工具提示,这里是 Font Awesome 图标:
<i class="tooltipped fa fa-square" data-toggle="tooltip" data-placement="top" title="Whatever the tooltip should say"></i>
问题是这些图标在动态添加时会在项目上生成,并且某些东西会阻止工具提示在新项目上起作用。需要完全重新加载页面才能使它们正常工作。
谷歌搜索问题,我发现了两个假设的解决方案,但都不起作用。
第一个解决方案是将初始化代码包装在 Meteor.defer() 函数中,我对此没有经验,甚至在官方文档中也没有出现。
Template.myTemplate.rendered = function() {
Meteor.defer(function() {
$('.tooltipped').tooltip()
})
}
然而,这似乎没有任何作用。
第二个解决方案根本不是真正的解决方案,只是建议放弃 Bootstrap 的工具提示并安装 lookback:tooltips,但这并不是一个非常愉快的体验完全没有(复杂且不起作用)。
所以我只剩下 Bootstrap 和非反应性。有谁知道如何使它正常工作?
【问题讨论】:
-
这些物品怎么样
dynamically added?你能展示一些生成fresh items的代码吗? -
@SanderGarretsen 通过 mongo
insert... -
在您的示例中,
myTemplate是单个fresh项目的模板实例吗?你有单个项目的模板吗? -
@SanderGarretsen 是的。但这不是一个单一的项目,只是他们的“模型”。
-
好的,不确定您所说的
model是什么意思...但我发布了一个答案,其中包含一些我认为您的代码可能看起来的示例代码。