jQuery fadeIn()、fadeOut() IE下无法正常显示解决办法
2012-08-04 19:27
567 查看
最通常的解决办法就是移除 filter 这个 CSS 属性。用普通的 javascript 代码就这样写:
用 jQuery 就这样写:
这意味着每次我们要改变一个元素的透明度时就要移除它的 filter 属性, 这让我们的代码看起来很二。
一个简单并且更加优雅的方法就是通过 jQuery 的插件接口写一个自定义的函数来封装 .fadeIn() 和 .fadeOut()。代码实际上是一样的,只是我们要调用这个封装器函数,而不是直接调用 .fadeIn() 和 .fadeOut()。就像这样:
那到底要怎么弄才能使上面的代码生效呢?只需要在包括 jQuery 库之后包括下面这段代码就行了。
document.getElementById('node').style.removeAttribute('filter');
用 jQuery 就这样写:
$('#node').fadeOut('slow', function() { this.style.removeAttribute('filter'); });
这意味着每次我们要改变一个元素的透明度时就要移除它的 filter 属性, 这让我们的代码看起来很二。
一个简单并且更加优雅的方法就是通过 jQuery 的插件接口写一个自定义的函数来封装 .fadeIn() 和 .fadeOut()。代码实际上是一样的,只是我们要调用这个封装器函数,而不是直接调用 .fadeIn() 和 .fadeOut()。就像这样:
$('#node').customFadeOut('slow', function() { // 这里就不要再折腾什么 CSS 属性了 });
那到底要怎么弄才能使上面的代码生效呢?只需要在包括 jQuery 库之后包括下面这段代码就行了。
(function($) { $.fn.customFadeIn = function(speed, callback) { $(this).fadeIn(speed, function() { if(jQuery.browser.msie) $(this).get(0).style.removeAttribute('filter'); if(callback != undefined) callback(); }); }; $.fn.customFadeOut = function(speed, callback) { $(this).fadeOut(speed, function() { if(jQuery.browser.msie) $(this).get(0).style.removeAttribute('filter'); if(callback != undefined) callback(); }); }; })(jQuery);
相关文章推荐
- Silverlight在IE中无法显示但在Firefox中正常的原因和解决办法
- Windows XP下IE网页无法正常显示与无法打开新链接的部分解决办法
- Silverlight在IE中无法显示但在Firefox中正常的原因和解决办法
- VMware Remote Console plug-in无法安装以及使用IE无法正常显示Vmware Server 2.0.0的解决办法
- 文档库创建的子文件夹的URL显示为 http://[机器名]/.... 导致无法正常访问的问题解决办法
- IE8下ckeditor无法正常使用,提示"例外被抛出且未被接住"的解决办法
- Jcrop 做图片剪裁 在IE中无法显示问题解决办法
- 让360双核浏览器默认极速模式,避免采用IE模式无法正常访问html5网页的解决办法
- table表格合并列的问题,在IE中能够正常显示,但是在火狐中,好像colspan没有起作用一样,解决办法!!!!
- IE用户google搜索提示Internet Explorer 无法显示该网页的解决办法
- 在IE下正常显示但Chrome下无法显示的解决方法
- IE无法显示验证码的解决办法
- IE6 IE7下ol li无法显示list-style-type解决办法
- 解决jQuery.ajax在IE, FireFox可以正常执行。Chrome,360极速模式中无法正常执行。
- Destoon旺旺无法正常显示,点击提示“会员名不存在”的解决办法
- Google map API在IE下无法正常显示的解决方法
- python matplotlib plot 数据中的中文无法正常显示的解决办法
- 启动ie就出现“无法显示此页” 以及 360 浏览器 域名解析错误(错误代码:105) 解决办法
- LoadRunner无法正常启动IE的解决办法
- Qt应用程序向ARM开发板移植过程中汉字无法正常显示的解决办法