如何通过像素和js检测将用户重定向到正确的网站模板?

时间:2013-06-16 03:07:17

标签: php javascript jquery html css

我在jquery中创建了一个很好的代码, 它检查屏幕上的像素,并很快重定向到适当的版本

但我到了需要支持禁用的javascript的地步 我被卡住了 “我怎么去检查javascript中是否禁用了javascript?”傻了吧

所以我应该做什么来运行检查我听说过视口但我不知道它是否真的可以重定向到索引

var w = $(this).width();
        var h = $(this).height();
        if (w > 310 && w > 190 && h > 310)
        {
                alert('Tiny basic html Version <310x<310');

        }
        else if (w > 310 && w <= 800 && h > 480 && h < 1800)
        {// only if its not a desktop like windows or mac or linux or any other mature browser
        //only mobile detection here and other stuff
                alert('SmartPhone Version <800x>480');

        }
        if (w > 800 && w < 3500 && h < 3000)
        {//if its mobile os redirect to the smarphone version no matter how big that tablet is unless option

            alert('Large Desktop with OS detection');

        }

1 个答案:

答案 0 :(得分:2)

您可以重定向到移动页面

<script type="text/javascript">
<!--
if (screen.width <= 700) {
document.location = "/mobile";
}
//-->
</script>

但是,如果JavaScript被禁用,您可以使用css重新调整网站大小并重新整形,具体取决于屏幕尺寸

@media screen and (max-width:800px) {

// then put your mobile css in here

}

同样的事情,但特定于屏幕比率(iphone 5)

@media screen and (device-aspect-ratio: 40/71)
{

}

此处有更多信息:http://css-tricks.com/snippets/css/media-queries-for-standard-devices/

对于@media screen,如果您在当场调整页面的大小,它会逐字地更改页面,您可以删除列或将其移动到其他页面下以获得不同的大小

或者如果您真的想要,请将php用于特定设备

<?php
$iphone = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
$android = strpos($_SERVER['HTTP_USER_AGENT'],"Android");
$palmpre = strpos($_SERVER['HTTP_USER_AGENT'],"webOS");
$berry = strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry");
$ipod = strpos($_SERVER['HTTP_USER_AGENT'],"iPod");
// ect ect....

if ($iphone || $android || $palmpre || $ipod || $berry == true) 
{ 
header('Location: http://mobile.site.com/');
//OR
echo "<script>window.location='http://mobile.site.com'</script>";
}
?>