【发布时间】:2021-02-04 01:38:23
【问题描述】:
我正在开发一个项目,该项目是在 bootstrap 4.0.0 上开始构建的。在这个项目中,每当新版本( 4.1.0 , 4.1.3 )的引导程序出现时,我都会定期更新引导程序,并且所有的事情都运行良好,直到我从那里更新到 bootstrap 4.2.1单击文档时,我在控制台中遇到错误
未捕获的 DOMException:无法执行“querySelector” '文档': 'javascript:void(0);'不是有效的选择器。
我发现它是由于下拉菜单而发生的,因为这个错误下拉菜单不起作用。我还检查了,如果我使用 href="javascript:void(0);", href="#!" 会发生错误,但如果我使用锚标记没有 href 或 href="#" 那么它工作正常。
注意:- 我需要在地址中使用 href="javascript:void(0); 作为 href="# 的解决方案链接看起来不漂亮,页面滚动到顶部
<div class="dropdown">
<a class="btn btn-secondary dropdown-toggle" href="javascript:void();" role="button" id="dropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Dropdown link
</a>
<div class="dropdown-menu" aria-labelledby="dropdownMenuLink">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</div>
这是我的codepen
【问题讨论】:
-
如果是假主播,为什么要使用
<a>?你可以使用<button>。 -
@fen1x 该项目即将完成,我们无法返回或更改任何元素,因为该项目包含 100 多页,并且在 bootstrap 4.1.3 之前运行良好。跨度>
-
这是 Bootstrap 4.2.1 中的一个错误,将在 4.3.0 中修复:github.com/twbs/bootstrap/issues/27903
-
正如 bug 票中提到的,有一个解决方法...github.com/twbs/bootstrap/issues/27903#issuecomment-450292043
标签: javascript jquery html css bootstrap-4