登录

javascript - 求问初页 HTML5海报场景的JS技术实现原理

http://chuye.cloud7.com.cn/2314834

下载一个 初页app ,看到这个场景动画每一页都在canvas内,想问下这个是怎样把所有元素和动画都在canvas内实现的?

有什么类似的开源框架?
比如 https://github.com/Flipboard/react-canvas ?

# JavaScript
黄舟黄舟2129 天前524 次浏览

全部回复(5) 我要回复

  • 迷茫

    迷茫2017-04-10 15:25:51

    canvas做动画,可能就用到了requestAnimationFrame【不同浏览器,会有前缀】这个新增的方法
    它替代了原本的setTimeout或setInterval,但要注意咯,你不喜欢,也可以用setTimeout来实现动画。

    话说,用canvas做动画还是比较复杂的,具体制作的话,参考一下网上setTimeout制作动画就OK,
    requestAnimationFrame和setTimeout还是比较类似的

    回复
    0
  • PHP中文网

    PHP中文网2017-04-10 15:25:51

    就是画进去的啊。
    各种正在canvas上做文章的各种应用,包括这个“初页”和各种HTML5游戏框架,
    本质当然都一样,做一个框架,把页面数据按约定解析成各种canvas绘制方法。

    “初页”这个似乎是自己写的框架,页面间切换是通过 CSS3 动画移动不同的 canvas
    React-canvas 始终在同一个 canvas 里折腾有点差别。
    而且似乎做了一些自适应工作,适应不同大小屏幕。

    当然 React-canvas 也是个好框架,理当也能做到这种程度。

    回复
    0
  • PHPzhong

    PHPzhong2017-04-10 15:25:51

    看了楼主那个链接,我怎么没发现canvas呢。。。
    那些动画都是css3做的,移动一大堆p而已

    看到楼上煞有介事的说canvas的也是醉了

    回复
    0
  • 高洛峰

    高洛峰2017-04-10 15:25:51

    我想请问一下楼主有没有什么可以制作类试于初页的h5开源框架

    回复
    0
  • 巴扎黑

    巴扎黑2017-04-10 15:25:51

    我之前看到初页在移动端完全用的canvas也非常震惊,后面看到阮一峰的的文章<<也许,DOM 不是答案>>才对这方面有了了解.应该不是用的react-canvas这个框架,移动端只加载了一个first-page-min.js,我格式化后才5000多行,而react-canvas随便一个简单的example就有2w多行.仔细看了一下,初页的模板每页每个元素都是定死了的,他们可能是根据现有的模板绘制到canvas的,不是通过页面生成的.不过react-canvas也可以多多关注一下,我也刚了解到.

    原文链接:http://www.ruanyifeng.com/blog/2015/02/future-of-dom.html

    回复
    0
  • 取消回复发送