微信会屏蔽 URL 自定义的 scheme ,导致无法跳转手机中的浏览器。网上有一些工具类网站可以实现直接跳转浏览器,之后有机会我会整理一下。我们今天只讨论通过 JavaScript 判断是否在微信浏览器中打开,如果是则弹出提示,在浏览器中打开。

我首先在 body 中写了一个提示信息:(默认隐藏)

请点击屏幕右上角 [ ··· ]

在  浏览器打开

图标我使用的阿里图标库,节省资源,提高打开速度。

通过 JavaScript 判断浏览器内核,如果是微信,显示信息,提示“在浏览器打开”,如果不是则自动跳转下载链接:

/*

* 智能手机浏览器版本信息:

*/

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.*/) || !!u.match(/AppleWebKit/), //是否为移动终端

ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端

android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器

iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器

iPad: u.indexOf('iPad') > -1, //是否iPad

webApp: u.indexOf('Safari') == -1, //是否web应该程序,没有头部与底部

wx: u.indexOf("MicroMessenger") > 0 //是否是微信

};

}(),

language: (navigator.browserLanguage || navigator.language).toLowerCase()

}, con = document.getElementById("container");

if (browser.versions.wx) {

con.style.cssText = "display:block";

// window.location.href= 'http://c.pc.qq.com/middle.html?pfurl=https://www.rencaiyoujia.com/appdown/index.html';

} else if (browser.versions.android) {

// 此处写Andoird 的下载地址

window.location = "https://www.w3h5.com/w3h5.apk";

} else if (browser.versions.ios || browser.versions.iPhone || browser.versions.iPad) {

alert("iOS暂不支持下载哦~");

//TODO 此处写ios的下载地址

window.location = "https://www.w3h5.com/w3h5.ipa";

} else {

window.location = "https://www.w3h5.com/w3h5.apk";

}

这样如果是微信打开会自动提示在浏览器中打开,如下图所示:

我把代码放在了我的 GitHub 上,有需要的可以:点击访问

html判断是否在微信里打开,JavaScript判断浏览器内核,微信打开自动提示在浏览器打开...相关推荐

  1. JavaScript判断浏览器内核,微信打开自动提示在浏览器打开

    微信会屏蔽 URL 自定义的 scheme ,导致无法跳转手机中的浏览器.网上有一些工具类网站可以实现直接跳转浏览器,之后有机会我会整理一下.我们今天只讨论通过 JavaScript 判断是否在微信浏 ...

  2. 教大家微信里投票的怎么刷票及微信投票怎么免费刷票攻略

    教大家微信里投票的怎么刷票及微信投票怎么免费刷票攻略,越来越多的人在平常生活中使用微信,以微信为载体的许多功能就被开发和使用了起来,比如--微信投票.于是乎,微信上兴起了各种投票,从小学生到gov部门 ...

  3. Eclips写Java代码和CSS、Javascript、Html代码设置代码自动提示功能

    按照我的方法设置后用Eclipse编写Java代码和前端代码(Html.CSS.JS)都可以自动提示代码.赶紧去试试吧. 1.打开Eclipse软件,点击Windows→Preferences→Jav ...

  4. 微信小程序JavaScript判断值是否为空工具类方法

    因为JS 中判断一个字段是否为空非常复杂,涉及到undefined等多种情况,特此写了一个工具类方法,使用简单,判断全面,避免重复造轮子~ /*** 用于判断空,Undefined String Ar ...

  5. 微信里关闭窗口 js

    微信里关闭窗口 js 需要在微信中关闭页面窗口,不过window.close()不管用,问过群里才知道微信有自带的方法能关闭窗口,记录一下(这个只针对微信有效哦): WeixinJSBridge.ca ...

  6. 仿乐享微信源码分享,把你的生意做到微信里

    99%的人不知道的微信秘密!微信里的商机.仿乐享微信源码分享,把你的生意做到微信里.        WeiKuCMS  (微酷CMS)功能特点:人工客服新功能正式上线!粉丝行为分析.渠道二维码生成.二 ...

  7. 微信小程序开发系列六:微信框架API的调用

    微信小程序开发系列教程 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 微信小程序开发系列二:微信小程序的视图设计 微信小程序开发系列三:微信小程序的调试方法 微信小程序开发系列四:微信小程序 ...

  8. 微信android 流畅,【黑科技】微信只需这样操作,立刻提升流畅度和使用效率

    [黑科技]微信只需这样操作,立刻提升流畅度和使用效率 2019-12-13 13:17:06 16点赞 103收藏 23评论 说起微信,大家肯定不会陌生吧,作为用户数量已达11亿的移动社交工具,微信已 ...

  9. [JavaScript]如何判断当前浏览器是不是微信浏览器

    在进行微信公众账号开发的时候,其中很大一块是微站点的开发,我们需要知道当前的浏览器是微信内置的浏览器,那么如何判断呢? 微信内置浏览器的 User Agent 如何判断微信内置浏览器,首先需要获取微信 ...

最新文章

  1. python如何编写数据库_如何在几分钟内用Python编写一个简单的玩具数据库
  2. 判断一个数是不是2的指数幂
  3. Django model进阶
  4. 剑指offer十一:二进制中1的个数
  5. 欧盟无条件批准甲骨文收购Sun
  6. java使double保留两位小数
  7. ajax请求中带判断语句例子,jQuery中借助deferred来请求及判断AJAX加载的实例讲解...
  8. CF986F Oppa Funcan Style Remastered
  9. 在线的图片、js、css压缩优化工具介绍(配合小强视频 前端性能分析精要)
  10. React Native Button使用
  11. 【Java 8 新特性】使用Collectors.toList()方法将Map转化成List的示例
  12. 蒟蒻的做题录(时间)
  13. 使用学信网验证报告免费使用jetbrains全家桶
  14. gas费用测试优化:hardhat-gas-reporter
  15. linux系统是什么操作系统
  16. 怎么改变图片的dpi的大小?如何修改照片dpi值?
  17. 火车票抢票API 根据乘客的车次与座席要求快速订票出票
  18. 美式期权、欧式期权比较分析——定价与风险管理
  19. Python 3 字符串 center( ) 方法
  20. CDH集成了Kerberos后写入数据到HBase遇到的几个问题

热门文章

  1. 【​观察】中国云计算产业的下半场 京东云正在下一盘怎样的大棋?
  2. iQOO 10系列来袭 OriginOS原系统强化手机体验
  3. 探寻中国便携式医疗电子市场的机遇与挑战
  4. 我的Java学习之路(三)-- 自动饮料售卖机控制台程序
  5. 计算机如何调成音乐,如何调出适用于我的均衡器设置?
  6. ictclas4j java_使用ICTCLAS JAVA版(ictclas4j)进行中文分词
  7. 微信PC端浏览器内置浏览器
  8. 小程序用户协议页面实现
  9. Dynamics 365 IFD设置反向代理后无法跳转登录页的解决方法
  10. win10 GPT分区和win 7 mbr 分区的区别