canvas体验
必要的初始化
canvas默认是一个inline-block元素,这通常会导致一些BUG产生,例如下方有空白,宽度不合理,建议将其显示为
block
元素让画板覆盖全屏
这里需要不能使用css为其设置样式,在css中设置的样式实际并没有改变画板内部的大小,只是将画布简单的放大。1
2
3var canvas =document.getElementById('id')
canvas.width = document.documentElement.clientWidth
canvas.height = document.documentElement.clientHeight
获得一个具有2D绘制功能的对象
1 | var ctx = canvas.getContext('2d') |
绘制图像
现在就可以开始绘制图像了
具体如何绘制可以参考官api文档,官方文档什么都有。
绘制肯定需要鼠标键盘事件了,js监听事件非常简单
1 | document.onclick = function (e){ |
这里我们可以从鼠标事件中得到事件触发的相关参数,我们这里只需要clientX和clientY就可以了,它们代表鼠标点击的是当前页面窗口的位置,并不是在canvas中的位置,有时候页面会被用户改变,此时也需要让canvas自动改变
1 | function autoSetSize(obj) { |