一、预加载JSSDK
在网页加载时,预加载JSSDK可以让网页更快地响应用户操作。
(function() {
var loadScript = function(url, callback){
var script = document.createElement('script');
script.type = 'text/javascript';
if (script.readyState){ //IE
script.onreadystatechange = function(){
if (script.readyState == "loaded" || script.readyState == "complete"){
script.onreadystatechange = null;
callback();
}
};
} else { //Others
script.onload = function(){
callback();
};
}
script.src = url;
document.getElementsByTagName("head")[0].appendChild(script);
};
loadScript('https://res.wx.qq.com/open/js/jweixin-1.6.0.js', function() {
// TODO: JSSDK初始化
});
})();
二、使用JSSDK进行微信公众号分享
通过JSSDK,可以在网页上设置微信公众号分享的标题、描述和链接。以下为示例代码:
wx.config({
debug: false,
appId: '',
timestamp: '',
nonceStr: '',
signature: '',
jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareWeibo']
});
wx.ready(function () {
wx.updateAppMessageShareData({
title: '分享标题',
desc: '分享描述',
link: '分享链接',
imgUrl: '分享图标链接',
success: function () { }
});
wx.updateTimelineShareData({
title: '分享标题',
link: '分享链接',
imgUrl: '分享图标链接',
success: function () { }
});
wx.onMenuShareWeibo({
title: '分享标题',
desc: '分享描述',
link: '分享链接',
imgUrl: '分享图标链接',
success: function () { }
});
});
三、使用JSSDK进行微信支付
通过JSSDK,可以在网页上进行微信支付。以下为示例代码:
function onBridgeReady() {
WeixinJSBridge.invoke(
'getBrandWCPayRequest', {
"appId": "", //公众号名称,由商户传入
"timeStamp": "", //时间戳,自1970年以来的秒数
"nonceStr": "", //随机串
"package": "", //商品包信息,由商户传入
"signType": "MD5", //微信签名方式:
"paySign": "" //微信签名
},
function(res){
if(res.err_msg == "get_brand_wcpay_request:ok" ){
// TODO: 支付成功后跳转到其他页面
}
}
);
}
if (typeof WeixinJSBridge == "undefined"){
if( document.addEventListener ){
document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
}else if (document.attachEvent){
document.attachEvent('WeixinJSBridgeReady', onBridgeReady);
document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
}
}else{
onBridgeReady();
}
四、使用JSSDK获取用户地理位置
通过JSSDK,可以获取用户的地理位置信息。以下为示例代码:
wx.config({
debug: false,
appId: '',
timestamp: '',
nonceStr: '',
signature: '',
jsApiList: ['getLocation']
});
wx.ready(function(){
wx.getLocation({
type: 'gcj02',
success: function (res) {
var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。
// TODO: 使用经纬度进行相关操作
},
fail: function (res) {
// TODO: 用户拒绝授权或其他错误处理
}
});
});
五、使用JSSDK进行扫码
通过JSSDK,可以在网页上进行扫码操作。以下为示例代码:
wx.config({
debug: false,
appId: '',
timestamp: '',
nonceStr: '',
signature: '',
jsApiList: ['scanQRCode']
});
wx.ready(function(){
wx.scanQRCode({
needResult: 1,
scanType: ["qrCode","barCode"],
success: function (res) {
var result = res.resultStr;
// TODO: 使用扫码结果进行相关操作
},
fail: function(res){
// TODO: 扫码失败处理
}
});
});
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/232137.html
微信扫一扫
支付宝扫一扫