根据浏览器和分辨率通过JS动态调用CSS文件

本文介绍三种根据不同浏览器或分辨率自动切换CSS的方法。方法一基于分辨率选择不同的样式表;方法二仅依据浏览器类型来调用相应的CSS文件;方法三针对IE8及以下版本和Firefox提供特定样式。
方法一
View Code
<SCRIPT LANGUAGE="JavaScript">
<!--
if (window.navigator.userAgent.indexOf("MSIE")>=1)
{
var IE1024="";
var IE800="";
var IE1152="";
var IEother="";

ScreenWidth(IE1024,IE800,IE1152,IEother)
}else{
if (window.navigator.userAgent.indexOf("Firefox")>=1)
{
file://如果浏览器为Firefox
var Firefox1024="";
var Firefox800="";
var Firefox1152="";
var Firefoxother="";

ScreenWidth(Firefox1024,Firefox800,Firefox1152,Firefoxother)
}else{
file://如果浏览器为其他
var Other1024="";
var Other800="";
var Other1152="";
var Otherother="";
ScreenWidth(Other1024,Other800,Other1152,Otherother)
}
}

function ScreenWidth(CSS1,CSS2,CSS3,CSS4){
if ((screen.width == 1024) && (screen.height == 768)){
setActiveStyleSheet(CSS1);
}else{
if ((screen.width == 800) && (screen.height == 600)){
setActiveStyleSheet(CSS2);
}else{
if ((screen.width == 1152) && (screen.height == 864)){
setActiveStyleSheet(CSS3);
}else{
setActiveStyleSheet(CSS4);
}}}
}

function setActiveStyleSheet(title){ 
document.getElementsByTagName("link")[0].href="style/"+title; 
}
file://-->
</SCRIPT>

解释:

var IE1024="";
var IE800="";
var IE1152="";
var IEother="";

引号里面分别填写,用户使用IE的时候并且分辨率为1024*768,800*600,1152*864要使用的css文件名.

var Firefox1024="";
var Firefox800="";
var Firefox1152="";
var Firefoxother="";

  引号里面分别填写,用户使用FF的时候并且分辨率为1024*768,800*600,1152*864要使用的css文件名.

var Other1024="";
var Other800="";
var Other1152="";
var Otherother="";

  引号里面分别填写,用户使用其他浏览器的时候并且分辨率为1024*768,800*600,1152*864要使用的css文件名.

方法二:

  不判断分辨率,只判断浏览器,编如下代码。实现根据浏览器类型自动调用不同CSS。

  代码:

View Code
<SCRIPT LANGUAGE="JavaScript">
<!--
if (window.navigator.userAgent.indexOf("MSIE")>=1)
{
file://如果浏览器为IE
setActiveStyleSheet("default.css");
}else{
if (window.navigator.userAgent.indexOf("Firefox")>=1)
{
file://如果浏览器为Firefox
setActiveStyleSheet("default2.css");
}else{
file://如果浏览器为其他
setActiveStyleSheet("newsky.css");
}
}

function setActiveStyleSheet(title){ 
document.getElementsByTagName("link")[0].href="style/"+title; 
}
file://-->
</SCRIPT>

 

  解释:

  如果浏览器为IE,则调用default.css

  如果浏览器为Firefox,则调用default2.css

  如果浏览器为其他,则调用newsky.css

  用法:放在</head>前面即可。

方法三 :

View Code
<link id="csslinkid" rel="stylesheet" href="css/style.css" type="text/css" media="all" />        
        
<script language="javascript"> 

var obj=document.getElementById("csslinkid") 
var userAgent=navigator.userAgent, version=0;

version = parseFloat(userAgent.substring(userAgent.indexOf('MSIE')+4,userAgent.length));

if(version <=8.0 )
{obj.href="css/ie6-style.css"; }
else
{obj.href="css/style.css";}

if (userAgent.indexOf("Firefox")>=1)
{obj.href="css/ie6-style.css"; }

</script> 

 

转载于:https://www.cnblogs.com/jarick/archive/2012/11/22/2783503.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值