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 相关文章推荐
FireFox中textNode分片的问题
Apr 10 Javascript
js操作textarea方法集合封装(兼容IE,firefox)
Feb 22 Javascript
MooBox 基于Mootools的对话框插件
Jan 20 Javascript
JS跨域总结
Aug 30 Javascript
Javascript 实现的数独解题算法网页实例
Oct 15 Javascript
httpclient模拟登陆具体实现(使用js设置cookie)
Dec 11 Javascript
jQuery判断复选框是否勾选的原理及示例
May 21 Javascript
javascript进行四舍五入方法汇总
Dec 16 Javascript
解决前端跨域问题方案汇总
Nov 20 Javascript
layui表格实现代码
May 20 Javascript
vue3.0 CLI - 2.4 - 新组件 Forms.vue 中学习表单
Sep 14 Javascript
Typescript的三种运行方式(小结)
Sep 18 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 chmod 函数与批量修改文件目录权限
2010/05/10 PHP
php 验证码实例代码
2010/06/01 PHP
php 调试利器debug_print_backtrace()
2012/07/23 PHP
PHP多进程编程实例
2014/10/15 PHP
PHP实现下载断点续传的方法
2014/11/12 PHP
详解PHP+AJAX无刷新分页实现方法
2015/11/03 PHP
PHP中模糊查询并关联三个select框
2017/06/19 PHP
thinkPHP5框架auth权限控制类与用法示例
2018/06/12 PHP
Webkit的跨域安全问题说明
2011/09/13 Javascript
js将当前时间格式转换成时间搓(自写)
2013/09/26 Javascript
Javascript核心读书有感之类型、值和变量
2015/02/11 Javascript
仅30行代码实现Javascript中的MVC
2016/02/15 Javascript
Iphone手机、安卓手机浏览器控制默认缩放大小的方法总结(附代码)
2017/08/18 Javascript
温故知新——JavaScript中的字符串连接问题最全总结(推荐)
2017/08/21 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
Three.js 再探 - 写一个微信跳一跳极简版游戏
2018/01/04 Javascript
Vuex新手的理解与使用详解
2019/05/31 Javascript
如何用webpack4.0撸单页/多页脚手架 (jquery, react, vue, typescript)
2019/06/18 jQuery
Element MessageBox弹框的具体使用
2020/07/27 Javascript
Jquery 获取相同NAME 或者id删除行操作
2020/08/24 jQuery
vue 将多个过滤器封装到一个文件中的代码详解
2020/09/05 Javascript
Vue项目配置跨域访问和代理proxy设置方式
2020/09/08 Javascript
Python多线程编程(八):使用Event实现线程间通信
2015/04/05 Python
wxPython的安装图文教程(Windows)
2017/12/28 Python
python批量设置多个Excel文件页眉页脚的脚本
2018/03/14 Python
东南亚地区最大的购物网站Lazada新加坡站点:Lazada.sg
2016/07/17 全球购物
汽车销售求职自荐信
2013/10/01 职场文书
竞选大队委员演讲稿
2014/04/28 职场文书
保护环境的标语
2014/06/09 职场文书
党员先进性教育整改措施
2014/09/18 职场文书
机关干部四风问题自我剖析及整改措施
2014/10/26 职场文书
2014年药店工作总结
2014/11/20 职场文书
考试作弊检讨书怎么写?
2014/12/21 职场文书
会计主管竞聘书
2015/09/15 职场文书
Python 如何将integer转化为罗马数(3999以内)
2021/06/05 Python
《总之就是很可爱》新作短篇动画《总之就是很可爱~制服~》将于2022年夏天播出
2022/04/07 日漫