微信小程序 wxapp画布 canvas详细介绍


Posted in Javascript onOctober 31, 2016

微信小程序 wxapp画布 canvas :最近学习微信小程序的知识,这里记录下小程序 waxpp画布canvas 的知识:

canvas

属性名 类型 默认值 说明
hidden Boolean false 设置画布的显示/隐藏,hidden值为true表示隐藏,值为false表示显示
canvas-id String   canvas组件的唯一标识符
binderror EventHandle   当发生错误时触发error事件,detail = { errMsg: 'something wrong' }

注:

1.canvas标签默认宽度300px、高度225px

2.同一页面中的canvas-id不可重复,如果使用一个已经出现过的canvas-id,该canvas标签对应的画布将被隐藏并不再正常工作

示例代码:下载

<!-- canvas.wxml -->
<canvas style="width: 300px; height: 200px;" canvas-id="firstCanvas"></canvas>
<!-- 当使用绝对定位时,文档流后边的canvas的显示层级高于前边的canvas-->
<canvas style="width: 400px; height: 500px;" canvas-id="secondCanvas"></canvas>
<!-- 因为canvas-id与前一个canvas重复,该canvas不会显示,并会发送一个错误事件到AppService -->
<canvas style="width: 400px; height: 500px;" canvas-id="secondCanvas" binderror="canvasIdErrorCallback"></canvas>
// canvas.js
Page({
 canvasIdErrorCallback: function (e) {
  console.error(e.detail.errMsg);
 },
 onReady: function (e) {

  //使用wx.createContext获取绘图上下文context
  var context = wx.createContext();

  context.setStrokeStyle("#00ff00");
  context.setLineWidth(5);
  context.rect(0,0,200,200);
  context.stroke()
  context.setStrokeStyle ("#ff0000") ;
  context.setLineWidth (2)
  context.moveTo(160,100)
  context.arc(100,100,60,0,2*Math.PI,true);
  context.moveTo(140,100);
  context.arc(100,100,40,0,Math.PI,false);
  context.moveTo(85,80);
  context.arc(80,80,5,0,2*Math.PI,true);
  context.moveTo(125,80);
  context.arc(120,80,5,0,2*Math.PI,true);
  context.stroke();

  //调用wx.drawCanvas,通过canvasId指定在哪张画布上绘制,通过actions指定绘制行为
  wx.drawCanvas({
   canvasId: 'firstCanvas',
   actions: context.getActions() //获取绘图动作数组
  });
 }
});

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
在IE上直接编辑网页内容的js代码(IE地址栏js)
Apr 27 Javascript
能说明你的Javascript技术很烂的五个原因分析
Oct 28 Javascript
将光标定位于输入框最右侧实现代码
Dec 04 Javascript
原生js拖拽(第一课 未兼容)拖拽思路
Mar 29 Javascript
基于Node.js的强大爬虫 能直接发布抓取的文章哦
Jan 10 Javascript
前端js文件合并的三种方式推荐
May 19 Javascript
分享JS数组求和与求最大值的方法
Aug 11 Javascript
jQuery实现根据生日计算年龄 星座 生肖
Nov 23 Javascript
Vue 中mixin 的用法详解
Apr 23 Javascript
vue通过指令(directives)实现点击空白处收起下拉框
Dec 06 Javascript
js中arguments对象的深入理解
May 14 Javascript
vue+element创建动态的form表单及动态生成表格的行和列
May 20 Javascript
微信小程序 wxapp视图容器 view详解
Oct 31 #Javascript
详解JavaScript跨域总结与解决办法
Oct 31 #Javascript
JS中用三种方式实现导航菜单中的二级下拉菜单
Oct 31 #Javascript
微信小程序 获取微信OpenId详解及实例代码
Oct 31 #Javascript
JavaScript事件用法浅析
Oct 31 #Javascript
js中通过getElementsByName访问name集合对象的方法
Oct 31 #Javascript
JavaScript递归操作实例浅析
Oct 31 #Javascript
You might like
php下目前为目最全的CURL中文说明
2010/08/01 PHP
php中存储用户ID和密码到mysql数据库的方法
2013/02/06 PHP
php+ajax实时输入自动搜索匹配的方法
2014/12/26 PHP
项目中应用Redis+Php的场景
2016/05/22 PHP
thinkphp框架实现删除和批量删除
2016/06/29 PHP
lib.utf.js
2007/08/21 Javascript
javascript 带有滚动条的表格,标题固定,带排序功能.
2009/11/13 Javascript
js loading加载效果实现代码
2009/11/24 Javascript
js 获取服务器控件值的代码
2010/03/05 Javascript
说明你的Javascript技术很烂的五个原因
2011/04/26 Javascript
javascript 中String.match()与RegExp.exec()的区别说明
2013/01/10 Javascript
javascripit实现密码强度检测代码分享
2013/12/12 Javascript
jquery设置按钮停顿3秒不可用
2014/03/07 Javascript
jQuery产品间断向下滚动效果核心代码
2014/05/08 Javascript
完美兼容各大浏览器的jQuery仿新浪图文淡入淡出间歇滚动特效
2014/11/12 Javascript
Angular 路由route实例代码
2016/07/12 Javascript
jquery中关于bind()方法的使用技巧分享
2017/03/30 jQuery
AngularJS学习笔记之表单验证功能实例详解
2017/07/06 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
2017/07/19 Javascript
实例分析js事件循环机制
2017/12/13 Javascript
vue添加自定义右键菜单的完整实例
2020/12/08 Vue.js
Python Queue模块详细介绍及实例
2016/12/27 Python
python rsa 加密解密
2017/03/20 Python
python3实现网络爬虫之BeautifulSoup使用详解
2018/12/19 Python
python字典排序的方法
2019/10/12 Python
python3.8下载及安装步骤详解
2020/01/15 Python
基于python实现把json数据转换成Excel表格
2020/05/07 Python
python调用API接口实现登陆短信验证
2020/05/10 Python
浅谈matplotlib 绘制梯度下降求解过程
2020/07/12 Python
幼儿教师思想汇报
2014/01/10 职场文书
全陪导游欢迎词
2014/01/17 职场文书
银行职员自我鉴定
2014/04/20 职场文书
2014年党员自我评议对照检查材料
2014/09/20 职场文书
学习保证书100字
2015/02/26 职场文书
超市主管竞聘书
2015/09/15 职场文书
小学体育课教学反思
2016/02/16 职场文书