说道二维码 之前是用来跳转app store  然后在就是出来的 扫码付款什么的

用的很平常,其实里面也很简单   自己刚开始接触的时候     同事说要做一个二维码下载 应用 => 我=懵逼

会看到大家把android 和ios 的二维码并排放在一起 我们的产品ios先出来的  就先放了一个二维码 (毕竟可以二合一呗)

什么鬼  二维码是个什么 ?

还要根据不同的平台 ?

还要取是什么浏览器打开的这个 ?

还要判断是不是wechat? 我的天 !!!!

作为刚出校门的小菜鸟 不懂就得问啊  在学校里那都是 舅舅不疼 姥姥不爱的  关于这技术  以前暑假的时候晓得一点

NO :1

就是那其实二维码 就是一个 URL 地址

说道平台 大家一定会想到 什么 mac地址什么的  但是好像浏览器也屏蔽掉了

这可咋办呢 ?

还是自己看着经理去抽烟的时候 这不 菜鸟不知道怎么办 只能以拉家常的方式去和经理说说技术

me : 老大 ,那做二维码跳转  怎么知道他是什么平台的呢 ? 怎么获取到机型呢?

老大: 这个很简单的  你根据浏览器的报头去做就好了,其实扫描到了二维码之后 读取到了  手机会调用浏览器去访问该网址 ,

ios的则会调用 safair android的则会调用chrome  虽然还有什么uc ,opera  难免的会有些误差。 你自己琢磨吧!

me : 那好吧 !

找找查查 就是 navigator.userAgent  navigator.appVersion

接着就是考虑在后台处理还是在前台

算了 还是前台判断吧

 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,//苹果、谷歌内核
safari:u.indexOf("Safari")>-1, //safari 浏览器
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
wechat:u.toLowerCase().match((/MicroMessenger/i) == 'micromessenger'),
webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
};
}(),
language: (navigator.browserLanguage || navigator.language).toLowerCase()
}
var explore;
if (browser.versions.trident)
{
explore = 'IE';
} else if (browser.versions.presto)
{
explore = 'Opera';
} else if (browser.versions.webKit) {
explore = 'chrome';
} else if (browser.versions.gecko)
{
explore = 'FireFox';
} else if (browser.versions.safari)
{
explore = 'safarir';
} if (browser.versions.ios || browser.versions.iPhone || browser.versions.iPad) {
alert('ios手机');
$.ajax({
url: "DataInsert.ashx?Explore=" + explore + "&device=ios&deviceappVersion=" + navigator.appVersion,
type: "post",
success: function (data)
{
if (data == "success")
{
location.href = "http://www.apple.com/cn/ios/";
}
}, error: function (errorMsg) {
//请求失败时执行该函数
alert("数据异常");
}
});
}
else if (browser.versions.android) {
alert('安卓手机');
$.ajax({
url: "DataInsert.ashx?Explore=" + explore + "&device=Android&deviceappVersion=" + navigator.appVersion,
type: "post",
success: function (data) {
if (data == "success") {
location.href = "http://www.android-studio.org/"; //这里就给了一个学习网站 哈哈
}
}, error: function (errorMsg) {
//请求失败时执行该函数
alert("数据异常");
}
}); } else if (browser.versions.wechat)
{
$.ajax({
url: "DataInsert.ashx?Explore=" + explore + "&device=wechat&deviceappVersion=" + navigator.appVersion,
type: "post",
success: function (data) {
if (data == "success") {
location.href = "http://weixin.qq.com/";
}
}, error: function (errorMsg) {
//请求失败时执行该函数
alert("数据异常");
}
});
alert('微信'); }

这都获取的很详细了吧

在异步里去拼接  判断什么 浏览器 什么机型  wechat 什么的  都是妥妥的了 。

