#### **1、JS接口安全域名设置**
登录微信公众号后台,公众号设置-功能设置。
![](https://box.kancloud.cn/2016-01-13_56960da7a9bc5.jpg)
![](https://box.kancloud.cn/2016-01-13_56960db2430be.jpg)
#### **2、实现步骤**
#### (1)继承jssdk模板。
`<extend name="Base/jssdk_common" />
<block name="html">
<!DOCTYPE html>
<html>
.....
.....
</html>
</block>`
> 要使用豆信封装的快速实现微信自定义的函数,首先必须要继承豆信的jssdk模板。
#### (2)页面中加入js代码
`<script type="text/javascript">
// jssdk注册成功后执行
wx.read(function(){
//$count 计算上传图片的数量
uploadImages($count,downMediaSuccess,downMediaError);
});
//下载图片成功
function downMediaSuccess(data){
//处理下载完后的图片
}
//下载失败
function downMediaError(){
//处理下载失败
}
</script>`
#### **3、代码解析**
>直接上案例
`<extend name="Base/jssdk_common" />
<block name="html">
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no">
<meta name="format-detection" content="telephone=no">
<title>萌宝投票</title>
<meta name="keywords" content="">
<meta name="description" content="">
</script>
</head>
<body><div class="upload clearfix">
<div>上传照片2-5张:</div>
<div class="upload_area clearfix">
<ul id="imglist" class="post_imglist">
</ul>
<div class="upload_btn">
<button type="button" id="chooseImage" value="上传"></button>
</div>
</div>
</div>
</body>
<script type="text/javascript">
var viewImg = $("#imglist");
var imgIndex = 0;
var i = 0;
var length = 0;
// jssdk注册成功后执行
wx.ready(function () {
$("#chooseImage").click(function(){
var len = $("#imglist li").length; //判断已上传图片的数量
if(len >= 5){
alert('对不起,您最多只能上传5张图片!');
}else{
var count = 5 - len; //判断剩余上传的数量
uploadImages(count, downMediaSuccess, downMediaError);
}
})
});
// 下载图片成功
function downMediaSuccess(data) {
viewImg.append("<li><span class='pic_time'><span class='p_img'></span><em>50%</em></span></li>"); //下载后的图片插入li
viewImg.find("li:last-child")
.html("<span class='del'></span>" +
"<img class='wh60' src='" + data['picture_url'] + "'/>" +
"<input type='hidden' id='file" + imgIndex + "' name='file_upload[]' value='" + data['cover_id'] + "'>"); //向末尾li插入图片
$(".del").on("click",function(){ //删除已上传的图片
$(this).parent('li').remove();
});
imgIndex++;
}
function downMediaError() {
alert("对不起上传失败,请重新上传!");
}
</script>`
>效果图
![](https://box.kancloud.cn/2016-01-24_56a3c2f08b8b7.png)
- 基本介绍
- 关于豆信
- 开源协议
- 版权声明
- 捐赠我们
- 基础准备
- 获取源代码
- 安装框架
- 在阿里云服务器上安装
- 在SAE服务器上安装
- 使用说明
- 前台使用说明
- 后台使用说明
- 目录结构
- 数据字典
- 交互说明
- HelloWorld
- 微信交互
- 处理消息
- 处理文本消息
- 处理图片消息
- 处理语音消息
- 处理短视频消息
- 处理位置消息
- 处理链接消息
- 处理事件消息
- 处理用户关注事件消息
- 处理用户取消关注事件消息
- 处理用户上报地理位置事件消息
- 发送消息
- 发送文本消息
- 发送图片消息
- 发送图文消息
- 发送客服消息
- 发送模板消息
- 常用功能
- 如何安装插件
- 如何设计插件后台
- 如何设计数据模型
- 如何设计配置文件
- 如何上传图片
- 如何自定义分享内容
- 如何获取用户信息
- 如何设置消息上下文
- 如何使用带参数二维码
- 如何集成微信支付
- 如何开发微网站模板
- 插件开发实战
- 留言板插件开发
- 成语接龙插件开发
- 附近酒店查询插件开发
- 捐赠插件开发
- 微助力插件开发
- 场景二维码插件开发
- 微订餐插件开发
- 客服助手插件开发
- 幼儿园微网站开发
- 常用函数参考
- 系统函数
- is_login
- is_administrator
- 微信交互SDK相关函数
- getWechatApiObj
- 消息事件处理相关
- getRevData
- getRevFrom
- getRevTo
- getRevType
- getRevId
- getRevCtime
- getRevContent
- getRevPic
- getRevLink
- getRevGeo
- getRevEventGeo
- getRevEvent
- getRevVoice
- getRevVideo
- getRevScanInfo
- getRevSendPicsInfo
- getRevSendGeoInfo
- 发送消息
- sendCustomMessage
- sendTemplateMessage
- getRevTplMsgID
- replyText
- replyImage
- replyNews
- replyVoice
- replyVideo
- replyMusic
- 二维码推广相关
- getQRCode
- getRevTicket
- getRevSceneId
- getQRUrl
- getShortUrl
- 自定义菜单相关
- createMenu
- getMenu
- deleteMenu
- 个性菜单相关
- 多客服相关
- transferCustomerService
- getCustomServiceKFlist
- getCustomServiceOnlineKFlist
- getKFSession
- closeKFSession
- 插件开发相关函数
- getUserInfo
- add_credit
- get_cover_url
- addons_url
- JSSDK函数
- pay
- 数据库操作函数
- 常见问题解答
- 获取access_token时AppSecret错误
- 微信接口全局返回码说明
- 文件可写权限问题
- 页面错误,请稍后再试
- 该公众号暂时无法提供服务
- URL请求超时
- 新浪sae/SQLSTATE[07000][1045]
- 资料查询
- 实用代码集
- 微信公众平台
- thinkphp学习资料
- jquery核心函数库
- 移动/PC前端学习资料
- 实用小工具收集
- 加入我们
- 广告招商
- 加入开发者