当用javaScript设置动态效果时, 如何让画面看起来流畅?

zxcullx 2014-08-23 12:48:05
优酷网上有个图片滑动效果, 看起来非常的不错, 我也想做一个类似的. 我采用的办法是用setInterval设置一个定时器, 然后每隔一段时间改变图片的一些css属性(比如style.left), 就此达到动态效果. 但效果非常不理想, 图片看起来闪烁, 移动的时候各个部分不同步, 有锯齿, 这样的画面恐怕很难让人接受. 我在网上已经看过不少动态效果的例子了, 并不是这样糟糕啊. 我不知道自己哪里做的不对, 大家有没有什么好的建议?
...全文
222 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
frauzhou 2014-08-24
  • 打赏
  • 举报
回复
引用 楼主 zxcullx 的回复:
优酷网上有个图片滑动效果, 看起来非常的不错, 我也想做一个类似的. 我采用的办法是用setInterval设置一个定时器, 然后每隔一段时间改变图片的一些css属性(比如style.left), 就此达到动态效果. 但效果非常不理想, 图片看起来闪烁, 移动的时候各个部分不同步, 有锯齿, 这样的画面恐怕很难让人接受. 我在网上已经看过不少动态效果的例子了, 并不是这样糟糕啊. 我不知道自己哪里做的不对, 大家有没有什么好的建议?
你对flash(或者primier) 和image ready(或者firework)是否熟悉?, 如果你熟悉这几种应用程序的话,你就知道问题出在哪里了。跟css没关系。如果你对flash的actionscrip, 还有 javascrip 都熟悉的话,设置这个很简单的几行字的事情。代码网上遍地都是,改一下就行了。
KK3K2005 2014-08-23
  • 打赏
  • 举报
回复
看你觉得效果ok的源代码
步慢生错 2014-08-23
  • 打赏
  • 举报
回复
你觉得不流畅是你setInterval时候的时间间隔过大。设小一点,移动次数多一点,然后每一次移动的小一点就行了。还有如果想觉得人看起来自然一些,可以写缓动函数。最常见的缓动函数就是 X1+(X2-X1)/N ,这个计算公式可以满足绝大多数移动的要求。 X1是当前横坐标,X2是目标横坐标,总的就是从某点不断靠近X2时候的一定时间间隔内移动的距离。N为一个int,根据你的执行间隔自己设定。这样写看起来移动就会先快后慢很自然。另外还有弹性系数函数,加速度函数。 针对兼容老浏览器,老版本库的就参考jquery easing插件, http://www.cnblogs.com/skyz/articles/1864632.html 高版本库针对新浏览器的就用jquery.ui里的easing效果库 http://jqueryui.com/easing/
zxcullx 2014-08-23
  • 打赏
  • 举报
回复
scrollLeft/scrollRight是用来定位滚动条位置的, 不知怎么将其用于滑动效果?
引用 1 楼 showbo 的回复:
一般是设置scrollLeft/scrollRight属性来实现滑动效果,出现闪动你代码写的有问题罗。。
Go 旅城通票 2014-08-23
  • 打赏
  • 举报
回复
一般是设置scrollLeft/scrollRight属性来实现滑动效果,出现闪动你代码写的有问题罗。。

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