二维码跳转不同的 app store的更多相关文章

  1. 微信小程序 - 配置普通二维码跳小程序

    普通二维码跳小程序规则: https://developers.weixin.qq.com/miniprogram/introduction/qrcode.html#%E5%8A%9F%E8%83%B ...

  2. asp:手机扫描二维码跳转手机版

    如果想手机扫描用pc版网站生成的二维码跳转到对应的手机版的话,请在pc端的首页的<head></head>标签里面加入下面内容:   <script src=" ...

  3. PHP自定义生成二维码跳转地址

      比较简单的一款PHP自定义生成二维码跳转地址,手机端微信扫码,自动跳转到定义好的链接.支持自定义生成二维码尺寸.间距等.    鼠标悬浮显示二维码弹出层,离开后消失.js实现,代码如下: $(fu ...

  4. 用vue实现扫描二维码跳转页面功能

    怎么能用vue实现扫描二维码跳转页面功能 1. 安装依赖 npm install vue-qr --save 2. <template>   <div>     <div ...

  5. 今天网站后台登录页面需要生成一个二维码,然后在手机app上扫描这个二维码,实现网站登录的效果及其解决方案如下

    要实现二维码登录,需要解决2个技术,1.需要js websocket 与后台php实现长连接技术 2.实现二维码生成技术 要实现这个功能第二个算是比较简单,只需要下载一个php的二维码生成器即可,但要 ...

  6. 扫描二维码下载安装apk的app

    将apk文件放到服务器上,下载链接直接生成二维码,用微信扫描时不能直接下载.页面只是刷新一下. 想实现微信扫描下载apk的app客户端,需要把下载链接做到一个网页上, 将网页生成一个二维码. 直接下载 ...

  7. 微信小程序二维码是无法识别二维码跳转到小程序

    今天测试了一下,微信小程序圆形二维码是不能直接识别跳转到小程序: 但h5页面的那种微信公众号二维码是可以直接识别

  8. php生成带自定义logo和带二维码跳转自定义地址的二维码

    index.php<?phpheader('Content-type:text/html;charset=UTF-8');// 指定允许其他域名访问header('Access-Control- ...

  9. 扫描二维码跳转app

    1.判断是否安装了app <html> <head> <meta name="viewport" content="width=device ...

随机推荐

  1. Java分页需求

    近期在实现项目接口时,经常需要分页功能.有时返回“String”,有时是“Object”格式的分页List.针对这种情况,本人用java实现对List分页. 第一版 package org.sun.j ...

  2. Android——WebView

    WebView用途 通过Intent调用系统浏览器: 引言: Uri uri = Uri.parse(url);//url为你要链接的地址 Intent intent = new Intent(Int ...

  3. 【BZOJ-2653】middle 可持久化线段树 + 二分

    2653: middle Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 1298  Solved: 734[Submit][Status][Discu ...

  4. Web应用请求和响应 HTTP相关

    (1)请求:浏览器以HTTP协议的方式提交请求到服务器 (2)响应:服务器以HTTP协议的方式响应内容到浏览器 注意:HTTP是WEB大众化非安全协议 HTTPS是WEB安全协议,是基于HTTP协议的 ...

  5. Block 代码快

    1.原理 1.1block类型 a.全局bock块   贯彻整个程序 b.栈块  存在于栈内存中,作用域中使用 c.堆块  自行管理其内存 注*:http://blog.parse.com/learn ...

  6. DUT Star Weekly Contest #3 Problem F Solution

    题目链接 问题转化 \[a_i+a_j+(i-j)^2=a_i+i^2+a_j+j^2-2ij\] 令 \(b_i=a_i+i^2\) , 问题化为: 求 \[\max \{b_i+b_j-2ij\} ...

  7. bootstrap学习笔记--bootstrap组件

    前面已经学习了bootstrap环境搭建以及基本布局方面的知识,下面将学习下关于bootstrap的相关组件,知识点有点多. 关于bootstrap组件知识点目录: Bootstrap--代码显示 B ...

  8. OWIN系列之自己动手编写中间件

    一.前言 1.基于OWIN的项目摆脱System.Web束缚脱颖而出,轻量级+跨平台,使得ASP.NET应用程序只需依赖这个抽象接口,不用关心所运行的Web服务器. 2.OWIN.dll介绍 使用反编 ...

  9. 什么是License

    许多混乱就始于你不知道License到底是什么,到底有什么含义.当你对你的产品使用License时,并不意味着你放弃了任何权利,你依然对其拥有原著作权.License只是授予他们于特定权利来使用你的产 ...

  10. 关于node的http模块

    var http = require('http'); /** * 创建服务器的两种写法,第一种写法如下 * 由于server已经继承了EventEmitter的事件功能,所以可以使用高级函数编写方式 ...