2011-07-29 84 views

回答

0

你必須在服務器上測試該瀏覽器請求報頭(用戶代理),然後結合相應的框架:

例如看到 http://pgl.yoyo.org/http/browser-headers.php 的User-Agent:Mozilla的/ 5.0(窗口; U; Windows NT的6.1;德; RV:1.9.2.18)的Gecko/20110614火狐/ 3.6.18

1

這裏是做客戶端的一種方式:

<html> 
    <head> 
     <script type="text/javascript"> 
       function isMobileDevice() { 
       var index = navigator.appVersion.indexOf("Mobile"); 
    return (index > -1); 
       } 
       function loadJQuery() { 
       if(isMobileDevice()) 
        document.write("<script type='text/javacript src='"+path_to_mobile_jquery+"'></script>"); 
       else 
document.write("<script type='text/javacript src='"+path_to_normal_jquery+"'></script>"); 
       } 
     </script> 
    </head> 
    <body onload="loadJQuery();"> 
     <!-- Content --> 
    </body> 
</html> 
1

也許建立一個可能的瀏覽器類型的枚舉,然後測試對window.navigator.userAgent?您可以使用像Modernizr這樣的庫來測試功能,但這不會讓您看到實際的瀏覽器類型。沒有(尚)userAgent道具來識別瀏覽器類(桌面,平板電腦,手機等),所以你堅持做一個愚蠢的UA比較。

51 Degrees這樣的項目旨在簡化此評估,但它們會產生隱性成本 - 即51度需要10秒以上的時間來評估客戶端瀏覽器並進行相應的重定向。當然,就你而言,你需要條件樣式 - 而不是重定向。這表明window.navigator.userAgent檢查可能適用於if(true) document.write('<javascript resource />')類型的方法。

相關問題