为了账号安全,请及时绑定邮箱和手机立即绑定

关于if(area.scrollTop >= con1.scrollHeight) { area.scrollTop = 0; }

请问在做以下判断时具体con1、con2和area分别发生了什么变化?没太听懂老师讲的

if(area.scrollTop >= con1.scrollHeight) {    

area.scrollTop = 0;     }


正在回答

1 回答

教你一个方法来看con1和con2的运动过程

1、先把html里con2的内容补全,在JavaScript中删除con2.innerHTML=con1.innerHTML

2、给con1添加红色背景色,con2添加绿色背景色。

3、运行页面,你会发现在红色con1的内容完全移除时,即area.scrollTop = con1.scrollHeight时,红色的con1会瞬间回到初始状态,也就是area.scrollTop = 0。

在没有背景色的情况下, 因为con1和con2顶部的内容一样,所以即使回到初始状态也看不出来中间变化的过程。

4、接着恢复源代码,但仍然保留con1的红色背景色,con2的绿色背景色。你会发现,跟刚刚不一样了,红色的con1没有在完全移除的瞬间回到初始位置,覆盖绿色的con2,而是con1和con2连贯的循环起来。我想可能是因为con2.innerHTML=con1.innerHTML这条语句,使得con2也指向了con1,所以con2也可以完整展示。

1 回复 有任何疑惑可以回复我~
#1

慕粉3498277 提问者

非常感谢你,主要是突然启发了我不明白就应该想办法尝试,通过实践中发现异同才能懂得更彻底! 我按你说的试了一下,前3点和你说的一样,不过第4点的效果同第3点,依然是在con1完全被移除的瞬间回到了初始状态,覆盖了con2。然后又查了一下资料,我想con2.innerHTML=con1.innerHTML应该仅仅是实现了复制的功能~
2016-07-21 回复 有任何疑惑可以回复我~
#2

z阿汀

按理来说第四点和前面应该是效果一样的,但是我用搜狗浏览器就会连贯的循环起来。其实对于第四点我也不太确定,但原理就是酱紫的,视频里这个原理老师也没讲清楚
2016-07-21 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
信息滚动效果制作
  • 参与学习       47751    人
  • 解答问题       321    个

萌妹子带您快速学习滚动效果,掌握无缝滚动和歇间性滚动的制作方法

进入课程

关于if(area.scrollTop >= con1.scrollHeight) { area.scrollTop = 0; }

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信