Bootstrap's弹出窗口只工作于按钮-不锚或跨度
Bootstrap's popover only working on buttons - not anchors or spans
我包括tooltip.js和popover.js。
当我的标记看起来像这样:
<button class="popover-dismiss" data-toggle="popover" title="sheen"
data-content="<a href="sheen60">60</a>, <a href="sheen80">80</a>">
PDS
</button>
用JS $('.popover-dismiss').popover({
trigger: 'focus',
html: 'true'
})
那么一切都很好。然而,当我把button
换成a
,它就坏了。控制台中没有错误。它只是简单地不给弹出窗口。
<a href="javascript://" class="popover-dismiss" data-toggle="popover" title="sheen"
data-content="<a href="sheen60">60</a>, <a href="sheen80">80</a>">
PDS
</a>
完全相同的属性。只是一个锚而不是一个按钮。我也尝试过使用span,但似乎也不起作用。
好了,原来Twitter Bootstrap有个bug。它已经被打开和关闭了几次。
目前有一个解决方案:
1)初始化引导弹出窗口时不要使用trigger: focus
2)使用data-trigger="focus"
作为触发弹出窗口
的项的属性3)有弹出窗口的项目需要显式声明tabindex="-1"
。
跨浏览器工作示例:http://jsfiddle.net/v5L7m/3/
我也在一个真实的用例场景中证实了这一点。
编辑: @xanderiel注意到tabindex=0
现在似乎导致浏览器原生焦点边界,这是我最初的答案所要求的。他们说-1
的tabindex可以消除这个边界
好吧,我想如果你想使用"focus"作为触发器,你的元素必须是可聚焦的。设置tabindex强制元素可聚焦,这就是为什么当tabindex设置后trigger "focus"开始工作。
如果你不希望用户在按tab键时停下来,可以考虑使用-1的tabindex。
这就是它的全部。触发器:focus可用于JS初始化
不需要变通或其他方法。如果你通过JS设置信息,它工作得很好,这里有一个例子:
HTML:<a tabindex="0" class="btn btn-lg btn-danger" role="button" data-toggle="popover" title="Dismissible popover" data-content="And here's some amazing content. It's very engaging. Right?">Dismissible popover</a>
JS:
$(function() {
$(document).popover({
selector: '[data-toggle=popover]',
trigger: 'focus'
});
});
JSFiddle: https://jsfiddle.net/s02ykLo2/
尝试为popover()
呼叫设置container: 'body'
选项。
- 为什么我的导航按钮或按钮文本不会移动到中心
- Javascript测验,有4个问题.单选按钮+继续按钮
- 使用两个按钮(提交按钮和普通按钮),它们应该以不同的方式提交相同的表单
- 如何通过单击另一个按钮使按钮可见
- 为什么jqueryUI按钮和按钮集的位置不同
- 单选按钮切换按钮问题
- Selenium Webdriver,单击一个不是真正按钮的按钮
- 我的加载更多功能适用于按钮单击,但它不适用于滚动
- AngularJS:ng-单击不起作用,适用于<按钮>
- 引导下拉列表永久显示 - 不特定于按钮单击
- 如何将函数应用于按钮
- onclick事件仅适用于按钮,而不适用于与按钮一起使用的glyphicon
- 类似于按钮不递增计数
- 如何制作切换按钮/反转按钮.类似于谷歌翻译
- 隐藏表列依赖于按钮在多个动态json数组键基于angularjs
- Bootstrap's弹出窗口只工作于按钮-不锚或跨度
- 获取表单中相对于按钮的输入值
- 我正在尝试生成一个随机颜色(javascript),并在单击按钮时将结果应用于按钮.如何将JS与Jquery结合起来
- Javascript函数作用于按钮点击,而不是在PHP echo
- 如何将jQuery样式应用于按钮