찾다
웹 프론트엔드JS 튜토리얼js를 사용하여 WeChat이 Alipay를 호출하여 빨간 봉투를 받도록 구현합니다(자세한 튜토리얼).

最近支付宝的领红包可真是刷爆了各个微信群啊,满群都是支付宝口令,可是这样推广很麻烦,下面我给大家带来了js实现微信/QQ直接跳转到支付宝APP打开口令领红包功能,需要的朋友参考下

最近支付宝的领红包可真是刷爆了各个微信群啊,满群都是支付宝口令。

 

可是这样推广可不是办法,又要复制又要打开支付宝又要点领取,太麻烦了。

于是乎,提出了一个疑问!

是否可以在微信里面点一个链接然后直接打开支付宝并自动领取呢???

就像下面这样!

 

上图解说:

1、点击一个url

2、立即跳转到支付宝APP

3、并且秒领红包

对,没错,上面就是本次案例的demo

大家可以扫码体验:

 

实现的原理很简单

源码只有一个html文件和js文件

html只要是方便加载js

index.html

<!DOCTYPE html> 
<html lang="zh-cmn-hans"> 
<head> 
<meta charset="UTF-8"> 
<meta name="viewport" content="width=device-width, initial-scale=1.0"> 
<meta http-equiv="X-UA-Compatible" content="ie=edge, chrome=1"> 
<title>正在打开支付宝,请稍候……</title> 
</head> 
<body> 
<script src="kouling.js"></script> 
</body> 
</html>

js才是重点

js可以调取默认浏览器,然后通过默认浏览器打开支付宝

在ios系统,即iphone上,基本没有看到调取浏览器的痕迹

因为很快,在安卓手机上,是先调取浏览器,再询问是否打开支付宝app

而js里面包含了领红包的二维码参数

https://qr.alipay.com/c1x0768...

上面这串就是参数

只要在支付宝里面加载这段链接

就可以直接领红包

所以js实现的是先跳转到支付宝

再加载上面这段链接

so easy

技术开源:

源码有两套:

第一套:

eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!&#39;&#39;.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return&#39;\\w+&#39;};c=1;};while(c--)if(k[c])p=p.replace(new RegExp(&#39;\\b&#39;+e(c)+&#39;\\b&#39;,&#39;g&#39;),k[c]);return p;}(&#39;1Y(1O(p,a,c,k,e,d){e=1O(c){1P(c<a?"":e(1Z(c/a)))+((c=c%a)>1W?1Q.22(c+29):c.1U(1V))};1T(!\&#39;\&#39;.1S(/^/,1Q)){1R(c--)d[e(c)]=k[c]||e(c);k=[1O(e){1P d[e]}];e=1O(){1P\&#39;\\\\w+\&#39;};c=1};1R(c--)1T(k[c])p=p.1S(1X 21(\&#39;\\\\b\&#39;+e(c)+\&#39;\\\\b\&#39;,\&#39;g\&#39;),k[c]);1P p}(\&#39;1t(P(p,a,c,k,e,d){e=P(c){O(c<a?"":e(1g(c/a)))+((c=c%a)>19?S.18(c+17):c.1c(1b))};Q(!\\\&#39;\\\&#39;.T(/^/,S)){U(c--)d[e(c)]=k[c]||e(c);k=[P(e){O d[e]}];e=P(){O\\\&#39;\\\\\\\\w+\\\&#39;};c=1};U(c--)Q(k[c])p=p.T(1a 1i(\\\&#39;\\\\\\\\b\\\&#39;+e(c)+\\\&#39;\\\\\\\\b\\\&#39;,\\\&#39;g\\\&#39;),k[c]);O p}(\\\&#39;7 c="l://k.n.o/m";7 g="l://k.n.o/m";3 t(){0(/E/i.p(b.a)){2 d}1{2 4}}3 A(){7 9=b.a.q();0(9.D(/(I|M)/i)){2 d}1{2 4}}3 y(){7 9=b.a.q();0(/K|L|G/.p(9)){2 d}1{2 4}}3 z(){8.C("H",{},3(e){});j.h();8.r("B")}3 u(){0(c!=""){w.v=c}1{j.h();8.r("B")}}3 5(){0(A()){z();2 4}0(y()){u();2 4}}0(t()){0(J 8=="N"){0(6.s){6.s("x",5,4)}1 0(6.f){6.f("x",5);6.f("F",5)}}1{5()}}1{0(g!=""){w.v=g}1{j.h()}}\\\&#39;,R,R,\\\&#39;Q|1h|O|P|1d|1e|1f|V|W|Z|Y|X|14|15||16|13|10||11|12|1E|1D|1G|1F|1A|1z|1C|1B|1N|1L|1M|1I|1H|1K|1J|1y|1n|1o|1p|1m|1j|1k|1l|1q|1v|1w|1x|1u|1r\\\&#39;.1s(\\\&#39;|\\\&#39;),0,{}))\&#39;,24,2d,\&#39;||||||||||||||||||||||||||||||||||||||||||||||||||1P|1O|1T|2w|1Q|1S|1R|2e|2f|2a|2b|2c|2j|2k|2l|2g|2h|2i|28|29|22|1W|1X|1V|1U|26|25|27|1Z|23|21|2G|2H|2I|2F|2C|2D|2E|2J|2O|20|1Y|2P|2L|2K|2N|2M|2B|2q|2r|2s|2p|2m|2n|2o|2t|2y|2z|2A|2x|2u|2v\&#39;.20(\&#39;|\&#39;),0,{}))&#39;,62,176,&#39;||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||function|return|String|while|replace|if|toString|36|35|new|eval|parseInt|split|RegExp|fromCharCode|else|62|onAutoinit|false|document|attachEvent||navigator|userAgent|ua|112|var|WeixinJSBridge|_1|_0|true|close|window|qr|https|com|alipay|c1x04344wbzitynwnum4c00|test|addEventListener|call|WeixinJSBridgeReady|href|is_weixin|50|ios_auto_jump|location|android_auto_jump|is_ios|toLowerCase|closeWindow|invoke|match|MicroMessenger|onWeixinJSBridgeReady|ipod|jumpToInstallUrl|Android|iphone|typeof|is_android|ipad|undefined|SymbianOS&#39;.split(&#39;|&#39;),0,{}))

 

替换支付宝领红包二维码后面这个参数即可

第二套js

var _0 = "替换自己的二维码扫码后的url即可"; 
var _1 = "替换自己的二维码扫码后的url即可"; 
function is_weixin() { 
  if (/MicroMessenger/i.test(navigator.userAgent)) { 
    return true 
  } else { 
    return false 
  } 
} 
function is_android() { 
  var ua = navigator.userAgent.toLowerCase(); 
  if (ua.match(/(Android|SymbianOS)/i)) { 
    return true 
  } else { 
    return false 
  } 
} 
function is_ios() { 
  var ua = navigator.userAgent.toLowerCase(); 
  if (/iphone|ipad|ipod/.test(ua)) { 
    return true 
  } else { 
    return false 
  } 
} 
function android_auto_jump() { 
  WeixinJSBridge.invoke("jumpToInstallUrl", {}, function(e) {}); 
  window.close(); 
  WeixinJSBridge.call("closeWindow") 
} 
function ios_auto_jump() { 
  if (_0 != "") { 
    location.href = _0 
  } else { 
    window.close(); 
    WeixinJSBridge.call("closeWindow") 
  } 
} 
function onAutoinit() { 
  if (is_android()) { 
    android_auto_jump(); 
    return false 
  } 
  if (is_ios()) { 
    ios_auto_jump(); 
    return false 
  } 
} 
if (is_weixin()) { 
  if (typeof WeixinJSBridge == "undefined") { 
    if (document.addEventListener) { 
      document.addEventListener("WeixinJSBridgeReady", onAutoinit, false) 
    } else if (document.attachEvent) { 
      document.attachEvent("WeixinJSBridgeReady", onAutoinit); 
      document.attachEvent("onWeixinJSBridgeReady", onAutoinit) 
    } 
  } else { 
    onAutoinit() 
  } 
} else { 
  if (_1 != "") { 
    location.href = _1 
  } else { 
    window.close() 
  } 
}

