您现在的位置是:网站首页> 编程资料编程资料
两个div叠加触发事件发生闪烁问题的解决方法DIV+CSS 清除浮动常用方法总结CSS教程之div垂直居中的多种方法关于div与>div的区别小结Divxdra1031.Dll图片溢出div问题的快速解决方法推荐如何让一个div居于页面正中间【实现方法】css三种方法实现div在浏览器水平居中一个div在浏览器水平居中的实现方法div+CSS制作类似微信对话气泡效果的实例总结
2021-09-05
1703人已围观
简介 下面小编就为大家带来一篇两个div叠加触发事件发生闪烁问题的解决方法。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
当鼠标移到div1上的时候,会出现div2。出现时div2在div1的上面,div2在出现后发生闪烁的问题。
于是开始找问题根源,发现原来是因为当我们触发div1的时候,div2出现,但是div2是存在于div1上面的,所以当div2出现后,会又一次触发下面div1的事件。通常我们可能给的事件是mouseover和mouseout,因为两个div叠加,div2出现时会多次触发div1的事件,所以就会发生闪烁问题。
解决:
1.一开始换mouseenter和mouseleave,但是发现还是一样的问题。
注:
mouseover()与mouseout() 表示鼠标移入和移出的时候触发,穿过子元素也会触发
mouseenter()和mouseleave() 表示鼠标穿过和穿出时候触发,穿过子元素不会触发
2.然后又添加e.stopPropagation();阻止冒泡和e.preventDefault();阻止默认事件,还是没有对症。
注:
e.stopPropagation(); //阻止冒泡之后,就不会形成冒泡向上传递了。
e.preventDefault(); //阻止默认行为
3.最后换为切换事件toggle切换事件也不顶事儿。
4.最终,如果想用js解决这个问题可能不容易,用js基本都会发生闪烁问题。那么我们使用css方式是不是可以解决呢?网上查了很多资料,发现也有很多人遇到这个问题,使用的是css中的hover来解决的。
具体使用方法:
给两个div的父元素,也就是共同包裹两个div的盒子一个hover,当父元素hover时,div2的样式设置为display:block;于是就顺利解决了这个问题,不会再出现闪烁问题。
下面上代码:
html部分:
- <div class="fudiv">
- <span class="div1"><img src="img/jixinjia-partner1.jpg" alt=""/>span>
- <div class="div2">
- <div class="box6"><img src="img/qr-code-bg1%20(1).jpg" alt="p"/>div>
- <p>扫码有奖p>
- div>
- div>
css部分:
- .fudiv:hover .div2 {
- display: block;
- }
- .div2{
- display: none;
- }
原本jquery部分,这种方式会出现闪烁问题
以上这篇两个div叠加触发事件发生闪烁问题的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
原文地址:http://www.cnblogs.com/hanyining/p/5470581.html
相关内容
- CSS3中使用RGBa来调节透明度的教程CSS3颜色值RGBA与渐变色使用介绍CSS3解决移动页面上点击链接触发色块的问题 CSS3中使用RGBA设置透明度的示例CSS3 透明色 RGBA使用介绍CSS3 rgb and rgba(透明色)的使用详解
- CSS中的字体大小设置属性总结举例详解CSS中的字体尺寸设置关于CSS中字体设置的相关说明CSS 文本字体颜色设置方法(CSS color)CSS3中新增的对文本和字体的设置
- CSS3弹性盒模型flex box快速入门心得(必看篇)10分钟理解CSS3 FlexBox弹性布局CSS3 Flex 弹性布局实例代码详解css flex 弹性布局详解实例讲解CSS3中的box-flex弹性盒属性布局基础的CSS3弹性盒Flexbox布局使用实例flex弹性盒布局最后一行左对齐的实现思路
- 轻松掌握CSS3中的字体大小单位rem的使用方法详解CSS3 rem(设置字体大小) 教程
- CSS弹性盒模型flex在布局中的应用详解实例讲解CSS3中的box-flex弹性盒属性布局CSS3弹性盒模型flex box快速入门心得(必看篇)几个CSS3的flex弹性盒模型布局的简单例子演示基础的CSS3弹性盒Flexbox布局使用实例深入剖析CSS弹性盒模型flexcss3弹性盒模型(Flexbox)详细介绍css flex 弹性布局详解
- css布局小技巧分享(必看)提高CSS代码效率的编写技巧使用CSS的pointer-events属性实现鼠标穿透效果的神奇技巧20个非常实用的CSS技巧CSS 设置技巧(单位和值与样式设置技巧)CSS 高级技巧总结(必看)必须掌握10个非常不错的CSS技巧详解CSS制作Web页面条纹背景样式的技巧CSS制作边框效果的技巧总结20 个 CSS 高级技巧汇总(推荐)
- CSS文本超出指定宽度后隐藏并显示为省略号的实现方法文本超出部分隐藏的两种方法css3实现渐变、阴影、超出指定文本省略号显示等一些效果实例CSS控制文本超出指定宽度显示省略号和文本不换行效果的实现CSS超出文本指定宽度用省略号代替和文本不换行CSS文本超出div或者span时用省略号代替 css实现li中文本超出行宽自动隐藏CSS文本超出2行就隐藏并且显示省略号
- CSS的writing-mode文字排版属性使用教程css网页布局中文字排版的属性和用法CSS教程:CSS控制网页文字排版实例浅析CSS3 用text-overflow解决文字排版问题
- CSS3中的Media Queries学习笔记CSS3 @media的基本用法总结详解使用CSS3的@media来编写响应式的页面 CSS3 media queries + jQuery实现响应式导航css3 media 响应式布局的简单实例css3media响应式布局实例详解CSS3 Media Queries中媒体属性的使用 使用 CSS3 中@media 实现网页自适应的示例代码
- 详解CSS3的perspective属性设置3D变换距离的方法CSS文本超出指定宽度后隐藏并显示为省略号的实现方法CSS3 checkbox复选框特效源码 12种css3实现的模拟3D行星运转效果源码CSS的writing-mode文字排版属性使用教程CSS3中的Media Queries学习笔记CSS3中设置3D变形的transform-style属性详解css 元素选择器的简单实例css布局小技巧分享(必看)