简体   繁体   English

无法单击下拉子菜单链接

[英]Not able to click on Dropdown Submenu Link

I have following code and when I hover on Menu it has some dropdown submenus and I am not able to click on any of my submenu links: 我有以下代码,当我将鼠标悬停在菜单上时,它具有一些下拉子菜单,而我无法单击任何子菜单链接:

HTML: HTML:

<li class="onesource-user">
<a href="#"><%=expert.firstname  %>&nbsp;<%=expert.lastname  %>(<%= expert.login %><%=session.getAttribute("multi_lobs")==null?"":" - "+view_name  %>)</a>
<ul>
    <li><a href="index?page=profile" class="profile">Profile</a></li>
    <li><a href="index?page=favorites" class="favorite">Favorites</a></li>
    <li class="log-out"><a href="index?page=logout" class="btn">Log out</a></li>
</ul>

JS: JS:

$('.onesource-user').on('click', function(e){
  e.preventDefault();
  $(this).toggleClass('open');
  return false;
 })

Screenshot: 截图:

screenshot 截图

在此处输入图片说明

Because of you're using event on .onesource-user so it'll aply on all it children so ( e.preventDefault + return false ) . 由于您在.onesource-user上使用event,因此它将在所有子元素上使用( e.preventDefault + return false )。 this would help . 这会有所帮助。

$('.onesource-user > a').on('click', function(e){
    e.preventDefault();
    $(this).parent().toggleClass('open'); 
    return false;
})

see the above snippet : 参见上面的代码片段:

 $('.onesource-user > a').on('click', function(e){ e.preventDefault(); $(this).parent().toggleClass('open'); return false; }) 
 .onesource-user ul{ display:none; } .onesource-user.open ul{ display:block } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <li class="onesource-user"> <a href="#">Sample UserName</a> <ul> <li><a href="index?page=profile" class="profile">Profile</a></li> <li><a href="index?page=favorites" class="favorite">Favorites</a></li> <li class="log-out"><a href="index?page=logout" class="btn">Log out</a></li> </ul> </li> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM