Home  >  Q&A  >  body text

javascript - uc, qq, and sogou. The above three mobile browsers determine that the js code on the mobile terminal is not executed.

Like the title

Write a piece of code to judge the mobile terminal and jump, but it will not be executed on the mobile terminals of uc, qq, and Sogou, but it can be executed on the mobile browsers of chrome, Xiaomi, and WeChat

var browser = {
        versions: function () {
            var u = navigator.userAgent, app = navigator.appVersion;
            return {
                trident: u.indexOf('Trident') > -1, //IE内核
                presto: u.indexOf('Presto') > -1, //opera内核
                webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
                gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,//火狐内核
                mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
                ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
                android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端
                iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器
                iPad: u.indexOf('iPad') > -1, //是否iPad
                webApp: u.indexOf('Safari') == -1, //是否web应该程序,没有头部与底部
                weixin: u.indexOf('MicroMessenger') > -1, //是否微信 (2015-01-22新增)
                qq: u.match(/\sQQ/i) == " qq" //是否QQ
            };
        }(),
    };
    if (browser.versions.android || browser.versions.ios || browser.versions.mobile || browser.versions.iPhone||browser.versions.webApp||browser.versions.weixin||browser.versions.qq) {
        window.location = 'mobileWeb.html'
    }
巴扎黑巴扎黑2547 days ago2569

reply all(4)I'll reply

  • 黄舟

    黄舟2017-07-05 10:52:27

    if('ontouchend' in document) {
        // 移动端
    }

    reply
    0
  • 世界只因有你

    世界只因有你2017-07-05 10:52:27

    "SE" judges Sogou, "UBrowser" judges UC, you need to add two, modify "QQBrowser" to judge QQ, and then give it a try

    reply
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-07-05 10:52:27

    Finally I found out that it turned out to be a sentence of es6 syntax, which was not supported by uc, sogou, and qq browsers, resulting in the error code not being executed. . . After downloading a vConsole debugging tool, the error was displayed on the mobile terminal.

    reply
    0
  • 学习ing

    学习ing2017-07-05 10:52:27

    Zhengze can’t match up to Sa. Print out ua and see for yourself where there are no matches. Doesn’t the mobile ua have a simpler mobile keyword? Is it so complicated?

    reply
    0
  • Cancelreply