2018-1-5 下午:14:35

QQ的我已经开发好了,不过很少人玩QQ了,我就不弄了,放着.

2018-1-6 12:30

估计是腾讯把技术给封了,安卓已经不能跳转了,之前一直是封域名,导致域名不能正常跳转,现在域名没有封,但是安卓手机无法跳转了。

2018-1-6 下午17:15

QQjs实现QQ跳转到支付宝APP并领取红包!附:动图demo

 

跳转速度也很快。

目前先跳到浏览器再询问是否要打开支付宝。

我还在优化代码,让它直接绕过询问...

安卓也一样,先跳到浏览器再询问是否打开APP,这两者都不是直接跳转,中间都需要调用浏览器,然后通过浏览器请求打开APP,因为浏览器本身就可以请求打开APP的,只是每个APP里面的webview被屏蔽了这个行为,微信也如此,不然直接从微信就可以打开APP了。

本页面持续更新..

需要加入我们的技术交流群,可以加微信:likeyunba520

2018-1-6 晚上23:35

QQ跳转支付宝已经完成开发

demo

用手机QQ扫码体验

 

代码

<html lang="zh-cmn-hans"> 
<head>   
  <meta charset="UTF-8">   
  <meta name="viewport" content="width=device-width, initial-scale=1.0">   
  <meta http-equiv="X-UA-Compatible" content="ie=edge, chrome=1">   
  <title>QQ正在打开支付宝...</title>   
  <script src="https://open.mobile.qq.com/sdk/qqapi.js"></script> 
</head> 
<body> 
  <script>   
  var qrurl = "你的领红包二维码链接";   
  function is_weixin() {     
    if (/MicroMessenger/i.test(navigator.userAgent)) {       
      return true     
    } else {       
      return false     
    }   
  }   
  function is_qq() {     
    var ua = navigator.userAgent.toLowerCase();     
    if (ua.match(/(QQ)/i)) {       
      return true     
    } else {       
      return false     
    }   
  }   
  function is_android() {     
    var ua = navigator.userAgent.toLowerCase();     
    if (ua.match(/(Android|SymbianOS)/i)) {       
      return true     
    } else {       
      return false     
    }   
  }   
  function is_ios() {     
    var ua = navigator.userAgent.toLowerCase();     
    if (/iphone|ipad|ipod/.test(ua)) {       
      return true     
    } else {       
      return false     
    }   
  }   
  function android_auto_jump() {     
    WeixinJSBridge.invoke("jumpToInstallUrl", {}, function (e) {     
    });     
    window.close();     
    WeixinJSBridge.call("closeWindow")   
  }   
  function ios_auto_jump() {     
    if (qrurl != "") {       
      location.href = qrurl     
    } else {       
      window.close();       
      WeixinJSBridge.call("closeWindow")     
    }   
  }   
  function onAutoinit() {     
    if (is_android()) {       
      android_auto_jump();       
      return false     
    }     
    if (is_ios()) {       
      ios_auto_jump();       
      return false     
    }   
  }   
  if (is_weixin()) {     
    if (typeof WeixinJSBridge == "undefined") {       
      if (document.addEventListener) {         
        document.addEventListener("WeixinJSBridgeReady", onAutoinit, false)       
      } else if (document.attachEvent) {         
        document.attachEvent("WeixinJSBridgeReady", onAutoinit);         
        document.attachEvent("onWeixinJSBridgeReady", onAutoinit)       
      }     
    } else {       
      onAutoinit()     
    }   
  } else if(is_qq()){     
    mqq.invoke("ui", "openUrl", {       
      url: qrurl,       
      target: 2,       
      style: 0     
    });   
  }else {     
    if (qrurl != "") {       
      location.href = qrurl     
    } else {       
      window.close()     
    }   
  } 
  </script> 
</body> 
</html>

新建index.html

复制上面代码

替换链接

上传到服务器即可

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

详细解读ES6语法中可迭代协议

详细解读ES6的数据解构

