博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IE下jquery的fadeIn与fadeOut方法失效的BUG
阅读量:5789 次
发布时间:2019-06-18

本文共 2017 字,大约阅读时间需要 6 分钟。

hot3.png

BUG1:绝对定位嵌套绝对定位

这个问题遇到过好多次,因为没有做笔记,所以每次遇到这个问题都要研究半天。好记性不如烂笔头,这话一点没错。

      
           
 
             
                
测试测试测试

                
测试测试测试

                
测试测试测试

                  
    
           
 
             
                
测试测试测试

                
测试测试测试

                
测试测试测试

                  

posab  是绝对定位的class

只要把绝对定位换成浮动,就可以实现淡隐淡出的效果了。

      
           
 
             
                
测试测试测试

                
测试测试测试

                
测试测试测试

                             
           
 
             
                
测试测试测试

                
测试测试测试

                
测试测试测试

                         

 具体的位置需要做一些调整

BUG2:父级绝对定位嵌套大于父级尺寸的图片

还有一种情况,是IE8独有的BUG,格式如下

 
  

 如果图片的大小超过了div的大小,在IE8下面淡隐淡出效果将会失效

BUG3:

网上还差了一种bug,具体没有遇到过,现也贴上:

IE6 IE7 IE8 在 position : relative 时fadeIn() fadeOut() bug 解决方案

先看一个例子
    
        
I am going to fade in ;
        
I am going to fade in ;
    
$('.fadein').fadeIn();

 

以上代码基本上在所有主流浏览器都可以达到预期效果

但是现实是残酷的, 大家的html结构当然不会这么简单。

我们再加一点东东

    
        
I am going to fade in ;
        
I am going to fade in ;
    $('.fadein').fadeIn();

这个时候在IE 6 78 就会吭爹的事情出现, 动画不出现有木有!  直接show出来有木有!

这是臭名昭著的 IE 大bug: 如果fadeIn的元素的子元素有position属性时 以relative值为最严重 有position属性的元素不会出现fadeIn的效果!

可能的曲线解决方法:

1, 不用position: relative;  这个嘛 有时候可以做到

2,如果1实在做不到, 比如笔者遇到的情况,那就用each()。 你可以一个一个做这个效果, 这个当然是可以做到的, 不过效率太差, 搞不好会挂掉用户的电脑,比如笔者遇到的情况,有几十个上百个子元素 这个方法是万万使不得滴。。

针对性解决办法

我们要在使用position:relative 而且不使用each()的情况下达到这个效果,可以吗?

可以!

既然这是一个bug 那一定就有hack的方法

$('.fadein').css('position', 'relative').fadeIn();

在fadeIn()之前动态的将其position属性改为relative; 会解决IE7下的这个bug

在你子元素有position属性的元素加 filter: inherit; 当前元素的第一层子元素也要加。

这两条一结合 IE678 的问题就都解决了

转载于:https://my.oschina.net/noxiaomi/blog/195257

你可能感兴趣的文章
软件评测-信息安全-应用安全-资源控制-用户登录限制(上)
查看>>
我的友情链接
查看>>
Java Web Application 自架构 一 注解化配置
查看>>
如何 debug Proxy.pac文件
查看>>
Python 学习笔记 - 面向对象(特殊成员)
查看>>
Kubernetes 1.11 手动安装并启用ipvs
查看>>
Puppet 配置管理工具安装
查看>>
Bug多,也别乱来,别被Bug主导了开发
查看>>
sed 替换基础使用
查看>>
高性能的MySQL(5)创建高性能的索引一B-Tree索引
查看>>
oracle备份与恢复--rman
查看>>
图片变形的抗锯齿处理方法
查看>>
Effective C++ Item 32 确保你的 public 继承模子里出来 is-a 关联
查看>>
phpstorm安装laravel-ide-helper实现自动完成、代码提示和跟踪
查看>>
python udp编程实例
查看>>
TortoiseSVN中图标的含义
查看>>
Tasks and Back stack 详解
查看>>
关于EXPORT_SYMBOL的作用浅析
查看>>
成功的背后!(给所有IT人)
查看>>
在SpringMVC利用MockMvc进行单元测试
查看>>