gpt4 book ai didi

javascript - 当我们点击页面上的任意位置时,Angularjs 会获取事件吗?

转载 作者:太空宇宙 更新时间:2023-11-04 15:27:33 25 4
gpt4 key购买 nike

您好,我正在使用 angularjs 开发 SPA。我有一个下拉菜单。如果用户登录,则下拉列表将是可点击的,并且它会展开各种选项,例如个人资料、注销等。在 app.js 中,我有下面的代码来展开下拉列表

  if (cookieloginid != null) {
var id = document.getElementById('ProfileDropdown');
id.innerHTML = $scope.ProfileDropdown = '<div data-drop-down>' + ' <ul>' +
'<li><a href="#/userProfile">User Profile</a></li>' +
'<li>test1</li>' +
' <li onclick="logout(event)">logout</li>' +
'</ul>'+'</div>';
}

上面的代码工作正常。如果我单击下拉菜单,它将展开而不是关闭。单击下拉列表后,如果我单击网页上的任意位置,我想关闭扩展的下拉列表。我可以知道这可能吗?任何帮助,将不胜感激。谢谢。

最佳答案

您可以通过为上述内容创建自定义目录来完成此操作,请参阅下面的链接以获取信息: http://www.competa.com/blog/an-angular-click-anywhere-to-close-dropdown-menu-directive/

或者您可以使用 jquery $(document) 在文档上添加自定义事件来执行操作。

请参阅以下链接: http://embed.plnkr.co/rpOgQC/

您可能还想使用 event.stopPropagation();,以防当您单击下拉列表时,您可能会因为下拉列表未打开而结束。

关于javascript - 当我们点击页面上的任意位置时,Angularjs 会获取事件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45100231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com