• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > 在 Google 搜索 Let it snow 的效果是怎么实现的?

在 Google 搜索 Let it snow 的效果是怎么实现的?

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含amp,sourceid,google,search,chrome等相关知识,匿名希望在学习及工作中可以帮助到您
搜索页面 http://www.google.com.hk/search?sourceid=chrome&ie=UTF-8&q=let+it+snow

回复内容:

雪花是一个个 ? ? ? 符号,通过 JavaScript 不段地改变其父级元素的位置,从而控制它们随机摆动、落下。雪花的大小、颜色由随机生成的,在一定范围内的 font-size 和 color 属性来控制。

雪花的数目应该是固定的(200 个),也就是说,当雪花掉到地上后,会从天空上重新飘下来。

结冰的效果是通过在一个覆盖全屏幕的 canvas 上绘制霜状图形的方式实现的。霜状图形的颜色是透明的,比如底层浅蓝色的 rgba 值就是(240, 246, 246, 0.08)。

程序会检测鼠标事件,当鼠标按下时,会将鼠标坐标周围一块面积内的图形清空,来达到除霜的效果。

点击 Defrost 将会把 canvas 移除,从而去掉了霜层。

思路很简单,关键是 JavaScript 动画的优化。 1.在keyword == let+it+snow时,向常规dom中添加一个大小覆盖viewport的div(层级位置高于原有dom)
2.不停地向该div中添加绝对定位的雪花符号(所有的符号都在不停变动位置)。
3.在上面的容器之上,添加canvas层,并使用canvas的特殊css属性pointer-events,藉以达到鼠标穿透事件发生后,令canvas层下面的元素可以使用的目的。

P.S:没搞清楚怎么实现整屏雾气效果的,抛块砖头先。 这个效果我去年过圣诞节的时候做过 原理一楼已经讲过了 我就直接来个现成的实现把

这个脚本简单好用 易于实现 如果想看原理 就读一读 源代码把

http://www.schillmania.com/projects/snowstorm/ let it snow









snowyfog.9.js 在

https://gist.github.com/1493708

您可能想查找下面的文章:

  • 揭秘谷歌AMP项目:google amp是如何提高网页加载速度的?
  • 谷歌AMP和百度MIP对SEO的影响
  • 百度、搜狗、雅虎正式支持AMP
  • seozac:Google的AMP-加速移动页面
  • 谷歌为什么要推出AMP计划?
  • Google AMP 是什么鬼?
  • 前端未来页面布局发展方向是 Flexbox 还是 Grid?
  • 网页中如何让某两行文字精确的对齐(两侧对齐)?
  • 这个问题已有了答案?
  • 淘宝的flexible适配方案为什么只对iOS进行dpr判断,对于Android始终认为其dpr为1?

相关文章

  • 2018-12-03处理HTML5新标签的浏览器兼容版问题
  • 2018-12-03html5游戏开发-零基础开发RPG游戏-开源讲座(一)
  • 2018-12-03HTML5的发展
  • 2018-12-03HTML5 canvas基本绘图之绘制矩形的示例代码详解
  • 2018-12-03IDEA如何安装vue开发插件安装图文教程
  • 2018-12-03用css3实现打点效果实例讲解
  • 2018-12-03什么是校验功能?校验功能实例用法汇总
  • 2017-08-06html5 touch事件实现触屏页面上下滑动(一)
  • 2018-12-03如何利用input事件来监听移动端的输入_html5教程技巧
  • 2018-12-03零基础如何迅速学习HTML(或HTML5)?

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • HTML5音乐可视化视频教程的资源推荐
    • html5实现文字轮滚的示例代码
    • HTML5讲解之dataTransfer对象
    • HTML5新增属性:classList属性的使用方法
    • 怎样使用javascript Date Format方法
    • 相同码率下,Ogg、MPEG 4、WebM这三种视频格式,哪种清晰度更高,为什么?
    • 对Tap事件和Tap点透原理的分析
    • html5中当鼠标滚轮正在被滚动时运行的脚本的事件onmousewheel
    • html5 table标签的样式介绍(另附html5 table css居中的实例)
    • html5 input输入实时检测以及延时优化

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有