摘要:原文地址背景开发过程中遇到问题,简单写个运行环境为描述一下这个问题,当标签内部存在嵌套时,父元素标签的默认行为以及子元素绑定的事件的响应之间存在影响。
原文地址
背景开发过程中遇到问题,简单写个demo 运行环境为Chrome 68
描述一下这个问题,当a标签内部存在嵌套时, 父元素a标签的href默认行为以及子元素绑定的click事件的响应之间存在影响。页面结构:
a标签内部点击事件失效 父标签 子标签1
示例如下图(如果a标签嵌套,浏览器解析错误,所以用object标签包裹了一层)。
执行操作:当点击父标签时,先弹出111,然后跳转父标签的href链接。
说明onclick执行先于href
当点击child-one时,执行元素绑定的click事件,会弹出alert,但是location仍然跳转到了father。
阻止冒泡后,执行结果仍然不符合预期。添加preventDefault之后,执行了子元素自己的跳转。
当点击child-two时,弹出响应信息,然后会跳转href的链接。
当点击child-three时,先弹出click child-three,然后是href child-three,说明click事件先于href执行。
上面4个操作除了2之外都很好理解,2中,为什么已经在阻止了事件冒泡之后,仍然执行了父元素中href的跳转。
思考:首先可以肯定的是,事件冒泡确实被阻止了,因为父元素的onclick并没有执行。
所以猜测,标签的默认行为是无法通过取消冒泡来阻止的,就算事件没有冒泡到父元素,子元素在父元素标签内部,仍然会执行标签默认行为。
在子元素中添加e.preventDefault()阻止默认行为
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/52817.html
摘要:原文地址背景开发过程中遇到问题,简单写个运行环境为描述一下这个问题,当标签内部存在嵌套时,父元素标签的默认行为以及子元素绑定的事件的响应之间存在影响。 原文地址 背景 开发过程中遇到问题,简单写个demo 运行环境为Chrome 68 描述一下这个问题,当a标签内部存在嵌套时, 父元素a标签的href默认行为以及子元素绑定的click事件的响应之间存在影响。页面结构: ...
摘要:开发过程中遇到问题,简单写个运行环境为描述一下这个问题,当标签内部存在嵌套时,父元素标签的默认行为以及子元素绑定的事件的响应之间存在影响。 2018-08-07 Question about work 开发过程中遇到问题,简单写个demo 运行环境为Chrome 68 描述一下这个问题,当标签内部存在嵌套时, 父元素标签的href默认行为以及子元素绑定的click事件的响应之间存在...
摘要:开发过程中遇到问题,简单写个运行环境为描述一下这个问题,当标签内部存在嵌套时,父元素标签的默认行为以及子元素绑定的事件的响应之间存在影响。 2018-08-07 Question about work 开发过程中遇到问题,简单写个demo 运行环境为Chrome 68 描述一下这个问题,当标签内部存在嵌套时, 父元素标签的href默认行为以及子元素绑定的click事件的响应之间存在...
摘要:雪碧图内联图片将站内小图标合并成一张图,使用定位截取对应图标适当使用内联图片。浏览器缓存合理设置浏览器缓存是网页优化的重要手段之一。为什么要减少请求在性能优化中减少请求的措施占了很大部分,比如使用雪碧 这篇文章主要介绍了浅谈网页基本性能优化规则小结的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 针对浏览器网页的一些优化规则 页面优化 静态资源压缩...
摘要:雪碧图内联图片将站内小图标合并成一张图,使用定位截取对应图标适当使用内联图片。浏览器缓存合理设置浏览器缓存是网页优化的重要手段之一。为什么要减少请求在性能优化中减少请求的措施占了很大部分,比如使用雪碧 这篇文章主要介绍了浅谈网页基本性能优化规则小结的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 针对浏览器网页的一些优化规则 页面优化 静态资源压缩...
阅读 2621·2021-11-23 09:51
阅读 3189·2021-11-22 14:44
阅读 4548·2021-11-22 09:34
阅读 5006·2021-10-08 10:14
阅读 2298·2021-09-22 15:47
阅读 3422·2021-09-22 15:40
阅读 1466·2019-08-30 15:44
阅读 1591·2019-08-28 18:23