[英]Making a site mobile friendly
有没有办法做到这一点,所以当用电话或其他小型移动设备查看网站时,该网站会自动识别该网站正在被查看,并重定向到电话友好的子域镜像或自动调用一个脚本电话友好吗?
任何文章或建议,将不胜感激!
HTTP请求中的user-agent
可以帮助检测浏览器。 然后,当从特定浏览器查看页面时,您可以重定向到子域。
否则,也可以使用media
CSS选择器来使布局适应设备的类型。 有媒体类型的handheld
,但我不知道它的支持程度。
使用多个CSS。
<link href="/css/mobile.css" rel="stylesheet" type="text/css" media="handheld" />
好吧,当然,您可以使用JavaScript代码检查用户运行的浏览器类型,并对此做出适当的响应。 例如 :
var browser = navigator.appName;
if (browser == 'Mozilla Firefox') {
// do something
} else if (browser == 'Some Weird Browser') {
// do something else
}
有几种方法可以帮助您检测移动浏览器。 以下是一些示例PHP代码:
function isMobileBrowser() {
if(isset($_SERVER["HTTP_X_WAP_PROFILE"])) return true;
if(preg_match("/wap\.|\.wap/i",$_SERVER["HTTP_ACCEPT"])) return true;
if(isset($_SERVER["HTTP_USER_AGENT"])){
// Quick Array to kill out matches in the user agent
// that might cause false positives
$badmatches = array("OfficeLiveConnector","MSIE\ 8\.0","OptimizedIE8","MSN\ Optimized","Creative\ AutoUpdate","Swapper");
foreach($badmatches as $badstring){
if(preg_match("/".$badstring."/i",$_SERVER["HTTP_USER_AGENT"])) return false;
}
// Now we'll go for positive matches
$uamatches = array("midp", "j2me", "avantg", "docomo", "novarra", "palmos", "palmsource", "240x320", "opwv", "chtml", "pda", "windows\ ce", "mmp\/", "blackberry", "mib\/", "symbian", "wireless", "nokia", "hand", "mobi", "phone", "cdm", "up\.b", "audio", "SIE\-", "SEC\-", "samsung", "HTC", "mot\-", "mitsu", "sagem", "sony", "alcatel", "lg", "erics", "vx", "NEC", "philips", "mmm", "xx", "panasonic", "sharp", "wap", "sch", "rover", "pocket", "benq", "java", "pt", "pg", "vox", "amoi", "bird", "compal", "kg", "voda", "sany", "kdd", "dbt", "sendo", "sgh", "gradi", "jb", "\d\d\di", "moto","webos");
foreach($uamatches as $uastring){
if(preg_match("/".$uastring."/i",$_SERVER["HTTP_USER_AGENT"])) return true;
}
}
return false;
}
资料来源: http : //www.brainhandles.com/techno-thoughts/detecting-mobile-browsers
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.