用js限制网页只在微信浏览器中打开(或者只能手机端访问)

时间:2021-05-18

用js限制网页只在微信浏览器中打开

js代码一

$(function(){ //判断页面是否是在微信浏览器打开 //对浏览器的UserAgent进行正则匹配,不含有微信独有标识的则为其他浏览器 var useragent = navigator.userAgent; if (useragent.match(/MicroMessenger/i) != 'MicroMessenger') { window.location.href = "wxError.html";//若不是微信浏览器,跳转到温馨error页面 }})

代码二 写成函数方便引用

/** * 判断是否是微信环境 */ function getIsWxClient () { var ua = navigator.userAgent.toLowerCase(); if (ua.match(/MicroMessenger/i) == "micromessenger") { return true; } return false; };

代码三 微信自己写的的代码

window.isInWeixinApp = function() { return /MicroMessenger/.test(navigator.userAgent); };

页面

<!DOCTYPE html><html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> </head> <body> <script type="text/javascript"> var ua = navigator.userAgent.toLowerCase(); var isWeixin = ua.indexOf('micromessenger') != -1; var isAndroid = ua.indexOf('android') != -1; var isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1); if (!isWeixin) { document.head.innerHTML = '<title>抱歉,出错了</title><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0"><link rel="stylesheet" type="text/css" href="https://res.wx.qq.com/open/libs/weui/0.4.1/weui.css" rel="external nofollow" >'; document.body.innerHTML = '<div class="weui_msg"><div class="weui_icon_area"><i class="weui_icon_info weui_icon_msg"></i></div><div class="weui_text_area"><h4 class="weui_msg_title">请在微信客户端打开链接</h4></div></div>'; } </script> </body></html>

一般情况下限制页面被pc端访问就可以了,那么就可以参考下面的代码了

在需要被pc端访问的页面的脚本里加上如下代码即可:

<script>var system = {};var p = navigator.platform;var u = navigator.userAgent;system.win = p.indexOf("Win") == 0;system.mac = p.indexOf("Mac") == 0;system.x11 = (p == "X11") || (p.indexOf("Linux") == 0);if (system.win || system.mac || system.xll) {//如果是PC转  if (u.indexOf('Windows Phone') > -1) { //win手机端  } else {    window.location.href = "提示页面路径";  }}</script>

再附一个各大网站常用的代码

var browser = { versions : function () { var u = navigator.userAgent, app = navigator.appVersion; return { trident : u.indexOf('Trident') > -1, presto : u.indexOf('Presto') > -1, webKit : u.indexOf('AppleWebKit') > -1, gecko : u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, mobile : !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), ios : !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), android : u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, iPhone : u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, iPad : u.indexOf('iPad') > -1, webApp : u.indexOf('Safari') == -1, QQbrw : u.indexOf('MQQBrowser') > -1, UCbrw : u.indexOf('UCBrowser') > -1, weiXin : u.indexOf('MicroMessenger') > -1, ucLowEnd : u.indexOf('UCWEB7.') > -1, ucSpecial : u.indexOf('rv:1.2.3.4') > -1, ucweb : function () { try { return parseFloat(u.match(/ucweb\d+\.\d+/gi).toString().match(/\d+\.\d+/).toString()) >= 8.2 } catch (e) { if (u.indexOf('UC') > -1) { return true; } else { return false; } } } (), Symbian : u.indexOf('Symbian') > -1, ucSB : u.indexOf('Firefox/1.') > -1 }; } ()}

到这里就完美了,小编专门从电影网站扒的代码。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章