关于onmousemove

来源:8-1 Canvas动画

hyperse

2019-09-10 15:11:34

var posx = 0,posy = 0,dir = 1,isMouseInRect = false;
			
			canvas.onmousemove = function(e){
				var mouseX = e.offsetX;
				var mouseY = e.offsetY;
				if(mouseX > posx && mouseX < posx + 50 && mouseY > posy && mouseY < posy +50){
					isMouseInRect = true;
				}else{
					isMouseInRect = false;
				}
			}

这段代码先讲鼠标距离canvas元素的边界长度赋值给了mouseX mouseY对吗,然后做判断,改变布尔值。可是哪一行代码是说动画因此就停止了呢?我有点糊。。

写回答

1回答

好帮手慕慕子

2019-09-10

同学你好, 首先,同学对这段代码逻辑的理解是正确的哦。

如下图所示, 在定时器中,通过 isMouseInRect 这个变量,判断是够改变posx的值, 决定是否执行动画效果的哦

http://img.mukewang.com/climg/5d775aae0001801610260743.jpg

如果帮助到了你, 欢迎采纳!

祝学习愉快~~~

1
hyperse
h 哦哦,明白了,谢谢老师。节日快乐!
h019-09-10
共1条回复

0 学习 · 6815 问题

查看课程

相似问题