【发布时间】:2018-12-12 03:33:27
【问题描述】:
即使在我单击同一级别的“li”项目后,下拉子菜单仍保持打开状态。当我单击其他项目(即“查看草稿/过去的申请”和“注销”时,如何关闭下拉子菜单? 这是我的代码。
<div class="navbar-collapse collapse" id="myNavbar">
<ul class="nav navbar-nav navbar-right nav-item">
<li><a href="" ng-click="goHome()"><span class="glyphicon glyphicon-home"></span> <strong>Home</strong></a></li>
<li class="dropdown" data-ng-controller="rootController" uib-dropdown>
<a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown" uib-dropdown-toggle>
<span class="glyphicon glyphicon-user"></span>
<strong>Welcome {{authentication.userName}}</strong>
</a>
<ul class="dropdown-menu" role="menu" uib-dropdown-menu >
<li class="dropdown-submenu" >
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="glyphicon glyphicon-cog"></i> Manage Account</a>
<ul class="dropdown-menu" uib-dropdown-menu style="top:100%;right:100%">
<li role="menuitem" ><a data-ui-sref="ManageProfile" data-ng-click='go()'><i class="glyphicon glyphicon-pencil"></i> View/Edit Organisation Profile</a></li>
<li role="menuitem" ><a data-ui-sref="ManagePersonalProfile" data-ng-click='go()'><i class="glyphicon glyphicon-pencil"></i> View/Edit Personal Profile</a></li>
<li role="menuitem"><a data-ui-sref="AddBranch" data-ng-click='go()'><i class="glyphicon glyphicon-edit"></i> Add Branch</a></li>
</ul>
</li>
<li>
<a data-ui-sref="SavedDraft" data-ng-click='go()'><i class="glyphicon glyphicon-record"></i> View Draft/Past Application</a>
</li>
<li>
<a href="javascript:;" data-ng-click="logOut()"><i class="glyphicon glyphicon-log-out"></i> Log Out </a>
</li>
</ul>
</li>
</ul>
</div>
<script type="text/javascript">
(function ($) {
$(document).ready(function () {
$('ul.dropdown-menu [data-toggle=dropdown]').on('click', function (event) {
event.preventDefault();
event.stopPropagation();
$(this).parent().siblings().removeClass('open');
$(this).parent().toggleClass('open');
});
});
})(jQuery);
单击下拉菜单时出现此错误。我认为这是因为 jquery 冲突。如何解决这个问题? 未捕获的错误:语法错误,无法识别的表达式:# 在 Function.u.error (jqueryTest?v=TAv6ydUG1iyOHUWGhs7LKsQ8xhfxrCjB3MDSXsgtZS41:1) 在 u.tokenize (jqueryTest?v=TAv6ydUG1iyOHUWGhs7LKsQ8xhfxrCjB3MDSXsgtZS41:1) 在 u.select (jqueryTest?v=TAv6ydUG1iyOHUWGhs7LKsQ8xhfxrCjB3MDSXsgtZS41:1) 在 Function.u [as find] (jqueryTest?v=TAv6ydUG1iyOHUWGhs7LKsQ8xhfxrCjB3MDSXsgtZS41:1) 在 i.fn.init.find (jqueryTest?v=TAv6ydUG1iyOHUWGhs7LKsQ8xhfxrCjB3MDSXsgtZS41:1) 在新的 i.fn.init (jqueryTest?v=TAv6ydUG1iyOHUWGhs7LKsQ8xhfxrCjB3MDSXsgtZS41:1) 在 i (jqueryTest?v=TAv6ydUG1iyOHUWGhs7LKsQ8xhfxrCjB3MDSXsgtZS41:1) 在 u (bootstrap?v=a0JlrK3HWJYO4CANWtnjZQ6r-FHTgFewh3ItuNGmfr41:1) 在 HTMLAnchorElement。 (引导程序?v=a0JlrK3HWJYO4CANWtnjZQ6r-FHTgFewh3ItuNGmfr41:1) 在 Function.each (jqueryTest?v=TAv6ydUG1iyOHUWGhs7LKsQ8xhfxrCjB3MDSXsgtZS41:1)
【问题讨论】:
-
你能创建 stackbitz 或 fiddle 吗?所以我可以详细检查你的代码。
标签: jquery angular drop-down-menu dropdown