1. 程式人生 > >js判斷當前訪問客戶端是ios或安卓或微信

js判斷當前訪問客戶端是ios或安卓或微信

做這樣的判斷,原則上應該是後臺程式判斷處理,更為嚴謹;但是在一些h5頁面中,不需要太嚴格,則通過js也可做對應判斷。

原理:通過判斷客戶端的userAgent方式解決。

程式碼如下:

    var $rongyinu_app="rongyinu://com.rongyinu.platform"; //app程式協議,可對應調取開啟相應app
    var $android_url="/download/app1";
    var $ios_url="/download/app2";
    var $pc_url="http://www.baidu.com";

    if (/android/i.test(navigator.userAgent)){
        //判斷為android
        if (navigator.userAgent.match(/MicroMessenger/i) != 'MicroMessenger'){
            //非微信,即瀏覽器訪問
            window.location = $android_url;
            /*if(navigator.userAgent.indexOf('Chrome')>-1){
                //安卓原生瀏覽器支援scheme協議,可直接開啟相應程式
                window.location = $rongyinu_app;
                setTimeout(function(){
                    //此處如果執行則表示沒有app
                    window.location = $android_url;
                },600);
            }else{
                //非谷歌不支援scheme協議,則跳轉至下載地址
                window.location = $android_url;
            }*/
        } else {
            //微信中不支援下載,則顯示相應提示頁面
            document.getElementById('weixin_pageto').style.display="block";
        }
    }else if (/ipad|iphone/i.test(navigator.userAgent)){
        //判斷為ios
        window.location = $rongyinu_app;
        setTimeout(function(){
            //此處如果執行則表示沒有app
            window.location = $ios_url;
        },600);

    }else{//pc端訪問
        window.location = $pc_url;
    }