茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    使用JavaScript腳本判斷頁面是否在微信中被打開
    來源:易賢網(wǎng) 閱讀:3010 次 日期:2016-07-22 16:48:13
    溫馨提示:易賢網(wǎng)小編為您整理了“使用JavaScript腳本判斷頁面是否在微信中被打開”,方便廣大網(wǎng)友查閱!

    這篇文章主要介紹了使用JavaScript腳本判斷網(wǎng)頁是否在微信中被打開的方法,在各種使用微信參加活動的移動版頁面上經(jīng)??梢杂玫?需要的朋友可以參考下

    1、根據(jù)User-Agent判斷

    // Js獲取User-Agent 

    window.navigator.userAgent 

    if(window.navigator.userAgent.match(/MicroMessenger/i) == "micromessenger") 

    // Php獲取User-Agent 

    echo $_SERVER['HTTP_USER_AGENT']; 

    if(strpos($_SERVER['HTTP_USER_AGENT'],'MicroMessenger')==true) 

    // 微信內(nèi)部打開獲取到的User-Agent 

    Mozilla/5.0 (Linux; U; Android 5.0.2; zh-cn; MI 2S Build/LRX22G) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.4 TBS/025488 Mobile Safari/533.1 MicroMessenger/6.3.9.48_refecd3e.700 NetType/WIFI Language/zh_CN 

    2、Url地址判斷

    // 你網(wǎng)頁正常的url是 

    https://forum.xxx.com/home.php?view=2015 

    // 使用微信打開會在url后面添加幾個參數(shù) 

    https://forum.xxx.com/home.php?view=2015&from=timeline&isappinstalled=0 

    3、使用weixin-web-js判斷是否是微信

    ! function(a, b) {

      "function" == typeof define && (define.amd || define.cmd) ? define(function() {

        return b(a)

      }) : b(a, !0)

    }(this, function(a, b) {

      function c(b, c, d) {

        a.WeixinJSBridge ? WeixinJSBridge.invoke(b, e(c), function(a) {

          g(b, a, d)

        }) : j(b, d)

      }

      function d(b, c, d) {

        a.WeixinJSBridge ? WeixinJSBridge.on(b, function(a) {

          d && d.trigger && d.trigger(a), g(b, a, c)

        }) : d ? j(b, d) : j(b, c)

      }

      function e(a) {

        return a = a || {}, a.appId = E.appId, a.verifyAppId = E.appId, a.verifySignType = "sha1", a.verifyTimestamp = E.timestamp + "", a.verifyNonceStr = E.nonceStr, a.verifySignature = E.signature, a

      }

      function f(a) {

        return {

          timeStamp: a.timestamp + "",

          nonceStr: a.nonceStr,

          "package": a.package,

          paySign: a.paySign,

          signType: a.signType || "SHA1"

        }

      }

      function g(a, b, c) {

        var d, e, f;

        switch (delete b.err_code, delete b.err_desc, delete b.err_detail, d = b.errMsg, d || (d = b.err_msg, delete b.err_msg, d = h(a, d), b.errMsg = d), c = c || {}, c._complete && (c._complete(b), delete c._complete), d = b.errMsg || "", E.debug && !c.isInnerInvoke && alert(JSON.stringify(b)), e = d.indexOf(":"), f = d.substring(e + 1)) {

          case "ok":

            c.success && c.success(b);

            break;

          case "cancel":

            c.cancel && c.cancel(b);

            break;

          default:

            c.fail && c.fail(b)

        }

        c.complete && c.complete(b)

      }

      function h(a, b) {

        var e, f, c = a,

          d = p[c];

        return d && (c = d), e = "ok", b && (f = b.indexOf(":"), e = b.substring(f + 1), "confirm" == e && (e = "ok"), "failed" == e && (e = "fail"), -1 != e.indexOf("failed_") && (e = e.substring(7)), -1 != e.indexOf("fail_") && (e = e.substring(5)), e = e.replace(/_/g, " "), e = e.toLowerCase(), ("access denied" == e || "no permission to execute" == e) && (e = "permission denied"), "config" == c && "function not exist" == e && (e = "ok"), "" == e && (e = "fail")), b = c + ":" + e

      }

      function i(a) {

        var b, c, d, e;

        if (a) {

          for (b = 0, c = a.length; c > b; ++b) d = a[b], e = o[d], e && (a[b] = e);

          return a

        }

      }

      function j(a, b) {

        if (!(!E.debug || b && b.isInnerInvoke)) {

          var c = p[a];

          c && (a = c), b && b._complete && delete b._complete, console.log('"' + a + '",', b || "")

        }

      }

      function k() {

        0 != D.preVerifyState && (u || v || E.debug || "6.0.2" > z || D.systemType < 0 || A || (A = !0, D.appId = E.appId, D.initTime = C.initEndTime - C.initStartTime, D.preVerifyTime = C.preVerifyEndTime - C.preVerifyStartTime, H.getNetworkType({

          isInnerInvoke: !0,

          success: function(a) {

            var b, c;

            D.networkType = a.networkType, b = "http://open.weixin.qq.com/sdk/report?v=" + D.version + "&o=" + D.preVerifyState + "&s=" + D.systemType + "&c=" + D.clientVersion + "&a=" + D.appId + "&n=" + D.networkType + "&i=" + D.initTime + "&p=" + D.preVerifyTime + "&u=" + D.url, c = new Image, c.src = b

          }

        })))

      }

      function l() {

        return (new Date).getTime()

      }

      function m(b) {

        w && (a.WeixinJSBridge ? b() : q.addEventListener && q.addEventListener("WeixinJSBridgeReady", b, !1))

      }

      function n() {

        H.invoke || (H.invoke = function(b, c, d) {

          a.WeixinJSBridge && WeixinJSBridge.invoke(b, e(c), d)

        }, H.on = function(b, c) {

          a.WeixinJSBridge && WeixinJSBridge.on(b, c)

        })

      }

      var o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H;

      if (!a.jWeixin) return o = {

        config: "preVerifyJSAPI",

        onMenuShareTimeline: "menu:share:timeline",

        onMenuShareAppMessage: "menu:share:appmessage",

        onMenuShareQQ: "menu:share:qq",

        onMenuShareWeibo: "menu:share:weiboApp",

        onMenuShareQZone: "menu:share:QZone",

        previewImage: "imagePreview",

        getLocation: "geoLocation",

        openProductSpecificView: "openProductViewWithPid",

        addCard: "batchAddCard",

        openCard: "batchViewCard",

        chooseWXPay: "getBrandWCPayRequest"

      }, p = function() {

        var b, a = {};

        for (b in o) a[o[b]] = b;

        return a

      }(), q = a.document, r = q.title, s = navigator.userAgent.toLowerCase(), t = navigator.platform.toLowerCase(), u = !(!t.match("mac") && !t.match("win")), v = -1 != s.indexOf("wxdebugger"), w = -1 != s.indexOf("micromessenger"), x = -1 != s.indexOf("android"), y = -1 != s.indexOf("iphone") || -1 != s.indexOf("ipad"), z = function() {

        var a = s.match(/micromessenger\/(\d+\.\d+\.\d+)/) || s.match(/micromessenger\/(\d+\.\d+)/);

        return a ? a[1] : ""

      }(), A = !1, B = !1, C = {

        initStartTime: l(),

        initEndTime: 0,

        preVerifyStartTime: 0,

        preVerifyEndTime: 0

      }, D = {

        version: 1,

        appId: "",

        initTime: 0,

        preVerifyTime: 0,

        networkType: "",

        preVerifyState: 1,

        systemType: y ? 1 : x ? 2 : -1,

        clientVersion: z,

        url: encodeURIComponent(location.href)

      }, E = {}, F = {

        _completes: []

      }, G = {

        state: 0,

        data: {}

      }, m(function() {

        C.initEndTime = l()

      }), H = {

        config: function(a) {

          E = a, j("config", a);

          var b = E.check === !1 ? !1 : !0;

          m(function() {

            var a, d, e;

            if (b) c(o.config, {

              verifyJsApiList: i(E.jsApiList)

            }, function() {

              F._complete = function(a) {

                C.preVerifyEndTime = l(), G.state = 1, G.data = a

              }, F.success = function() {

                D.preVerifyState = 0

              }, F.fail = function(a) {

                F._fail ? F._fail(a) : G.state = -1

              };

              var a = F._completes;

              return a.push(function() {

                k()

              }), F.complete = function() {

                for (var c = 0, d = a.length; d > c; ++c) a[c]();

                F._completes = []

              }, F

            }()), C.preVerifyStartTime = l();

            else {

              for (G.state = 1, a = F._completes, d = 0, e = a.length; e > d; ++d) a[d]();

              F._completes = []

            }

          }), E.beta && n()

        },

        ready: function(a) {

          0 != G.state ? a() : (F._completes.push(a), !w && E.debug && a())

        },

        error: function(a) {

          "6.0.2" > z || B || (B = !0, -1 == G.state ? a(G.data) : F._fail = a)

        },

        checkJsApi: function(a) {

          var b = function(a) {

            var c, d, b = a.checkResult;

            for (c in b) d = p[c], d && (b[d] = b[c], delete b[c]);

            return a

          };

          c("checkJsApi", {

            jsApiList: i(a.jsApiList)

          }, function() {

            return a._complete = function(a) {

              if (x) {

                var c = a.checkResult;

                c && (a.checkResult = JSON.parse(c))

              }

              a = b(a)

            }, a

          }())

        },

        onMenuShareTimeline: function(a) {

          d(o.onMenuShareTimeline, {

            complete: function() {

              c("shareTimeline", {

                title: a.title || r,

                desc: a.title || r,

                img_url: a.imgUrl || "",

                link: a.link || location.href,

                type: a.type || "link",

                data_url: a.dataUrl || ""

              }, a)

            }

          }, a)

        },

        onMenuShareAppMessage: function(a) {

          d(o.onMenuShareAppMessage, {

            complete: function() {

              c("sendAppMessage", {

                title: a.title || r,

                desc: a.desc || "",

                link: a.link || location.href,

                img_url: a.imgUrl || "",

                type: a.type || "link",

                data_url: a.dataUrl || ""

              }, a)

            }

          }, a)

        },

        onMenuShareQQ: function(a) {

          d(o.onMenuShareQQ, {

            complete: function() {

              c("shareQQ", {

                title: a.title || r,

                desc: a.desc || "",

                img_url: a.imgUrl || "",

                link: a.link || location.href

              }, a)

            }

          }, a)

        },

        onMenuShareWeibo: function(a) {

          d(o.onMenuShareWeibo, {

            complete: function() {

              c("shareWeiboApp", {

                title: a.title || r,

                desc: a.desc || "",

                img_url: a.imgUrl || "",

                link: a.link || location.href

              }, a)

            }

          }, a)

        },

        onMenuShareQZone: function(a) {

          d(o.onMenuShareQZone, {

            complete: function() {

              c("shareQZone", {

                title: a.title || r,

                desc: a.desc || "",

                img_url: a.imgUrl || "",

                link: a.link || location.href

              }, a)

            }

          }, a)

        },

        startRecord: function(a) {

          c("startRecord", {}, a)

        },

        stopRecord: function(a) {

          c("stopRecord", {}, a)

        },

        onVoiceRecordEnd: function(a) {

          d("onVoiceRecordEnd", a)

        },

        playVoice: function(a) {

          c("playVoice", {

            localId: a.localId

          }, a)

        },

        pauseVoice: function(a) {

          c("pauseVoice", {

            localId: a.localId

          }, a)

        },

        stopVoice: function(a) {

          c("stopVoice", {

            localId: a.localId

          }, a)

        },

        onVoicePlayEnd: function(a) {

          d("onVoicePlayEnd", a)

        },

        uploadVoice: function(a) {

          c("uploadVoice", {

            localId: a.localId,

            isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1

          }, a)

        },

        downloadVoice: function(a) {

          c("downloadVoice", {

            serverId: a.serverId,

            isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1

          }, a)

        },

        translateVoice: function(a) {

          c("translateVoice", {

            localId: a.localId,

            isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1

          }, a)

        },

        chooseImage: function(a) {

          c("chooseImage", {

            scene: "1|2",

            count: a.count || 9,

            sizeType: a.sizeType || ["original", "compressed"],

            sourceType: a.sourceType || ["album", "camera"]

          }, function() {

            return a._complete = function(a) {

              if (x) {

                var b = a.localIds;

                b && (a.localIds = JSON.parse(b))

              }

            }, a

          }())

        },

        previewImage: function(a) {

          c(o.previewImage, {

            current: a.current,

            urls: a.urls

          }, a)

        },

        uploadImage: function(a) {

          c("uploadImage", {

            localId: a.localId,

            isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1

          }, a)

        },

        downloadImage: function(a) {

          c("downloadImage", {

            serverId: a.serverId,

            isShowProgressTips: 0 == a.isShowProgressTips ? 0 : 1

          }, a)

        },

        getNetworkType: function(a) {

          var b = function(a) {

            var c, d, e, b = a.errMsg;

            if (a.errMsg = "getNetworkType:ok", c = a.subtype, delete a.subtype, c) a.networkType = c;

            else switch (d = b.indexOf(":"), e = b.substring(d + 1)) {

              case "wifi":

              case "edge":

              case "wwan":

                a.networkType = e;

                break;

              default:

                a.errMsg = "getNetworkType:fail"

            }

            return a

          };

          c("getNetworkType", {}, function() {

            return a._complete = function(a) {

              a = b(a)

            }, a

          }())

        },

        openLocation: function(a) {

          c("openLocation", {

            latitude: a.latitude,

            longitude: a.longitude,

            name: a.name || "",

            address: a.address || "",

            scale: a.scale || 28,

            infoUrl: a.infoUrl || ""

          }, a)

        },

        getLocation: function(a) {

          a = a || {}, c(o.getLocation, {

            type: a.type || "wgs84"

          }, function() {

            return a._complete = function(a) {

              delete a.type

            }, a

          }())

        },

        hideOptionMenu: function(a) {

          c("hideOptionMenu", {}, a)

        },

        showOptionMenu: function(a) {

          c("showOptionMenu", {}, a)

        },

        closeWindow: function(a) {

          a = a || {}, c("closeWindow", {}, a)

        },

        hideMenuItems: function(a) {

          c("hideMenuItems", {

            menuList: a.menuList

          }, a)

        },

        showMenuItems: function(a) {

          c("showMenuItems", {

            menuList: a.menuList

          }, a)

        },

        hideAllNonBaseMenuItem: function(a) {

          c("hideAllNonBaseMenuItem", {}, a)

        },

        showAllNonBaseMenuItem: function(a) {

          c("showAllNonBaseMenuItem", {}, a)

        },

        scanQRCode: function(a) {

          a = a || {}, c("scanQRCode", {

            needResult: a.needResult || 0,

            scanType: a.scanType || ["qrCode", "barCode"]

          }, function() {

            return a._complete = function(a) {

              var b, c;

              y && (b = a.resultStr, b && (c = JSON.parse(b), a.resultStr = c && c.scan_code && c.scan_code.scan_result))

            }, a

          }())

        },

        openProductSpecificView: function(a) {

          c(o.openProductSpecificView, {

            pid: a.productId,

            view_type: a.viewType || 0,

            ext_info: a.extInfo

          }, a)

        },

        addCard: function(a) {

          var e, f, g, h, b = a.cardList,

            d = [];

          for (e = 0, f = b.length; f > e; ++e) g = b[e], h = {

            card_id: g.cardId,

            card_ext: g.cardExt

          }, d.push(h);

          c(o.addCard, {

            card_list: d

          }, function() {

            return a._complete = function(a) {

              var c, d, e, b = a.card_list;

              if (b) {

                for (b = JSON.parse(b), c = 0, d = b.length; d > c; ++c) e = b[c], e.cardId = e.card_id, e.cardExt = e.card_ext, e.isSuccess = e.is_succ ? !0 : !1, delete e.card_id, delete e.card_ext, delete e.is_succ;

                a.cardList = b, delete a.card_list

              }

            }, a

          }())

        },

        chooseCard: function(a) {

          c("chooseCard", {

            app_id: E.appId,

            location_id: a.shopId || "",

            sign_type: a.signType || "SHA1",

            card_id: a.cardId || "",

            card_type: a.cardType || "",

            card_sign: a.cardSign,

            time_stamp: a.timestamp + "",

            nonce_str: a.nonceStr

          }, function() {

            return a._complete = function(a) {

              a.cardList = a.choose_card_info, delete a.choose_card_info

            }, a

          }())

        },

        openCard: function(a) {

          var e, f, g, h, b = a.cardList,

            d = [];

          for (e = 0, f = b.length; f > e; ++e) g = b[e], h = {

            card_id: g.cardId,

            code: g.code

          }, d.push(h);

          c(o.openCard, {

            card_list: d

          }, a)

        },

        chooseWXPay: function(a) {

          c(o.chooseWXPay, f(a), a)

        }

      }, b && (a.wx = a.jWeixin = H), H

    });

    更多信息請查看網(wǎng)絡(luò)編程
    易賢網(wǎng)手機(jī)網(wǎng)站地址:使用JavaScript腳本判斷頁面是否在微信中被打開
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2026上岸·考公考編培訓(xùn)報班

    • 報班類型
    • 姓名
    • 手機(jī)號
    • 驗證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機(jī)站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報警專用圖標(biāo)