如何使菜单选中的效果取消掉

如何使菜单选中的效果取消掉

老师你好,更具别的同学的问题,当鼠标离开主菜单时可以时选中的效果取消,但是当鼠标到达子菜单是,也一样会取消,有什么办法可以使当鼠标在子菜单是主菜单可以看到选中的效果http://img1.sycdn.imooc.com//climg/5e6c7c7109c1abc110550845.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕柯南 2020-03-15 13:39:51

同学你好!

在源码的基础上做一下修改就可以达到你想要的效果:

  1. 设置一个全局变量,记录目前署鼠标在哪个菜单上

    http://img1.sycdn.imooc.com//climg/5e6dbf35097faa6905530204.jpg

  2. 显示菜单时给index1赋值

    http://img1.sycdn.imooc.com//climg/5e6dbf58093de71910490355.jpg

  3. 鼠标离开(进入)子菜单或者主菜单时设置主菜单的背景色

    http://img1.sycdn.imooc.com//climg/5e6dbf7a0919d61512680657.jpg

    注意:按照以上思路下面的代码就不需要写了

    http://img1.sycdn.imooc.com//climg/5e6dbf9209d05a0a05310176.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

guly 2020-03-14 18:03:24

你好, 老师根据你的疑问运行了课堂源码,当鼠标在子菜单时,主菜单依旧时选中的效果如图:

http://img1.sycdn.imooc.com//climg/5e6cbc16092c39e709630473.jpg

祝学习愉快!

  • 提问者 衮雪TripleRock #1
    我意思是程序有bug,当鼠标离开主菜单是,颜色没有办法恢复,总会有一个主菜单数别选中时的颜色,而老师在之前给别的同学解决了这个问题,但是,当鼠标离开主菜单时虽然主菜单的选中效果取消了,但是当鼠标进入子菜单时主菜单也同样没有被选中的效果,这个需要怎样处理?
    2020-03-14 18:44:00
  • guly 回复 提问者 衮雪TripleRock #2
    你好,老师已修改运行效果,祝学习愉快!
    2020-03-14 19:13:17
  • 提问者 衮雪TripleRock #3
    但是问题是当鼠标离开主菜单时还会有选中的效果,老师不是给别的学生回答过吗,根据老师给别的同学的回答,可以实现离开主菜单取消选中效果,但是同时当鼠标离开主菜单进入子菜单时,也同时会取消主菜单的选中效果,有什么方法可以使鼠标离开主菜单,取消选中效果,但同时在进入子菜单时主菜单也显示选中效果? menuItems[m].onmouseout=function(){ var idx=this.getAttribute("data-index"); menuItems[idx].style.background="none"; 老师添加的解决鼠标离开主菜单取消选中的代码如上。
    2020-03-14 19:39:26
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师