firefox火狐浏览器与与ie兼容的2个问题总结

 更新时间:2010年07月20日 00:40:06   作者:  
这几天遇到几个头疼的火狐与ie兼容问题整理下来,希望对需要的朋友有所帮助。
1:rules与cssRules区别:
复制代码 代码如下:

function addCSSRule(css,key,value){
//var css = document.styleSheets[document.styleSheets.length-1];
if(navigator.userAgent.indexOf("Firefox")>0 )
{
css.insertRule(key+"{"+value+"}", css.cssRules.length)
}
else
{
css.addRules(key,value);
}
}
function removeCSSRule(key){
for(var i = 0; i < document.styleSheets.length; i++){
var css = document.styleSheets[i];
navigator.userAgent.indexOf("Firefox")>0 ?
(function(){
for(var j = 0; j < css.cssRules.length; j++){
if(css.cssRules[j].selectorText==key){
css.deleteRule(j);
}
}
})() :
(css.removeRule(key)) ;
}
}

我是这样加了一个方法解决这个问题的。。
2:火狐和ie中获得背景色问题(getComputedStyle与currentStyle的区别)
复制代码 代码如下:

function getCurrentStyle(oElement) {
if(navigator.userAgent.indexOf("Firefox")>0 ){
var rgbstr=document.defaultView.getComputedStyle(oElement,null).backgroundColor;
var strR;
if(rgbstr.toString().indexOf('(')>0 && rgbstr.toString().indexOf(')')>0)
{
strR= rgbstr.toString().substring(parseInt(rgbstr.toString().indexOf('(')+1),rgbstr.toString().indexOf(')')).split(',');
}
return toHexColor(strR[0],strR[1],strR[2]).substring(1);
}
else{
return oElement.currentStyle.backgroundColor.trim().substring(1);
}
}

复制代码 代码如下:

function toHexColor(r,g,b){
var hex='#';
var hexStr = '0123456789ABCDEF';
low = r % 16;
high = (r - low)/16;
hex+=hexStr.charAt(high) + hexStr.charAt(low);
low = g % 16;
high = (g - low)/16;
hex+=hexStr.charAt(high) + hexStr.charAt(low);
low = b % 16;
high = (b - low)/16;
hex+=hexStr.charAt(high) + hexStr.charAt(low);
return hex;
}

记住 火狐获得的rgbstr是rgb的因此我还要转成16进制的。我也整理了一个很笨的转换方法再上面望打击拍砖!

相关文章

  • javascript多行字符串的简单实现方式

    javascript多行字符串的简单实现方式

    之前我们给大家讲诉过javascript多行字符串的7种解决办法,今天来给大家分享一个更简单的方法,非常的实用,大家一定要仔细看看哦。
    2015-05-05
  • Javascript验证上传图片大小[前台处理]

    Javascript验证上传图片大小[前台处理]

    在做上传图片的时候,如果不限制上传图片大小,后果非常的严重。解决这个问题有两种方式:后台处理、前台处理
    2014-07-07
  • JavaScript Dom实现轮播图原理和实例

    JavaScript Dom实现轮播图原理和实例

    这篇文章主要为大家详细介绍了JavaScript Dom实现轮播图原理和实例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-02-02
  • 微信小程序+云开发实现欢迎登录注册

    微信小程序+云开发实现欢迎登录注册

    这篇文章主要介绍了微信小程序+云开发实现欢迎登录注册,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • 使用JS代码实现俄罗斯方块游戏

    使用JS代码实现俄罗斯方块游戏

    这篇文章主要介绍了使用JS代码实现俄罗斯方块游戏,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-08-08
  • js实现随机点名小功能

    js实现随机点名小功能

    这篇文章主要为大家详细介绍了js实现随机点名小功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • JS数据类型判断的几种常用方法

    JS数据类型判断的几种常用方法

    这篇文章主要介绍了JS判断数据类型的几种常用方法,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • webpack 代码分离优化快速指北

    webpack 代码分离优化快速指北

    这篇文章主要介绍了webpack 代码分离优化快速指北,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • javascript 获取radio的value的函数 [已测]

    javascript 获取radio的value的函数 [已测]

    javascript 获取radio的value的函数 如果与asp,php等后台语言结合时,一般用不到,但在纯js环境下是必须的。
    2009-06-06
  • javascript实现瀑布流动态加载图片原理

    javascript实现瀑布流动态加载图片原理

    这篇文章主要为大家详细介绍了javascript实现瀑布流动态加载图片原理,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-08-08

最新评论