根据使用者改变样式表

时间:2011-11-30 17:17:45

标签: javascript iphone css resolution user-agent

<script language="Javascript">
var deviceIphone = "iPhone";
var deviceIpod = "iPod";

//Initialize our user agent string to lower case.
var uagent = navigator.userAgent.toLowerCase();

//**************************
// Detects if the current device is an iPhone.
function DetectiPhone()
{
   if (uagent.search(deviceIphone) > -1)
   {document.write('<link rel="stylesheet" type="text/css"       href="ui/mobile/css/site.css">');
}   

等...

以上是我的代码的开头。我正在尝试根据用户使用的平台更改CSS文件。我目前使用media =“screen ...”但它不适用于我正在尝试使用的平台数量。我需要更详细/更复杂的东西,这就是我转向使用者的原因。

使用上述代码在我的iPhone上更改css文件的原因有哪些?

更好的是,还有其他方法可以根据用户平台/屏幕分辨率更改样式表吗?

2 个答案:

答案 0 :(得分:3)

试试这个:

if(navigator.userAgent.match(/iPhone/i)){
    // code
}

使用正则表达式匹配工作。标志“i”表示不区分大小写;)

答案 1 :(得分:0)

也许上面的代码不起作用,因为你将UA字符串转换为小写,但你的目标设备字符串是camelCased:)

默认情况下search()功能区分大小写