微信js-sdk预览图片接口及从拍照或手机相册中选图接口用法示例


Posted in Javascript onOctober 13, 2016

本文实例讲述了微信js-sdk预览图片接口及从拍照或手机相册中选图接口用法。分享给大家供大家参考,具体如下:

目前中js-sdk 1.0版本中,预览图片提供了2个接口,接口的定义参考官方文档

1.预览网络图片http链接的

2.预览本地图片wenxin:// 链接的

一、预览图片接口

注:

1.预览图片接口目前只支持微信手机版
2.预览图片只支持http连接,对于weixin:// 无法预览
3.预览图片的地址需要进行加密处理,尤其路径中有中文的情况下,需要使用window.encodeURI()方法

实例说明:

//1.预览图片 会显示下载失败
wx.previewImage({
  current:'http://localhost/content/images/冰皮月饼.jpg',
  urls:[
    'http://localhost/content/images/冰皮月饼.jpg'
  ]
});
//预览图片成功
wx.previewImage({
  current:'http://localhost/content/images/%E5%86%B0%E7%9A%AE%E6%9C%88%E9%A5%BC.jpg',
  urls:[
    'http://localhost/content/images/%E5%86%B0%E7%9A%AE%E6%9C%88%E9%A5%BC.jpg'
  ]
});

自定义预览网页中,指定的图片实例:

var imgList=$('.row img');
var urlList=[];
imgList.each(function(){
  var url='http://'+location.host+$(this).attr('src');
  //对url中的中文进行处理
  url=window.encodeURI(url);
  urlList.push(url);
});
//1.预览图片接口目前只支持微信手机版
//2.预览图片只支持http连接,对于weixin:// 无法预览
wx.previewImage({
  current:urlList[0],
  urls:urlList
});

二、从拍照或手机相册中选择图片,预览本地图片

1.返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片,链接地址都是 weixin://resourceid/xxxx

2. localId 可以用于微信手机版图片显示(目前PC版不可用)

实例1:

//2.选择图片单个图片
wx.chooseImage({
  count: 1, // 默认9
  sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
  sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
  success: function (res) {
    var localIds = res.localIds;
    // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片
    // localId 可以用于微信手机版图片显示(目前PC版不可用)
    $('#imgTarget').attr('src',localIds[0]);
  }
});

实例2:

//选择多个图片
wx.chooseImage({
  count:4,
  sizeType:['original'],
  sourceType:['album', 'camera'],
  success:function(res){
    var localIds=res.localIds;
    for (var i = 0; i < localIds.length; i++) {
      var localId=localIds[i];
      addImg(localId);
    }
  }
});
//添加图片的row
function addImg(src){
  var col=$('<div />');
  col.addClass('col-xs-6 col-md-3');
  var a=$('<a />');
  a.addClass('thumbnail');
  var img=$('<img />');
  img.attr('src',src);
  a.append(img).append(src);
  col.append(a);
  $('.row').append(col);
}

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript 编程引入命名空间的方法
Jun 29 Javascript
谷歌浏览器 insertCell与appendChild的区别
Feb 12 Javascript
JS backgroundImage控制
May 19 Javascript
ASP.NET中使用后端代码注册脚本 生成JQUERY-EASYUI的界面错位的解决方法
Jun 12 Javascript
jquery更换文章内容与改变字体大小代码
Sep 30 Javascript
javascript浏览器兼容教程之事件处理
Jun 09 Javascript
JS跨域交互(jQuery+php)之jsonp使用心得
Jul 01 Javascript
使用bootstrapValidator插件进行动态添加表单元素并校验
Sep 28 Javascript
ES6概念 Symbol.keyFor()方法
Dec 25 Javascript
javascript编程实现栈的方法详解【经典数据结构】
Apr 11 Javascript
JavaScript错误处理操作实例详解
Jan 04 Javascript
json数据格式常见操作示例
Jun 13 Javascript
Javascript中this绑定的3种方法与比较
Oct 13 #Javascript
手机端实现Bootstrap简单图片轮播效果
Oct 13 #Javascript
jquery  实现轮播图详解及实例代码
Oct 12 #Javascript
ExtJS 4.2 Grid组件单元格合并的方法
Oct 12 #Javascript
JS代码实现百度地图 画圆 删除标注
Oct 12 #Javascript
如何使用jquery实现文字上下滚动效果
Oct 12 #Javascript
微信js-sdk界面操作接口用法示例
Oct 12 #Javascript
You might like
安装ImageMagick出现error while loading shared libraries的解决方法
2014/09/23 PHP
PHP入门教程之会话控制技巧(cookie与session)
2016/09/11 PHP
thinkphp分页集成实例
2017/07/24 PHP
PHP替换Word中变量并导出PDF图片的实现方法
2020/11/26 PHP
JavaScript 全角转半角部分
2009/10/28 Javascript
javascript 闭包疑问
2010/12/30 Javascript
JS实现让网页背景图片斜向移动的方法
2015/02/25 Javascript
Json对象和字符串互相转换json数据拼接和JSON使用方式详细介绍(小结)
2016/10/25 Javascript
JS基于onclick事件实现单个按钮的编辑与保存功能示例
2017/02/13 Javascript
nodejs服务搭建教程 nodejs访问本地站点文件
2017/04/07 NodeJs
AngularJS实现controller控制器间共享数据的方法示例
2017/10/30 Javascript
JS简单实现动态添加HTML标记的方法示例
2018/04/08 Javascript
JavaScript函数的特性与应用实践深入详解
2018/12/30 Javascript
Vue 动态组件与 v-once 指令的实现
2019/02/12 Javascript
如何为你的JavaScript代码日志着色详解
2019/04/08 Javascript
django中使用vue.js的要点总结
2019/07/07 Javascript
vue中如何添加百度统计代码
2020/12/19 Vue.js
[59:32]Liquid vs Fnatic 2019国际邀请赛淘汰赛败者组BO1 8.20.mp4
2020/07/19 DOTA
python过滤字符串中不属于指定集合中字符的类实例
2015/06/30 Python
对python3 中方法各种参数和返回值详解
2018/12/15 Python
python实现在函数中修改变量值的方法
2019/07/16 Python
深入了解python列表(LIST)
2020/06/08 Python
keras的三种模型实现与区别说明
2020/07/03 Python
python 如何引入协程和原理分析
2020/11/30 Python
HTML5移动端开发遇见的东西
2019/10/11 HTML / CSS
如何让pre和textarea等HTML元素去掉滚动条自动换行自适应文本内容高度
2019/08/01 HTML / CSS
英国标志性生活方式品牌:Skinnydip London
2019/12/15 全球购物
秘书岗位职责
2013/11/18 职场文书
兼职业务员岗位职责
2014/01/01 职场文书
青年教师典范事迹材料
2014/01/31 职场文书
小学生自我评价100字(15篇)
2014/09/18 职场文书
房屋出租协议书范本(标准版)
2014/09/24 职场文书
党员个人整改措施
2014/10/24 职场文书
创业计划书之酒吧
2019/12/02 职场文书
Nginx下SSL证书安装部署步骤介绍
2021/12/06 Servers
Python如何快速找到多个字典中的公共键(key)
2022/04/29 Python