【发布时间】:2014-06-19 15:49:29
【问题描述】:
在将 bootstrap 3 工具提示应用到 body 下的特定 div 时,我遇到了一个极端情况。
$('body').tooltip({selector: '[data-tt="tooltip"]', container: '.spa > div:first-child', trigger: 'hover', delay: { show: 500, hide: 0 }, placement: function () {
var position = this.$element.data('placement');
if (typeof position !== 'undefined') {
return position;
} else {
return 'bottom';
}
}});
我将工具提示应用于 a、i、输入、按钮、div - 它在悬停时效果很好。当我将鼠标悬停在输入/按钮上然后单击时,然后单击 mouseout - 如果我完美地计时这个边缘情况,工具提示将粘在 dom 上。我没有要分享的网站,但我的问题是,如果不能使用工具提示跟踪每个 dom 元素的历史记录,我将如何清理 BS3-Tooltips ON BODY?
我不能简单地做一个...tooltip(...).on('click', function(this) { ...('hide'); } ..。因为上下文总是正文。而且我需要将工具提示放在该 .spa 中,以便在路由时轻松清除所有工具提示。
附:我已经尝试移除动画、延迟。
【问题讨论】:
-
到目前为止,如果我在正文中添加一个点击事件处理程序,并以这种方式清除所有工具提示,它似乎可以解决我的边缘情况。这是有道理的,因为工具提示是在点击时停留的。
标签: jquery dom twitter-bootstrap-3 jquery-events twitter-bootstrap-tooltip