[英]detect mobile browser and javascript support
我想檢測請求是否來自移動瀏覽器(即使用java / jsp)
現在,當我從三星手機訪問該頁面時,我得到的用戶代理標頭為:-
SAMSUNG-GT-S5620 / S5620DDJE1 SHP / VPP / R5 Dolfin / 1.5下一個SMM-MMS / 1.2.0配置文件/MIDP-2.1配置/CLDC-1.1
我應該檢查標題包含iPhone,BlackBerry,Android,webOS,iPod,Samsung還是有一些更簡單的方法...
我如何確保瀏覽器支持javascript和
順便說一句,移動瀏覽器是否支持hashchange或任何js“ 高級 ”
如果移動瀏覽器不支持javascript,那么我想以一種形式重定向到一些簡單的頁面...
或者我必須為移動瀏覽器制作一個簡單的頁面,以便無論是否支持js都能正常運行
謝謝
您可以使用WURFL之類的東西來查看瀏覽器是否具有某種程度的Javascript支持。
但是,您無法確定瀏覽器是否啟用了Javascript或該特定設備上瀏覽器的特定版本支持哪些Javascript功能。
相反,您應該在瀏覽器中使用漸進增強功能,通過測試所需的特定功能來添加基於Javascript的功能。
您是否嘗試過使用Modernizr之類的工具 ? 通常,您不應該檢測瀏覽器,因為它們太多了,並且您只是不知道每個平台上每個瀏覽器的每個版本的每個功能,更不用說您甚至不能確保用戶代理標頭是對。 您應該改為檢測功能。
還有更多的瀏覽器和多不兼容上比台式機的移動平台。 在嘗試為移動瀏覽器構建便攜式網站之后,您實際上會開始喜歡IE6,因為它符合標准。 這就是為什么我建議使用jQuery Mobile之類的工具來進行艱苦的工作來弄清平台之間的差異和不一致之處,並為您提供一個良好而一致的API。 否則,這里是您必須考慮支持的平台列表: http : //jquerymobile.com/gbs/
嘗試以下操作:(盡管這會從客戶端進行檢測)
<!DOCTYPE html>
<html>
<head> <title> going from here to the real page... </title> </head>
<body>
<noscript>
Javascript is disabled.
<meta HTTP-EQUIV="REFRESH" content="0; url=http://www.yourSite.com/yourStaticPage.html/">
</noscript>
<script type="text/javascript">
// most of smartphons support this orientation property:
if (typeof window.orientation !== 'undefined'){
window.location.replace("http://yourSite.com/yourMobilePage.html");
}
else {
window.location.replace("http://yourSite.com/yourDesktopPage.html");
}
</script>
</body>
</html>
使用www.handsetdetection.com,我將在檢測服務器端進行操作。 如果瀏覽器質量低下或過於復雜,則將其重定向到簡單的移動頁面;如果瀏覽器不錯,則將其發送到您的移動頁面。
檢測將在您的主站點上進行。 要允許訪問者從您的移動網站移回您的普通網站,請檢查http引薦來源網址。 如果引薦來源網址是您的移動網站,請不要將其重定向回。
希望能有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.