HTML5 用动画的表现形式装载图像


Posted in HTML / CSS onMarch 08, 2016

示例使用HTML5的canvas标签和Javascript脚本,简单的编写了装载图片效果,请使用支持HTML5的浏览器预览效果:
下图为以逐渐横向栅格的效果图

HTML5 用动画的表现形式装载图像

html部分:
XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE html>    
  2. <html lang="en">    
  3. <head>    
  4. <meta charset="UTF-8">    
  5. <title>html5 装载图片</title>    
  6. </head>    
  7. <body>    
  8. <button onclick="drawImg1()">从左到右</button>    
  9. <button onclick="drawImg2()">从中央到左右两边</button>    
  10. <button onclick="drawImg3()">以逐渐横向栅格</button>    
  11. <hr/>    
  12. <canvas class="canvas" id="canvas" width="600" height="300"></canvas>    
  13. </body>    
  14. </html>   

JavaScript部分:
 
XML/HTML Code复制内容到剪贴板
  1.  //初始化    
  2. var canvas = document.getElementById("canvas"),    
  3. context = canvas.getContext("2d"),    
  4. image = new Image();    
  5. image.src = "img/test.jpg";    
  6. //从左到右加载方法    
  7. function drawImg1(){    
  8. var drawWidth = 0,    
  9. interval = setInterval(function(){    
  10. context.drawImage(image, 0, 0, drawWidth, image.height, 0, 0, drawWidth, image.height);    
  11. drawWidth += 20;    
  12. if(drawWidth > canvas.width) clearInterval(interval);    
  13. },100);    
  14. }    
  15. //从中央向左右两边拉开加载方法    
  16. function drawImg2(){    
  17. var drawWidth = 0,    
  18. drawLeft = canvas.width/2,    
  19. interval = setInterval(function(){    
  20. context.drawImage(image, drawLeft, 0, drawWidth, image.height, drawLeft, 0, drawWidth, image.height);    
  21. drawWidth += 20;    
  22. drawLeft -10;    
  23. if(drawLeft < 0) clearInterval(interval);    
  24. },100);    
  25. }    
  26. //以逐渐横向栅格加载方法    
  27. function drawImg3(){    
  28. var drawWidth = 0,    
  29. spaceWidth = canvas.width/20, //10指分割的块数    
  30. interval = setInterval(function(){    
  31. for(var i = 0;i<20;i++){    
  32. context.drawImage(image, i*spaceWidth, 0, drawWidth, image.height, i*spaceWidth, 0, drawWidth, image.height);    
  33. }    
  34. drawWidth += 5;    
  35. if(drawWidth > spaceWidth) clearInterval(interval);    
  36. },100);    
  37. }  

以上内容是小编给大家介绍的HTML5 用动画的表现形式装载图像,希望对大家有所帮助!

HTML / CSS 相关文章推荐
各大浏览器 CSS3 和 HTML5 兼容速查表 图文
Apr 01 HTML / CSS
结合CSS3的布局新特征谈谈常见布局方法
Jan 22 HTML / CSS
使用CSS3 制作一个material-design 风格登录界面实例
Dec 12 HTML / CSS
HTML5 用动画的表现形式装载图像
Mar 08 HTML / CSS
HTML5实现QQ聊天气泡效果
Jun 26 HTML / CSS
html5使用canvas实现跟随光标跳动的火焰效果
Jan 07 HTML / CSS
HTML5中5个简单实用的API(第二篇,含全屏、可见性、拍照、预加载、电池状态)
May 07 HTML / CSS
总结html5自定义属性有哪些
Apr 01 HTML / CSS
CSS实现漂亮的时钟动画效果的实例代码
Mar 30 HTML / CSS
CSS实现切角+边框+投影+内容背景色渐变效果
Nov 01 HTML / CSS
Html5同时支持多端sdk的小技巧
Nov 17 HTML / CSS
box-shadow单边阴影的实现
May 21 HTML / CSS
HTML5离线缓存Manifest是什么
Mar 09 #HTML / CSS
html5 touch事件实现触屏页面上下滑动(一)
Mar 10 #HTML / CSS
html5 touch事件实现触屏页面上下滑动(二)
Mar 10 #HTML / CSS
html5 touch事件实现页面上下滑动效果【附代码】
Mar 10 #HTML / CSS
Html5 postMessage实现跨域消息传递
Mar 11 #HTML / CSS
html5 canvas实现跟随鼠标旋转的箭头
Mar 11 #HTML / CSS
HTML5如何实现元素拖拽
Mar 11 #HTML / CSS
You might like
PHP入门速成教程
2007/03/19 PHP
php SQL防注入代码集合
2008/04/25 PHP
php 接口类与抽象类的实际作用
2009/11/26 PHP
PHP+jQuery实现双击修改table表格功能示例
2019/02/21 PHP
THINKPHP5分页数据对象处理过程解析
2020/10/28 PHP
JS、CSS加载中的小问题探讨
2013/11/26 Javascript
jquery+json实现数据二级联动的方法
2015/11/28 Javascript
Google Maps基础及实例解析
2016/08/06 Javascript
JavaScript中Array的实用操作技巧分享
2016/09/11 Javascript
React-Native左右联动List的示例代码
2017/09/21 Javascript
基于Vue、Vuex、Vue-router实现的购物商城(原生切换动画)效果
2018/01/09 Javascript
利用js将ajax获取到的后台数据动态加载至网页中的方法
2018/08/08 Javascript
Layui Form 自定义验证的实例代码
2019/09/14 Javascript
解决layui laydate 时间控件一闪而过的问题
2019/09/28 Javascript
JS实现可视化音频效果的实例代码
2020/01/16 Javascript
jquery插件实现轮播图效果
2020/10/19 jQuery
[01:00:04]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第二局
2016/02/26 DOTA
[51:17]Mineski vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
python strip() 函数和 split() 函数的详解及实例
2017/02/03 Python
Python 转义字符详细介绍
2017/03/21 Python
利用python求相邻数的方法示例
2017/08/18 Python
python 动态加载的实现方法
2017/12/22 Python
python使用Plotly绘图工具绘制气泡图
2019/04/01 Python
wxPython实现画图板
2020/08/27 Python
Python Celery多队列配置代码实例
2019/11/22 Python
Django中密码的加密、验密、解密操作
2019/12/19 Python
Python3 集合set入门基础
2020/02/10 Python
领导干部廉政承诺书
2014/03/27 职场文书
高中生第一学年自我鉴定2015
2014/09/28 职场文书
幼儿园感恩节活动方案
2014/10/06 职场文书
财务整改报告范文
2014/11/05 职场文书
先进教师事迹材料
2014/12/16 职场文书
关于环保的广播稿
2015/12/17 职场文书
2019年关于小学生课外阅读情况的分析报告
2019/12/02 职场文书
MySQL令人咋舌的隐式转换
2021/04/05 MySQL
聊聊golang中多个defer的执行顺序
2021/05/08 Golang