如何使用动态类data-attr扩展Bootstrap 3 popover/tooltip?
问题描述:
如何在bootstrap核心文件之外添加以下修复程序?如何使用动态类data-attr扩展Bootstrap 3 popover/tooltip?
此问题已在之前发布,而且此修补程序确实可以像魅力一样工作。但它需要编辑核心文件。 here!
在Tooltip.prototype.show功能:
$tip
.detach()
.css({ top: 0, left: 0, display: 'block' })
.addClass(placement)
添加下面的作品加载类喜欢一个魅力:
.addClass(this.$element.attr("data-class"))
所以,现在只要添加data-class
到酥料饼的调用,它将该属性添加到<div class="popover">
div。
不利的一面是你必须编辑核心文件来实现这一点。我只是稍微精通了jQuery,这让我的大脑发抖,但我认为必须有一种方法来解决.addClass()作为Tooltip Prototype的扩展。也许使用.extend()?
答
!function($){
$.extend($.fn.tooltip.Constructor.DEFAULTS,{
dataClass: false
});
var Tooltip = $.fn.tooltip.Constructor;
_show = Tooltip.prototype.show;
Tooltip.prototype.show = function(){
_show.apply(this,Array.prototype.slice.apply(arguments));
if (this.options.dataClass!=="undefined" && this.options.dataClass){
var that = this;
var $tip = this.tip();
if (this.$element.attr("data-class") !== undefined)
$tip.addClass(this.$element.attr("data-class"));
}
};
}(jQuery);
- 在部署工具提示功能时添加“dataClass”。 –
- 在元素上创建数据类属性 –