我使用的是Bootstrap 2.3.2。我的工具提示如期显示,但是当鼠标悬停在触发元素上时,工具提示和触发元素都被隐藏起来。有一种内联样式的display:none应用于触发元素。
诊断为什么会发生这种情况的最佳方法是什么?我担心这可能是另一个冲突的JS库,但我不确定如何捕获将display:none添加到触发元素的事件。
发布于 2013-06-27 01:02:29
实际上,我发现这是Prototype和Bootstrap 2.3之间的交互导致的命名空间冲突。
https://github.com/twitter/bootstrap/issues/6921
最好的办法是现在在bootstrap.js中注释掉行this.$element.trigger(e),或者使用3.0WIP。
发布于 2015-08-17 20:22:24
无需对bootstrap.js进行任何更改的解决方案
<span data-toggle="tooltip" data-placement="right" title="Tooltip on right">info</span>jQuery
jQuery(document).ready(function(){
jQuery('[data-toggle="tooltip"]').tooltip();
jQuery('[data-toggle="tooltip"]').on("hidden.bs.tooltip",
function() {
jQuery(this).css("display", "");
});
});发布于 2016-02-08 18:34:35
在包含以下内容的jquery.js后面添加此内容
jQuery.noConflict();
//Remove conflict between prototype and bootstrap functions
if (Prototype.BrowserFeatures.ElementExtensions) {
var disablePrototypeJS = function (method, pluginsToDisable) {
var handler = function (event) {
event.target[method] = undefined;
setTimeout(function () {
delete event.target[method];
}, 0);
};
pluginsToDisable.each(function (plugin) {
jQuery(window).on(method + '.bs.' + plugin, handler);
});
},
pluginsToDisable = ['collapse', 'dropdown', 'modal', 'tooltip', 'popover', 'tab'];
disablePrototypeJS('show', pluginsToDisable);
disablePrototypeJS('hide', pluginsToDisable);
}https://stackoverflow.com/questions/17310327
复制相似问题