我有以下锚元素,点击时应显示Twitter Bootstrap Popover:
<a href="javascript:void(0)" class="popover_toggle" title="View Image">View Image</a>
我还有以下javascript来附加popover并为其设置默认标题:
$('.popover_toggle').popover({
title: 'Login Required!'
});
我希望Popover具有在javascript“Login Required!”中定义的默认标题,而不是在锚元素“View Image”中定义的标题。我怎样才能做到这一点?
答案 0 :(得分:1)
由于http://twitter.github.io/bootstrap/javascript.html#popovers(如果title
属性不存在,则为默认标题值)告诉您:如果您的元素有空或无标题属性,则只能设置标题。
当title选项设置为字符串时,它将在文档就绪时进行评估。在这里使用函数(评估触发器)仍然无效。
Popovers是工具提示类的扩展。它的构造函数调用fixTitle()。 fixTitle()将内容从title-attribute移动到data-orginal-title属性。因为这是在调用setTitle()之前完成的,你不能使用title函数。
解决你的问题否决了popover类的fixTitle():
$.fn.popover.Constructor.prototype.fixTitle = function () { return; }
现在popover将忽略(您的标题属性)并使用您在弹出式调用中设置的标题:
<强> HTML 强>:
<a href="javascript:void(0);" class="popover_toggle" title="View Image">View Image</a>
<强>的javascript 强>:
$.fn.popover.Constructor.prototype.fixTitle = function () {return;}
$('.popover_toggle').popover({
title: 'Login Required!',
});