这只是为了您的理解,可能在您将来的编码中您可以这样应用。
虽然你在那里得到了正确的答案,但我会说这只是一个修复,
因为您只是将鼠标悬停在一个外部元素上,而您的下拉菜单位于不同的 div 上,所以这是您的代码
/*hovering element*/
<li> <a href="#"><img src="http://heyfitty.com/demo/img/general/profile-head.png" class="author-profile-top"/></a>
</li>
/*displayed element on hover*/
<div class="dropdown-profile">
<div class="popout-pointer"></div>
<ul>
<li><a href="#" class="view-profile user-popup-padding">View Profile</a>
</li>
<li><a href="#" class="the-charts">Edit Profile</a>
</li>
<li><a href="#" class="newsfeed">Settings</a>
</li>
<li><a href="#" class="your-messages" class="user-popup-padding-bottom">Logout</a>
</li>
</ul>
</div>
那么,除了<div class="dropdown-profile"
在您离开时让 > 可见之外,您 <a href="#"><img src="http://heyfitty.com/demo/img/general/profile-head.png" class="author-profile-top"/></a>
如何div
标准方法是将所有元素放在一个 div 中,如下面的代码 <div class='content'>
试试这个
html
<div class='content'>
<li> <a href="#"><img src="http://heyfitty.com/demo/img/general/profile-head.png" class="author-profile-top"/></a>
</li>
<div class="dropdown-profile">
<div class="popout-pointer"></div>
<ul>
<li><a href="#" class="view-profile user-popup-padding">View Profile</a>
</li>
<li><a href="#" class="the-charts">Edit Profile</a>
</li>
<li><a href="#" class="newsfeed">Settings</a>
</li>
<li><a href="#" class="your-messages" class="user-popup-padding-bottom">Logout</a>
</li>
</ul>
</div>
</div>
并在您的 css 中保持子元素的位置相对于父元素
position:relative
这是你的CSS
css
li {
list-style:none;
}
.author-profile-top {
float:right;
margin-top: 20px;
}
.dropdown-profile {
position: relative;
background-color: white;
border: 1px solid #cccccc;
width: 160px;
border: solid 1px #cccccc;
cursor: pointer;
top: 60px;
z-index: 9999;
left: 385px;
color:#ccccc;
height:100px;
display:none;
}
和你的代码
代码
$(".content").hover(function (event) {
event.stopPropagation();
$(".dropdown-profile").toggle();
})
$(".dropdown-profile").click(function (event) {
event.stopPropagation();
})