请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

有一些疑惑想请教老师

老师我有几个问题想请教一下老师

首先第一个这张图
这张图是我使用translate动画之后通过chrome Devtool调试发现,当动画一直在运行的时候。translate首次进行的元素也发生了重绘,只是之后不进行了绘制。请问老师即使使用transform当元素首次发生变换的时候也会发生重绘但是之后并不会是这样吗。
还有就是,我的疑问是在chrome devtool前一段时间中,每次浏览器刷新都会关于translate变化更新进而计算样式等等。可是到了后边我发现并不会而只是出现一段灰色的task,即使动画在移动那么也并不会重新计算样式。请问老师为什么前几次translate需要计算而之后就不需要了呢?
图片描述

其次就是第二个问题,我在调试过程中发现我明明没有写一些mouseover事件,可是莫名奇妙就出现了mouseover事件然后导致了发生重新绘制,请问老师这是为什么?浏览器默认行为吗

正在回答 回答被采纳积分+3

3回答

提问者 hy_wang 2021-02-02 20:22:37

https://img1.sycdn.imooc.com//szimg/601944040971187918530619.jpg

老师是这样的

0 回复 有任何疑惑可以回复我~
提问者 hy_wang 2021-02-02 20:16:26

//img1.sycdn.imooc.com//szimg/6019429009e806b119170941.jpg


请老师看下~


https://img1.sycdn.imooc.com//szimg/601b755109cf7f0213160206.jpg

0 回复 有任何疑惑可以回复我~
Mr_Max 2021-01-31 23:13:29

同学你好!

第一个问题,你另一个问题的例子其实可以解释,使用willChange后只触发一次transform也是不会发生重绘的。你可能要检查一下你运行环境的硬件加速问题。一般用户的环境都有GPU,浏览器默认也是使用硬件加速的。你描述你的DevTools的不确定状态我也无法解释,考虑更新一下你的浏览器?

第二个问题,浏览器不会自己触发事件的,你要定位一下这些事件触发的原因和代码位置。自己一定要对自己的代码有十足的了解和把握。: )

0 回复 有任何疑惑可以回复我~
  • 提问者 hy_wang #1
    老师你好,我第一个问题是一个非常简单的html文件。可是他都存在这个mouseout Event,文件里并没有这个呀。。我都要疯掉了。。
    回复 有任何疑惑可以回复我~ 2021-01-31 23:21:39
  • Mr_Max 回复 提问者 hy_wang #2
    你第一个问题里也会自动出现mouseout event吗?看看你的chrome是不是装了什么插件触发的。
    回复 有任何疑惑可以回复我~ 2021-02-02 02:11:35
  • 提问者 hy_wang 回复 Mr_Max #3
    老师我换了一个电脑还是不行呀还有事件
    回复 有任何疑惑可以回复我~ 2021-02-02 20:15:57
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信