我想让鼠标拖动实时显示矩形框的大小变化,利用onmousedown、onmousemove、onmouseup这三个事件来做。
请问在onmousemove里怎么处理才不会出现鼠标在拖动的时候把上一次矩形框也显示出来
document.onmousemove=function(e) {
ctx.strokeRect(参数...);
}
如果是这么写的话,鼠标一拖动就会显示很多框框。要是是用清除功能的话,就会把之前画好的也给清除掉了
我想让鼠标拖动实时显示矩形框的大小变化,利用onmousedown、onmousemove、onmouseup这三个事件来做。
请问在onmousemove里怎么处理才不会出现鼠标在拖动的时候把上一次矩形框也显示出来
document.onmousemove=function(e) {
ctx.strokeRect(参数...);
}
如果是这么写的话,鼠标一拖动就会显示很多框框。要是是用清除功能的话,就会把之前画好的也给清除掉了
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
3 回答1.4k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
2 回答1.9k 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
1 回答3k 阅读✓ 已解决
目前我想到了两种方法:
canvas
图层叠加,(姑且称为显示层,临时层)。mousedown,mouseup,mousemove 都由临时层监听。其中 mousedown,mouseup 监听的时候对显示层也进行绘制,每次只清除临时层。记得把临时层放到显示层的上面。