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


Posted in Javascript onJuly 20, 2010

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 相关文章推荐
js获取多个tagname的节点数组
Sep 22 Javascript
js控制input输入字符解析
Dec 27 Javascript
Lua表达式和控制结构学习笔记
Dec 15 Javascript
node.js中的fs.createWriteStream方法使用说明
Dec 17 Javascript
location.hash保存页面状态的技巧
Apr 28 Javascript
JavaScript中的this引用(推荐)
Aug 05 Javascript
JS中parseInt()和map()用法分析
Dec 16 Javascript
jquery实现静态搜索功能(可输入搜索文字)
Mar 28 jQuery
利用Node.js检测端口是否被占用的方法
Dec 07 Javascript
Vue CLI3 开启gzip压缩文件的方式
Sep 30 Javascript
jQuery轻量级表单模型验证插件
Oct 15 jQuery
element ui table(表格)实现点击一行展开功能
Dec 04 Javascript
Javascript实现CheckBox的全选与取消全选的代码
Jul 20 #Javascript
js下写一个事件队列操作函数
Jul 19 #Javascript
js+css在交互上的应用
Jul 18 #Javascript
基于jQuery试卷自动排版系统
Jul 18 #Javascript
Date对象格式化函数代码
Jul 17 #Javascript
js下利用控制器载入对应脚本
Jul 17 #Javascript
js 纯数字不重复排列的另类方法
Jul 17 #Javascript
You might like
PHP 抓取网页图片并且另存为的实现代码
2010/03/24 PHP
探寻PHP脚本不报错的原因
2014/06/12 PHP
微信access_token的获取开发示例
2015/04/16 PHP
php递归调用删除数组空值元素的方法
2015/04/28 PHP
php中关于长度计算容易混淆的问题分析
2016/05/27 PHP
PHP接入微信H5支付的方法示例
2019/10/28 PHP
jQuery 自动增长的文本输入框实现代码
2010/04/02 Javascript
IE6下出现JavaScript未结束的字符串常量错误的解决方法
2010/11/21 Javascript
JavaScript字符串String和Array操作的有趣方法
2012/12/18 Javascript
提示$ is not defined错误分析及解决
2013/04/09 Javascript
使用jquery局部刷新(jquery.load)从数据库取出数据
2014/01/22 Javascript
谷歌showModalDialog()方法不兼容出现对话窗口的解决办法
2016/02/15 Javascript
JavaScript中this的用法实例分析
2016/12/19 Javascript
layui使用button按钮 点击出现弹层 弹层中加载表单的实例
2019/09/04 Javascript
easyUI 实现的后台分页与前台显示功能示例
2020/06/01 Javascript
解决vue项目router切换太慢问题
2020/07/19 Javascript
[00:31]DOTA2荣耀之路7:Miracle-空血无敌斩
2018/05/31 DOTA
Python通过websocket与js客户端通信示例分析
2014/06/25 Python
简单实现python收发邮件功能
2018/01/05 Python
Python closure闭包解释及其注意点详解
2019/08/28 Python
python3连接MySQL8.0的两种方式
2020/02/17 Python
查看jupyter notebook每个单元格运行时间实例
2020/04/22 Python
Python使用requests模块爬取百度翻译
2020/08/25 Python
Django mysqlclient安装和使用详解
2020/09/17 Python
英国水族馆和池塘用品购物网站:Warehouse Aquatics
2019/08/29 全球购物
eharmony澳大利亚:网上约会服务
2020/02/29 全球购物
2014年创卫实施方案
2014/02/18 职场文书
毕业生自荐信格式
2014/03/07 职场文书
市场营销策划方案
2014/06/11 职场文书
光棍节联谊晚会活动策划书
2014/10/10 职场文书
2015年生产车间工作总结
2015/04/22 职场文书
2015年保险业务员工作总结
2015/05/27 职场文书
成功的商业计划书这样写才最靠谱
2019/07/12 职场文书
Windows安装Anaconda3的方法及使用过程详解
2021/06/11 Python
「租借女友」第2季樱泽墨角色PV&新视觉图公开
2022/03/21 日漫
Golang日志包的使用
2022/04/20 Golang