子对是如何影响父对象的?

shadelin 2007-12-13 09:22:05
一个最简单的例子:
<div style="background:#ccc;width:300px;height:300px;" onmouseout="alert('x');">
<a href="">archor</a>
</div>
当在DIV内部移动到ARCHOR上时,同样也触发ONMOUSEOUT行为,似乎有悖常理,请问如何解决,谢谢.
...全文
55 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hztgcl1986 2007-12-13
  • 打赏
  • 举报
回复

up





shadelin 2007-12-13
  • 打赏
  • 举报
回复
谢谢XIAOLEI的解决方法,谢谢HZTGCL的详细解释,学习了。
hztgcl1986 2007-12-13
  • 打赏
  • 举报
回复

在网页中,事件是冒泡的

就比如你的代码,<a>在<div>之内,div有事件onmouseout,当在<a>上鼠标经过时,首先触发<a>的onmouseout事件,其次是它的上一级,在你的代码里就是<div>,而且还会继续往上,<div>的父,直到最顶层(<div>的上级可能并没有定义onmouseout事件,浏览器会跳过它,往上传),这是事件的触发原理

想要停止冒泡,可以为<a>也定义onmouseout事件,如:onmouseout="event.cancelBubble;",这样就不会往传了








xiaolei1982 2007-12-13
  • 打赏
  • 举报
回复
进入,离开分别使用onmouseenter和onmouseleave
xiaolei1982 2007-12-13
  • 打赏
  • 举报
回复
利用onmouseleave事件可解决

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