JS菜单下拉框问题,熟悉js的帮我看看,鼠标移除下拉不会消失 50
很简单的JS下拉,onmousemove事件触发独立下拉框,但是当鼠标离开后下拉依然存在,由于是独立的下拉框,所以用onmouseout事件的话不理想,鼠标移动到下拉菜单...
很简单的JS下拉,onmousemove事件触发独立下拉框,但是当鼠标离开后下拉依然存在,由于是独立的下拉框,所以用onmouseout事件的话不理想,鼠标移动到下拉菜单便消失。贴代码:
JS代码:
function menu_move(sthis,i,name,m){
var navH = $(sthis).offset().left;
for(var k=1;k<=m;k++){
if(i==k){
$('#'+name+k).css({"position":"absolute","margin-right":navH});
$('#'+name+k).show();
}
else{
$('#'+name+k).hide();
}
}
}
一级菜单:
<div class="fxnmenu">
<ul>
<li><a href="/invest/index.html?type=going" onmousemove="menu_move(this,2,'menid_',6)">我要理财<!--<span class="down"></span>--></a></li>
</ul>
</div>
独立下拉框:
<div class="fxnnav fxnnav_invest" style="display: none;" id="menid_2">
<table>
<tr><td><a href="#">推荐标</a></td></tr>
<tr><td><a href="#">净值标</a></td></tr>
</table>
</div> 展开
JS代码:
function menu_move(sthis,i,name,m){
var navH = $(sthis).offset().left;
for(var k=1;k<=m;k++){
if(i==k){
$('#'+name+k).css({"position":"absolute","margin-right":navH});
$('#'+name+k).show();
}
else{
$('#'+name+k).hide();
}
}
}
一级菜单:
<div class="fxnmenu">
<ul>
<li><a href="/invest/index.html?type=going" onmousemove="menu_move(this,2,'menid_',6)">我要理财<!--<span class="down"></span>--></a></li>
</ul>
</div>
独立下拉框:
<div class="fxnnav fxnnav_invest" style="display: none;" id="menid_2">
<table>
<tr><td><a href="#">推荐标</a></td></tr>
<tr><td><a href="#">净值标</a></td></tr>
</table>
</div> 展开
1个回答
展开全部
既然你使用的是JQ,那就可以用另外一个方法
$(".fxnmenu ul li,.fxnnav_invest").hover(function(){鼠标over的时候执行显示},function(){鼠标out的时候执行隐藏});
更多追问追答
追问
不用另外一个办法,就这个办法的话能实现吗?就在鼠标移开的时候做一个清除或者什么动作。
追答
onmouseover这个才是鼠标移动到当前对象上触发的方法。
还有鼠标移动到下拉框之后就消失的话,你还是需要增加一个方法。一样是onmouseover方式,鼠标悬浮的时候DOM不隐藏。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询