1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <script>
  7. document.addEventListener('DOMContentLoaded', function () {
  8. document.querySelector('.downlink').addEventListener('click', function () {
  9. var loadDateTime = new Date(),
  10. href = location.href,
  11. appInnerUrlPrefix = 'http://a.app.qq.com/o/simple.jsp?pkgname=',
  12. newHref = href.substring(href.indexOf('//') + 2)
  13. var isiOS = navigator.userAgent.match('iPad') || navigator.userAgent.match('iPhone') || navigator.userAgent.match(
  14. 'iPod'),
  15. isAndroid = navigator.userAgent
  16. .match('Android'),
  17. isDesktop = !isiOS && !isAndroid;
  18. if (isiOS) {
  19. newHref = appInnerUrlPrefix + "com.zhulogic.xita_home";
  20. } else if (isAndroid) {
  21. newHref = appInnerUrlPrefix + "com.zhulogic.xita_home&g_f=991653";
  22. } else {
  23. newHref = appInnerUrlPrefix + "com.zhulogic.xita_home&g_f=991653";
  24. }
  25. setTimeout(function () {
  26. console.log(newHref);
  27. var timeOutDateTime = new Date();
  28. if (!loadDateTime || timeOutDateTime - loadDateTime < 1210) {
  29. location.href = newHref;
  30. }
  31. }, 1200);
  32. location.href = 'zhulogic://';
  33. }, false)
  34. }, false)
  35. </script>
  36. </head>
  37. <body>
  38. <div class="downlink" style="background-color: red;height: 300px;width: 300px;">
  39. </div>
  40. </body>
  41. </html>
  • IOS8.3(都可以跳转到下载页)

    • safari可呼起APP
    • 手机百度可呼起APP
    • QQ不能呼起APP
    • QQ空间可呼起APP
    • 微信不能呼起APP
  • IOS9.2.1(都可以跳转到下载页)

    • safari可呼起APP,但在呼起之前会弹出提示,需要选择“open”之后才会呼起
    • 手机百度可呼起APP
    • QQ空间可呼起APP
    • QQ不能呼起APP
    • 微信不能呼起APP
    • 微博不能呼起APP
    • 知乎不能呼起APP
  • 魅族Android5.0.1(都可以跳转到下载页)

    • 原生浏览器不能呼起APP
    • QQ浏览器可呼起APP(但是会稍微延迟一会儿,时间可以接受)
    • Chrome可呼起APP
    • UC浏览器可呼起APP,但是在呼起之前会弹出提示,需要选择“仅本次允许”之后才会呼起
    • QQ可呼起APP
    • 微信可呼起APP(APP的呼起会晚于跳转到下载页)
    • 手机百度可呼起APP
    • 微博不能呼起APP
  • 三星Android4.4(都可以跳转到下载页)

    • 原生浏览器可呼起APP
    • QQ可呼起APP(打开了2次)
    • 微信不能呼起
    • 手机百度可呼起APP
    • QQ浏览器可呼起APP

js判断是否安装app,安装打开app的更多相关文章

  1. js判断移动端是否安装某款app的多种方法

    本文实例讲解了js判断移动端是否安装某款app的多种方法,分享给大家供大家参考,具体内容如下 第一种方法: 一:判断是那种设备 ? || u.indexOf(; //android终端或者uc浏览器 ...

  2. 一个JS判断客户端是否已安装某个字体(Only IE)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. js判断页面在pc端打开还是移动端打开

    js判断页面在pc端打开还是移动端打开,分别跳转不同的index.html window.addEventListener('load', function() { // true为手机,false为 ...

  4. js判断移动端是否安装某软软件,安装直接打开相应的链接,否则跳转到下载商店方法

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  5. JS判断手机端是否安装某应用

    方法一(网页上判断) if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) {   var loadDateTime = new Date() ...

  6. js判断当前浏览器是否是源生app的webview

    有些时候,我们在开发过程中需要判断,当前页面被打开是否是处于源生的webview里面,或者NODEJS做服务器后端支持的时候,判断请求来源是否来至于源生webview里面被打开的页面请求GET/POS ...

  7. js 判断移动端是否安装应用

    var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > ...

  8. JS判断在哪一端浏览器打开

    <script src="js/jquery-2.2.3.min.js"></script> <script> var browser = { ...

  9. js判断浏览器在PC中打开还是移动设备中打开

    var browser = {                            versions: function () {                                va ...

  10. js判断页面从何种浏览器打开

    问题 有时项目需要根据不同的设备进行不同的处理,需要判断到底是哪种设备打开了项目. 移动端浏览器检测 移动终端浏览器版本信息: var browser = { versions: function ( ...

随机推荐

  1. 使用DataV制作实时销售数据可视化大屏(实验篇)

    课时1:背景介绍 任务说明 ABC是一家销售公司,其客户可以通过网站下单订购该公司经营范围内的商品,并使用信用卡.银行卡.转账等方式付费.付费成功后,ABC公司会根据客户地址依据就近原则选择自己的货仓 ...

  2. SoftDevice Specification v1.2

    S110 SoftDevice是蓝牙®低功耗(BLE)外设协议栈的解决方案.它集成了一个低 能量控制器和主机,并为建设蓝牙低功耗系统全面且灵活的API 芯片(SoC)解决方案. 本文件包含SoftDe ...

  3. 自动化测试常用断言的使用方法(python)-(转载@zhuquan0814

    自动化测试中寻找元素并进行操作,如果在元素好找的情况下,相信大家都可以较熟练地编写用例脚本了,但光进行操作可能还不够,有时候也需要对预期结果进行判断. 这里介绍几个常用断言的使用方法,可以一定程度上帮 ...

  4. Raft Paper 简译

      本文是对 Raft Paper 核心部分的意译,不包括原文中的如下章节:<3 Paxos 的优缺点论述>.<4 Raft 的易理解性介绍>.<9 Raft 算法的易理 ...

  5. java 重新学习 (七)

    一.mysql的InnoDB通过建立行级索确保事务完整性.,并以Oracle风格的共享锁来处理select语句.系统默认存储为InnoDB. 二. -- mysql 创建表 CREATE TABLE ...

  6. Ubuntu18.10 编译libevent出现错误: creating symbolic link XXXXXX : Operation not supported

    今天在VirtualBox虚拟机下的Ubuntu18.10编译libevent源代码时,按照github中使用cmake方式: $ mkdir build && cd build $ ...

  7. Python运行出错

    (1)ValueError: You are trying to load a weight file containing 6 layers into a model with 5 layers. ...

  8. centos7下查看cup核数

    centos7下查看cup核数 # 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数cat ...

  9. jumpserver4.0centos7安装步骤

    一步一步安装(CentOS) 测试推荐环境 CPU: 64位双核处理器 内存: 4G DDR3 数据库:mysql 版本大于等于 5.6 mariadb 版本大于等于 5.5.6 环境 系统: Cen ...

  10. [Fw]中断的初始化

    要使用中断肯定得初始化,这些初始化在系统启动时已经为你做好了,但是我们还是来看看怎样初始化的,这样就能更好的理解中断机制了.先看下面函数: 355 void __init init_ISA_irqs  ...