.menu-content高度是整个主菜单页面,为什么鼠标移开".menu-item"就触发了呢

.menu-content高度是整个主菜单页面,为什么鼠标移开".menu-item"就触发了呢

有一个疑问!!!

menu.onmouseout=function(){subMenu.className="sub-menu hide"};

绑定的是".menu-content"的onmouseout事件,它的高度是整个主菜单页面,为什么鼠标移开".menu-item"就触发了呢???

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

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

3回答
提问者 追风_少年2017 2017-04-24 11:38:55

终于搞懂了这个问题,menu-item的DIV是menu-content的DIV的子元素,离开menu-item的范围,也会触发menu-content的onmouseout事件

  • 应该是子元素的事件冒泡了。就比如有两个DIV <div onclick="alert(1)" style="width: 100px;height: 100px;background: #f00"> <div onclick="alert(2)" style="width: 50px;height: 50px;background: #0f0"> </div> </div> 你在点子DIV的时候会触发他的点击事件,点击这个行为触发了之后,没有被处理,会继续往上级传递,触发上级的点击事件
    2017-10-24 22:21:45
提问者 追风_少年2017 2017-03-11 15:55:40

var  menuItems = byId("menu-content").getElementsByTagName("div");
var  subMenu = byId("sub-menu");
menuContent.onmouseout = function(){
        subMenu.className = "sub-menu hide";
 }

http://img1.sycdn.imooc.com/climg//58c3ad040001ed8909080502.jpg

http://img1.sycdn.imooc.com/climg//58c3ad0400010e9309110535.jpg

就是搞不懂,明明绑定的是menu-content的事件,为什么鼠标一离开menu-item的4个类,但是还在menu-content里面,就触发onmouseover的事件呢???

小于飞飞 2017-03-10 21:19:50

你好,如是整个banner区高度,触发条件是整个主菜单,关于反馈问题,会尽快核实,祝学习愉快。

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
HTML5与CSS3实现动态网页 2018
  • 参与学习       1887    人
  • 提交作业       4643    份
  • 解答问题       5760    个

有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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