老师,关于isMouseInRect=false的问题

来源:8-1 Canvas动画

慕函数4436287

2019-06-05 20:07:44

案例中默认设置isMouseInRect=false不在矩形里面,然后当if(!isMouseInRect)即sMouseInRect=true的时候矩形进行位移,但是不是应该当鼠标不在矩形里面的时候进行位移,鼠标进入不是应该停止么?

写回答

1回答

好帮手慕慕子

2019-06-06

同学你好, 这里可以这样理解。如下图所示, 老师给画布绑定了一个鼠标移动事件, 通过offsetX,offsetY属性,判断鼠标是否放到了小矩形。 

(1)当鼠标放在了矩形上的时候, 将isMouseInrect设置为真,那么在定时器中取反就为false, 就不会执行定时器中if语句了,实现矩形暂停。 

(2)同理, 如果鼠标离开矩形, 将isMouseInrect设置为真, 那么在定时器中取反就为true, 执行定时器中的if语句,矩形开始位移。

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

isMouseInRect 是定义的一个变量,初始值为false,用作标识,判断鼠标是否放到了小矩形,然后判断是否要停止动画。 不要赋予它实际的意思,否则就想不对了, 同学可以回顾一下视频, 跟着老师的例子,自己敲写代码测试结果, 这样更能帮助你理解哦

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

祝学习愉快~~~

0

0 学习 · 4826 问题

查看课程