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 相关文章推荐
javascript编程起步(第七课)
Feb 27 Javascript
jscript之List Excel Color Values
Jun 13 Javascript
JQuery autocomplete 使用手册
Apr 01 Javascript
深入理解JavaScript系列(41):设计模式之模板方法详解
Mar 04 Javascript
JS根据生日算年龄的方法
May 05 Javascript
AngularJS向后端ASP.NET API控制器上传文件
Feb 03 Javascript
简单理解JavaScript中的封装与继承特性
Mar 19 Javascript
jQuery动态添加
Apr 07 Javascript
JS区分浏览器页面是刷新还是关闭
Apr 17 Javascript
bootstrap与pagehelper实现分页效果
Dec 29 Javascript
Vue $mount实战之实现消息弹窗组件
Apr 22 Javascript
基于vue实现一个神奇的动态按钮效果
May 15 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/08/26 PHP
php中文乱码怎么办如何让浏览器自动识别utf-8
2014/01/15 PHP
ThinkPHP模板Switch标签用法示例
2014/06/30 PHP
thinkphp连贯操作实例分析
2014/11/22 PHP
php猜单词游戏
2015/09/29 PHP
PHP编程中的__clone()方法使用详解
2015/11/27 PHP
TP3.2.3框架文件上传操作实例详解
2020/01/23 PHP
javascript event 事件解析
2011/01/31 Javascript
Javascript中 关于prototype属性实现继承的原理图
2013/04/16 Javascript
Jquery chosen动态设置值实例介绍
2013/08/08 Javascript
Javascript核心读书有感之语言核心
2015/02/01 Javascript
纯javascript实现四方向文本无缝滚动效果
2015/06/16 Javascript
体验jQuery和AngularJS的不同点及AngularJS的迷人之处
2016/02/02 Javascript
完美JQuery图片切换效果的简单实现
2016/07/21 Javascript
AngularJS入门教程之表单校验用法示例
2016/11/02 Javascript
懒加载实现的分页&amp;&amp;网站footer自适应
2016/12/21 Javascript
Three.js如何实现雾化效果示例代码
2017/09/27 Javascript
微信小程序实现选项卡功能
2020/06/19 Javascript
JavaScript Array对象使用方法解析
2019/09/24 Javascript
解决antd 下拉框 input [defaultValue] 的值的问题
2020/10/31 Javascript
本地文件上传到七牛云服务器示例(七牛云存储)
2014/01/11 Python
Python正则抓取新闻标题和链接的方法示例
2017/04/24 Python
Python基于递归算法实现的走迷宫问题
2017/08/04 Python
python中利用await关键字如何等待Future对象完成详解
2017/09/07 Python
三步实现Django Paginator分页的方法
2019/06/11 Python
Python tkinter 下拉日历控件代码
2020/03/04 Python
用python绘制樱花树
2020/10/09 Python
用Java语言将一个键盘输入的数字转化成中文输出
2013/01/25 面试题
会计职业生涯规划范文
2014/01/04 职场文书
追悼会子女答谢词
2014/01/28 职场文书
恐龙的灭绝教学反思
2014/02/12 职场文书
2014三八妇女节活动总结范文四篇
2014/03/09 职场文书
2014年图书室工作总结
2014/12/09 职场文书
好媳妇事迹材料
2014/12/24 职场文书
mysql联合索引的使用规则
2021/06/23 MySQL
详细聊聊vue中组件的props属性
2021/11/02 Vue.js