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 相关文章推荐
纯DOM+CSS3实现简单的小风车动画
Sep 27 HTML / CSS
CSS3的常见transformation图形变化用法小结
May 13 HTML / CSS
CSS3实现酷炫的3D旋转透视效果
Nov 21 HTML / CSS
css3利用transform变形结合事件完成扇形导航
Oct 26 HTML / CSS
使用HTML5 Canvas API中的clip()方法裁剪区域图像
Mar 25 HTML / CSS
html5指南-5.使用web storage存储键值对的数据
Jan 07 HTML / CSS
移动端Html5页面生成图片解决方案
Aug 07 HTML / CSS
详解如何解决canvas图片getImageData,toDataURL跨域问题
Sep 17 HTML / CSS
Canvas高级路径操作之拖拽对象的实现
Aug 05 HTML / CSS
浅谈Html5页面打开app的一些思考
Mar 30 HTML / CSS
HTML5 body设置自适应全屏
May 07 HTML / CSS
html table呈现个人简历以及单元格宽度失效的问题解决
Jan 22 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
弄了个检测传输的参数是否为数字的Function
2006/12/06 PHP
用PHP实现维护文件代码
2007/06/14 PHP
php 文件上传实例代码
2012/04/19 PHP
PHPExcel在linux环境下导出报500错误的解决方法
2017/01/26 PHP
如何快速的呈现我们的网页的技巧整理
2007/07/01 Javascript
extjs grid取到数据而不显示的解决
2008/12/29 Javascript
JQuery魔力之$(&quot;tagName&quot;)与selector
2012/03/05 Javascript
javascript学习笔记(六) Date 日期类型
2012/06/19 Javascript
jquery 漂亮的删除确认和提交无刷新删除示例
2013/11/13 Javascript
JavaScript中的单引号和双引号报错的解决方法
2014/09/01 Javascript
Javascript中call与apply的学习笔记
2014/09/22 Javascript
JQuery中Bind()事件用法分析
2015/05/05 Javascript
js console.log打印对像与数组用法详解
2016/01/21 Javascript
JS+CSS3模拟溢出滚动效果
2016/08/12 Javascript
JavaScript代码里的判断小结
2016/08/22 Javascript
JS匿名函数类生成方式实例分析
2016/11/26 Javascript
Javascript highcharts 饼图显示数量和百分比实例代码
2016/12/06 Javascript
Express之get,pos请求参数的获取
2017/05/02 Javascript
Angular4学习教程之DOM属性绑定详解
2018/01/04 Javascript
vue-cli单页面预渲染seo-prerender-spa-plugin操作
2020/08/10 Javascript
[31:29]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第一场 12.20
2020/12/23 DOTA
python格式化字符串实例总结
2014/09/28 Python
在Python的Flask框架中使用日期和时间的教程
2015/04/21 Python
Python获取CPU、内存使用率以及网络使用状态代码
2018/02/08 Python
对python模块中多个类的用法详解
2019/01/10 Python
pytorch中获取模型input/output shape实例
2019/12/30 Python
python随机模块random使用方法详解
2020/02/14 Python
什么是CSS3 HSLA色彩模式?HSLA模拟渐变色条
2016/04/26 HTML / CSS
用HTML5实现手机摇一摇的功能的教程
2012/10/30 HTML / CSS
稀有和绝版书籍:Biblio.com
2017/02/02 全球购物
理肤泉美国官网:La Roche-Posay
2018/01/17 全球购物
博士毕业生自我鉴定范文
2014/04/13 职场文书
土木工程专业本科生求职信
2014/10/01 职场文书
党员专题组织生活会发言材料
2014/10/17 职场文书
医院领导班子四风问题对照检查材料
2014/10/26 职场文书
python引入其他文件夹下的py文件具体方法
2021/05/23 Python