最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

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

来源:动视网 责编:小采 时间:2020-11-27 20:54:15
文档

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

firefox火狐浏览器与与ie兼容的2个问题总结_javascript技巧:1:rules与cssRules区别: 代码如下: function addCSSRule(css,key,value){ //var css = document.styleSheets[document.styleSheets.length-1]; if(navigator.userAgent.indexOf(Firefox)>0 ) {
推荐度:
导读firefox火狐浏览器与与ie兼容的2个问题总结_javascript技巧:1:rules与cssRules区别: 代码如下: function addCSSRule(css,key,value){ //var css = document.styleSheets[document.styleSheets.length-1]; if(navigator.userAgent.indexOf(Firefox)>0 ) {


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 = '01234567ABCDEF';
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进制的。我也整理了一个很笨的转换方法再上面望打击拍砖!

文档

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

firefox火狐浏览器与与ie兼容的2个问题总结_javascript技巧:1:rules与cssRules区别: 代码如下: function addCSSRule(css,key,value){ //var css = document.styleSheets[document.styleSheets.length-1]; if(navigator.userAgent.indexOf(Firefox)>0 ) {
推荐度:
标签: 几个 IE 兼容
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top