如何为twitter bootstrap popover设置默认属性值?

时间:2013-07-11 09:08:16

标签: javascript html twitter-bootstrap popover

如何在twitter bootstrap 2和twitter bootstrap 3中手动设置默认值?

我有以下代码,您可以在再次使用的选项中看到相同的属性(我必须覆盖它们,因为它们必须与默认值不同)。

再次使用的三个属性是trigger placement& html

如何在我的javascript中覆盖twitter bootstrap设置的默认选项?

Javascript (在DOM Ready上)

$('.pop1').popover({
    trigger: 'hover',
    placement : 'right',
    html: true, // used once (and the 2 above)
    title : 'My title for popover1',
    content : 'My content with popover1'
});

$('.pop2').popover({
    trigger: 'hover', //used again
    placement : 'right',
    html: true,
    title : 'My title for popover2',
    content : 'My content with popover2'
});

$('.pop3').popover({
    trigger: 'hover', //and again!
    placement : 'right',
    html: true,
    title : 'My title for popover3',
    content : 'My content with popover3'
});

HTML:

<span class="pop1"><i class="icon-info-sign"></i></span>
<span class="pop2"><i class="icon-info-sign"></i></span>
<span class="pop3"><i class="icon-info-sign"></i></span>

我想要类似jQuery验证器(和其他插件):jQuery.validator.setDefaults()

基本上,我如何设置twitter bootstrap 2和twitter bootstrap 3的bootstrap默认值?我希望它能让bootstrap使用我的自定义默认值,所以我不必在整个过程中一遍又一遍地覆盖它们代码,如何自定义它,因此默认值是我指定的值,而不是Twitter Bootstrap 2或Twitter Bootstrap 3。

2 个答案:

答案 0 :(得分:20)

Bootstrap V2 - View the JSFiddle

您可以使用以下命令记录defaults以查看Bootstrap 2设置的所有默认值:

console.log($.fn.popover.defaults); // Log default values to the console

您可以使用以下内容覆盖Twitter Bootstrap 2设置的默认值:

// Make sure jQuery is loaded before trying to override the defaults!
$.fn.popover.defaults.trigger = 'hover';   // Set the default trigger to hover
$.fn.popover.defaults.placement = 'right'; // Set the default placement to right
$.fn.popover.defaults.html = true;         // Set the default html (parse html) to true

<强> View the JSFiddle here

<小时/>

Bootstrap V3 - View the JSFiddle

您可以使用以下命令记录defaults以查看Bootstrap 3设置的所有默认值:

console.log($.fn.popover.Constructor.DEFAULTS); // Log default values to the console

您可以使用以下内容覆盖Twitter Bootstrap 3设置的默认值:

// Make sure jQuery is loaded before trying to override the defaults!
$.fn.popover.Constructor.DEFAULTS.trigger = 'hover';   // Set the default trigger to hover
$.fn.popover.Constructor.DEFAULTS.placement = 'right'; // Set the default placement to right
$.fn.popover.Constructor.DEFAULTS.html = true;         // Set the default html (parse html) to true

<强> View the JSFiddle here


默认值

默认情况下,值设置为以下值(在Boostrap 2&amp; 3中它们相同):

animation: true
container: false
content: ""
delay: 0
html: false
placement: "right"
selector: false
template: "<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>"
title: ""
trigger: "hover"

答案 1 :(得分:2)

要使用AngularJS执行此操作,请参阅:http://angular-ui.github.io/bootstrap/#/tooltip

例如为: $tooltipProvider.options({'placement': 'right'})