我创建了一个检测脚本,用于在用户到达我的网站时嗅探带有视网膜显示(或类似设备)的任何设备(当前只有iPhone4)。由于分辨率更高,我需要推送更高分辨率的图像/图形。我能找到的唯一解决方案(使用PHP和JavaScript)是检测devicePixelRatio
并设置一个cookie。下面是我使用的代码:使用PHP和/或JavaScript的iPhone4视网膜显示检测
<?php
$imgPath = "images/";
if(isset($_COOKIE["imgRes"])){
$imgRes = $_COOKIE["imgRes"];
if($imgRes >= 2){
$imgPath = "images/highRes/";
}
} else {
?>
<script language="javascript">
var the_cookie = "imgRes="+window.devicePixelRatio+";"+the_cookie;
document.cookie = the_cookie;
location = '<?=$_SERVER['PHP_SELF']?>';
</script>
<?php
}
?>
有没有人碰到这样做的更好的方法或有改善这个脚本的任何建议。这个脚本确实有效,只是感觉很脏。
我喜欢这种方法,喜欢它的简单可靠地读取脚本标记的内容。不过,我想调整图像路径。 – Corey 2011-05-06 17:54:34
这实际上是最好的解决方案。谢谢你的提示。 – Corey 2011-06-24 16:01:11