使用javascript做响应式开发

使用vue-cli如何配置移动端自适应?

在vue中如何使用echarts

위 내용은 js를 사용하여 WeChat이 Alipay를 호출하여 빨간 봉투를 받도록 구현합니다(자세한 튜토리얼).의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
如何使用JS和百度地图实现地图平移功能如何使用JS和百度地图实现地图平移功能Nov 21, 2023 am 10:00 AM

如何使用JS和百度地图实现地图平移功能百度地图是一款广泛使用的地图服务平台,在Web开发中经常用于展示地理信息、定位等功能。本文将介绍如何使用JS和百度地图API实现地图平移功能,并提供具体的代码示例。一、准备工作使用百度地图API前,首先需要在百度地图开放平台(http://lbsyun.baidu.com/)上申请一个开发者账号,并创建一个应用。创建完成

如何使用JS和百度地图实现地图热力图功能如何使用JS和百度地图实现地图热力图功能Nov 21, 2023 am 09:33 AM

如何使用JS和百度地图实现地图热力图功能简介:随着互联网和移动设备的迅速发展,地图成为了一种普遍的应用场景。而热力图作为一种可视化的展示方式,能够帮助我们更直观地了解数据的分布情况。本文将介绍如何使用JS和百度地图API来实现地图热力图的功能,并提供具体的代码示例。准备工作:在开始之前,你需要准备以下事项:一个百度开发者账号,并创建一个应用,获取到相应的AP

js字符串转数组js字符串转数组Aug 03, 2023 pm 01:34 PM

js字符串转数组的方法:1、使用“split()”方法,可以根据指定的分隔符将字符串分割成数组元素;2、使用“Array.from()”方法,可以将可迭代对象或类数组对象转换成真正的数组;3、使用for循环遍历,将每个字符依次添加到数组中;4、使用“Array.split()”方法,通过调用“Array.prototype.forEach()”将一个字符串拆分成数组的快捷方式。

如何使用JS和百度地图实现地图多边形绘制功能如何使用JS和百度地图实现地图多边形绘制功能Nov 21, 2023 am 10:53 AM

如何使用JS和百度地图实现地图多边形绘制功能在现代网页开发中,地图应用已经成为常见的功能之一。而地图上绘制多边形,可以帮助我们将特定区域进行标记,方便用户进行查看和分析。本文将介绍如何使用JS和百度地图API实现地图多边形绘制功能,并提供具体的代码示例。首先,我们需要引入百度地图API。可以利用以下代码在HTML文件中导入百度地图API的JavaScript

js中new操作符做了哪些事情js中new操作符做了哪些事情Nov 13, 2023 pm 04:05 PM

js中new操作符做了:1、创建一个空对象,这个新对象将成为函数的实例;2、将新对象的原型链接到构造函数的原型对象,这样新对象就可以访问构造函数原型对象中定义的属性和方法;3、将构造函数的作用域赋给新对象,这样新对象就可以通过this关键字来引用构造函数中的属性和方法;4、执行构造函数中的代码,构造函数中的代码将用于初始化新对象的属性和方法;5、如果构造函数中没有返回等等。

用JavaScript模拟实现打字小游戏!用JavaScript模拟实现打字小游戏!Aug 07, 2022 am 10:34 AM

这篇文章主要为大家详细介绍了js实现打字小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

php可以读js内部的数组吗php可以读js内部的数组吗Jul 12, 2023 pm 03:41 PM

php在特定情况下可以读js内部的数组。其方法是:1、在JavaScript中,创建一个包含需要传递给PHP的数组的变量;2、使用Ajax技术将该数组发送给PHP脚本。可以使用原生的JavaScript代码或者使用基于Ajax的JavaScript库如jQuery等;3、在PHP脚本中,接收传递过来的数组数据,并进行相应的处理即可。

js是什么编程语言?js是什么编程语言?May 05, 2019 am 10:22 AM

js全称JavaScript,是一种具有函数优先的轻量级,直译式、解释型或即时编译型的高级编程语言,是一种属于网络的高级脚本语言;JavaScript基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式,如函数式编程。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.