【发布时间】:2018-03-31 17:12:52
【问题描述】:
我正在将应用程序从 angular.js 迁移到 Angular 5..
应用程序正在使用引导主题,它使用bootstrap v3.3.7。我复制了每个css 和script,奇怪的是popover(用户下拉菜单)不再在新应用程序中工作。
我正在调试它,发现问题是$('[data-toggle="popover"]').data("bs.popover")是undefined。
$(document).on("click", '[data-toggle="popover"]', function (o) {
o.stopPropagation(),
$('[data-toggle="popover"]')
.data("bs.popover")
.tip()
.hasClass("in") ? (
$('[data-toggle="popover"]').popover("hide"),
$(document).off("click.app.popover")
) : (
$('[data-toggle="popover"]').popover("show"),
setTimeout(function () {
$(document).one("click.app.popover", function () {
$('[data-toggle="popover"]').popover("hide")
})
}, 1)
)
})
还有我的html:
<ul class="nav navbar-nav">
...
<li>
<button data-toggle="popover" data-original-title="" title="">
<img class="img" src="assets/images/img-1.jpg">
</button>
</li>
</ul>
点击button[data-toggle="popover"]时,应该会显示下面的html:
<ul class="nav navbar-nav hidden">
<li>
<a href="#/profile">
<span class="profile-link"></span> Profile
</a>
</li>
...
</ul>
有什么想法吗?
【问题讨论】:
标签: javascript jquery twitter-bootstrap-3 popover