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. python 中的__str__ 和__repr__方法

    看下面的例子就明白了 class Test(object): def __init__(self, value='hello, world!'): self.data = value >> ...

  2. (转)k8s存储之NFS

    转:https://www.cnblogs.com/DaweiJ/articles/9131762.html 1 NFS介绍 NFS是Network File System的简写,即网络文件系统,NF ...

  3. spring boot 尚桂谷学习笔记05 ---Web

    ------web 开发登录功能------ 修改login.html文件:注意加粗部分为 msg 字符串不为空时候 才进行显示 <!DOCTYPE html> <!-- saved ...

  4. 开发 MFC 应用的一般过程

    1.创建用户接口一般使用 Visual C++内置的资源编辑器创建用户接口,用户接口主要包括菜单.加速键.对话框.位图.图标.光标.工具栏以及其他资源等.通常,应用向导创建的资源文件包含了工程所需要的 ...

  5. nginx 日志统计接口每个小时访问量

    指定时间段增量统计nginx日志不同接口的访问量: #!/bin/bash#此脚本用于统计nginx日志当前时间15分钟之内不同接口(URL)的访问量统计LOG=/usr/local/nginx/lo ...

  6. C++中初始化列表的使用

    1,初始化列表是在 C++ 中才引入的: 2,以“类中是否可以定义 const 成员?”这个问题来引入初始化列表: 1,const 这个关键字可以定义真正意义上的常量,也可以在某些情况下定义只读变量: ...

  7. js中获取input中所输入的值

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. ubuntu中下载pycharm并添加到桌面

    方法一:下载Pycharm与安装 下载地址:https://www.jetbrains.com/pycharm/ Pycharm专业版和社区版对大多数人来说差别不大,区别如下: 我们下载Linux的社 ...

  9. OpenCV2马拉松第9圈——再谈对照度(对照度拉伸,直方图均衡化)

    收入囊中 lookup table 对照度拉伸 直方图均衡化 葵花宝典 lookup table是什么东西呢? 举个样例,假设你想把图像颠倒一下,f[i] = 255-f[i],你会怎么做? for( ...

  10. Python之执行精确的浮点数运算

    有时候:代码上数字计算可能会有如同下面的误差 原因: 这些错误是由底层CPU和IEEE 754标准通过自己的浮点单位去执行算术时的特征. 由于Python的浮点数据类型使用底层表示存储数据,因此你没办 ...