<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<title>判断手机是否安装微信</title>
</head>
<body>
<a href="javascript:testApp('weixin://')" class="dl-btn" id="download">打开微信</a>
<script>
function testApp(url) {
var timeout, t = 1000, hasApp = true;
setTimeout(function () {
if (!hasApp) {
//没有安装微信
var r=confirm("您没有安装微信,请先安装微信!");
if (r==true){
location.href="http://weixin.qq.com/"
}
}else{
//安装微信
}
document.body.removeChild(ifr);
}, 2000) var t1 = Date.now();
var ifr = document.createElement("iframe");
ifr.setAttribute('src', url);
ifr.setAttribute('style', 'display:none');
document.body.appendChild(ifr);
timeout = setTimeout(function () {
var t2 = Date.now();
if (!t1 || t2 - t1 < t + 100) {
hasApp = false;
}
}, t);
}
</script>
</body>
</html>

最新文章

  1. ABP框架 - 功能管理
  2. 关于The C compiler &quot;arm-none-eabi-gcc&quot; is not able to compile a simple test program. 的错误自省...
  3. z-index学习知识小结
  4. SQL Server中@@ROWCOUNT的用法
  5. 【Zend Studio】10.6.0版本设置默认字体
  6. 关于PHP Websocket 错误: &quot;stream_select(): You MUST recompile PHP with a larger value of FD_SETSIZE&quot; 的解决方案
  7. UML用户指南--UML图简介
  8. 数位DP入门Ural1057
  9. HTTP协议学习-01
  10. BootStrap——模态框
  11. .NET MV4 Remote远程验证注意事项及案例
  12. nodejs服务端开发学习笔记
  13. git学习笔记之一
  14. Linux第八讲随笔 -tar / 系统启动流程
  15. Oracle完全卸载详解
  16. JDK丨WIN10配置JDK1.8 (解决javac不是内部或外部命令,也不是可运行的程序或批处理文件)
  17. tmux 没有默认配置文件。
  18. python Event_loop(事件循环)
  19. Nginx使用教程(六):使用Nginx缓存之FastCGI缓存
  20. c# txt代码转换成HTML格式

热门文章

  1. 第二章 Vue快速入门--14 使用v-model实现计算器的案例
  2. HTML 获取class里的多个值 和 dataset的使用
  3. 【Android-NetWork】 判断是否连接网络,判断网络连接方式
  4. 【Winform-自定义控件】自定义Tab Control 带关闭符号(X)的标签页
  5. Python 多线程Ⅲ
  6. java+批量下载大文件
  7. BZOJ 4004: [JLOI2015]装备购买 高斯消元解线性基
  8. monkey test——学习资料
  9. 7.9模拟赛T1图的遍历(dfs)
  10. webuploader的一些体验