微信小程序 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 相关文章推荐
js 对象是否存在判断
Jul 15 Javascript
javascript 跳转代码集合
Dec 03 Javascript
JQuery防止退格键网页后退的实现代码
Mar 23 Javascript
JS打印gridview实现原理及代码
Feb 05 Javascript
JavaScript实现按照指定长度为数字前面补零输出的方法
Mar 19 Javascript
详解Javascript中的原型OOP
Oct 12 Javascript
JS实现数组去重复值的方法示例
Feb 18 Javascript
浅谈js for循环输出i为同一值的问题
Mar 01 Javascript
javascript html5轻松实现拖动功能
Mar 01 Javascript
ES6 中可以提升幸福度的小功能
Aug 06 Javascript
js canvas实现红包照片效果
Aug 21 Javascript
jQuery实时统计输入框字数及限制
Jun 24 jQuery
微信小程序 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实现简单的新闻发布系统实例
2015/07/28 PHP
Laravel5框架添加自定义辅助函数的方法
2018/08/01 PHP
PHP实现抽奖功能实例代码
2020/06/30 PHP
总结AJAX相关JS代码片段和浏览器模型
2007/08/15 Javascript
javascript CSS画图之基础篇
2009/07/29 Javascript
Jquery 自定义动画概述及示例
2013/03/29 Javascript
avascript中的自执行匿名函数应用示例
2014/09/15 Javascript
js实现感应鼠标图片透明度变化的方法
2015/02/20 Javascript
Java File类的常用方法总结
2015/03/18 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
JavaScript实现控制打开文件另存为对话框的方法
2015/04/17 Javascript
第一次接触JS require.js模块化工具
2016/04/17 Javascript
微信公众号菜单配置微信小程序实例详解
2017/03/31 Javascript
原生JS实现的多个彩色小球跟随鼠标移动动画效果示例
2018/02/01 Javascript
基于Vue的商品主图放大镜方案详解
2019/09/19 Javascript
解决layui批量传值到后台操作时出现传值为空的问题
2019/09/28 Javascript
js实现简单进度条效果
2020/03/25 Javascript
JS简易计算器实例讲解
2020/06/30 Javascript
Python开发之快速搭建自动回复微信公众号功能
2016/04/22 Python
python 迭代器和iter()函数详解及实例
2017/03/21 Python
如何用Python做一个微信机器人自动拉群
2019/07/03 Python
python 利用jinja2模板生成html代码实例
2019/10/10 Python
Nginx+Uwsgi+Django 项目部署到服务器的思路详解
2020/05/08 Python
Python识别验证码的实现示例
2020/09/30 Python
Python如何批量生成和调用变量
2020/11/21 Python
迪梵英国官方网站:Darphin英国
2017/12/06 全球购物
Spongelle官网:美国的创意护肤洗护品牌
2019/05/15 全球购物
《白鹅》教学反思
2014/04/13 职场文书
带病坚持工作事迹
2014/05/03 职场文书
2015年信息宣传工作总结
2015/05/26 职场文书
采购员工作总结范文
2015/08/12 职场文书
幼儿园园长新年寄语
2015/08/17 职场文书
《詹天佑》教学反思
2016/02/20 职场文书
使用pytorch实现线性回归
2021/04/11 Python
MongoDB 常用的crud操作语句
2021/06/20 MongoDB
从零开始在Centos7上部署SpringBoot项目
2022/04/07 Servers