我有以下CoffeeScript:
$ ->
$("[rel='tooltip']").tooltip
html: false
delay: { show: 500, hide: 100 }
placement: 'bottom'
这会在页面加载时设置Twitter Bootstrap tooltips。我的问题是我将AJAX链接加载到选项卡中,我需要在加载AJAX的内容中设置工具提示。我认为解决方案是使用on
,但我无法弄清楚要调用它的元素以及要使用的事件。我试过了:
$(document).on 'ready', "[rel='tooltip']", ->
console.log 'setting up tooltips'
但是控制台消息从未出现过,所以这似乎不起作用。
我想要一段代码来设置加载时页面上的任何工具提示,以及将来出现的任何工具提示。
编辑: charlietfl's answer做到了!在$ ->
回调之外,我放置了:
$(document).tooltip
selector: "[rel='tooltip']"
html: false
delay: { show: 500, hide: 100 }
placement: 'bottom'
现在我已经在页面中设置了工具提示,并且设置了加载AJAX的标签中出现的新工具提示。
答案 0 :(得分:2)
Bootstrap已经内置了委托方法。使用selector
选项委派代码运行时不存在的未来元素:
$(document).tooltip({
selector: "[rel='tooltip']"
/* other options*/
})
参考:http://twitter.github.com/bootstrap/javascript.html#tooltips
答案 1 :(得分:0)
您可以设置全局ajax事件处理程序,例如ajaxSuccess()
:
$(document).ajaxSuccess(function() {
$("[rel='tooltip']").tooltip({ //... etc
每次新的ajax调用成功时,这将运行回调并附加工具提示。