当前位置: 首页 > article >正文

canvas绘制简单动画和本地储存

一、canvas绘制简单动画

  • 在canvas画布中制作动画相对来说很简单,实际上就是不断变化坐标、擦除、重绘、的过程。
    1.使用setInterval 方法设置动画的间隔时间。
    setInterval(code,millisec)
    setInterval方法html中固有方法,这个方法接受两个参数,第一个函数表示执行动画的函数,第二个参数为间隔时间,单位是(毫秒)。
    2.用来绘图的函数
    1)、通过不断的变换X和Y的坐标来实现动画效果。
    2)、在该函数中先用clearRect方法将画布整体或者是局部擦除。
    擦除图像clearRect方法:
    context.fillRect(x,y,width,height);
    x是指我们起点的横坐标,y是指我们起点的纵坐标,width是指擦子的长度,height是指擦子的高度。
<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>canvas绘制动画</title><script type="text/javascript" src="canvas.js"></script>
</head>
<body onload="draw('canvas')">
<canvas id="canvas" width="400" height="400"></canvas>
</body>
</html>
var i;
function draw(id){var canvas = document.getElementById(id);context = canvas.getContext('2d');setInterval(painting,10);i = 0;
}
function painting(){context.fillStyle = "green";context.fillRect(i,i,10,10);context.fillRect(400-i,400-i,10,10);context.fillRect(i,400-i,10,10);context.fillRect(400-i,i,10,10);i++;
}

网页描述:

  • 在400 × 400的画布的四周出现四条10 ×10的射线于中心点相交。

二、Web Storsge本地存储

1、sessionStorage临时保存
  • 就是把数据保存在session对象之中。
    session就是在打开网站到关闭网站之间要求进行保存的数据。
    sessionStorage临时保存的用法:
    sessionStorage.setitme(‘key’,‘value’);
    //或者是sessionStorage.key = ‘value’;
    sessionStorage临时数据读取的方法:
    变量=sessionStorage.getItem(‘key’)
    //或者是sessionStorage.key;
2、localStorage永久保存
  • 就是将数据保存在客户端本地的硬件设备至上面,如果浏览器被关闭,这个数据不会丢失,下次打开可以继续使用。这个功能就是我们的localStorage永久保存功能。
    永久保存数据的方法:
    localStorage.setItem(‘key’,‘value’);
    //或者
    localstorage.key;
    读取的方法:
    变量=localStorage.getItem(‘key’);
    //或者
    变量=localStorage.key;
<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>Web Storage本地储存</title><script type="text/javascript" src="index.js"></script>
</head>
<body>
<h1>Web Storage本地储存</h1>
<p id="msg"></p>
<input type="text" id="input">
<input type="button" value="保存数据" onclick="saveStorage('input');">
<input type="button" value="读取数据" onclick="loadStorage('msg');">
</body>
</html>

三、实战简单的访客留言板

1. saveStorage函数
使用“new Date().getTime()”语句来获取当前的日期和时间戳,然后使用localStorage.setItem将获取到的时间戳作为键值,并将文本框中的数据作为键名进行保存。保存后使用loadStorage函数在页面上显示保存后的数据。
2. loadStorage函数

  • 这个函数取得保存后的所有数据,然后以表格的形式进行显示。
    两个重要的属性:
    1)、loadStorage.length
    所有保存在localStorage中的数据条数。
    2)、localStorage.key(index)
    想要得到的数据的索引号作为index参数传入,可以得到得到localStorage中与这个索引号对应的 数据。
    3)、clearStorage函数
    将保存在localStorage中的数据全部清除。
    用法:localStorage.clear();
<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>简单的网页留言板</title><script type="text/javascript" src="index.js"></script>
</head>
<body>
<h1>简单的网页留言板</h1>
<textarea id="dome" cols="60" rows="10"></textarea>
<br/>
<input type="button" value="保存" onclick="saveStorage('dome');">
<input type="button" value="清空" onclick="clearStorage('msg');">
<input type="button" value="读取" onclick="loadStorage('msg');">
<hr>
<p id="msg"></p>
</body>
</html>
function saveStorage(id){var data = document.getElementById(id).value;var time = new Date().getTime();localStorage.setItem(time,data);alert("数据已经被保存!");loadStorage('msg');
}
function loadStorage(id){var reselt = '<table border="1">';for(var i=0;i<localStorage.length;i++){var value = localStorage.getItem( localStorage.key(i));var date = new Date();date.setTime( localStorage.key(i));var datestr = date.toGMTString();reselt += '<tr><td>'+'这是第'+i+'条数据</td><td>'+ localStorage.getItem( localStorage.key(i))+'</td><td>'+datestr+'</td></tr>';}reselt += '</table>';var target = document.getElementById(id);target.innerHTML = reselt;
}
function clearStorage(id){localStorage.clear();alert("数据已经被成功删除!");loadStorage('msg');
}

网页内容显示:
在这里插入图片描述

http://www.lryc.cn/news/2418614.html

相关文章:

  • WinForm中常用控件
  • Discuz!教程之Discuz!X2.5版本安装一些插件显示500错误,或页面打不开的问题修复
  • 新浪微博开放平台深度历险
  • ipad air1 12.5.5 checkra1n 越狱+绕过ID
  • JAVA代码优化:记录日志
  • 不得不使用的百度快照优化seo技巧
  • Zblog主题模板:Zblog响应式CMS轻主题博客模板
  • Android 客户端起HttpServer NanoHttpd
  • SQLServer · BUG分析 · Agent 链接泄露分析(转载)
  • ibmt41 安装linux系统,哥我决意为IBM T41 装WIN7的决心已经到了全人类都无法阻止的地步!...
  • struts2 通配符的配置方式
  • sobel算子
  • mac/linux--终端光标的快捷键操作
  • 【转】nios II架构uclinux的过程
  • 10个免费视频通话网站与陌生人聊天
  • 计算机毕业设计 asp.net校园论坛 毕设
  • oracle数据库查看归档日志文件,oracle的归档模式 ORACLE数据库归档日志常用命令...
  • 如何获取中国电信、网通、铁通的最新ip地址段
  • 济南大学计算机二级成绩查询,济南大学泉城学院教务系统成绩查询登录入口 jwxt.ujnpl.com/jwglxt/,精英高考网...
  • Speak2Me:社会性线上英语交流系统
  • 数字万用表原理图,重点是第三种,电路详细
  • Discuz!二次开发必备知识——DZ程序变量
  • 安卓和IOS推广技巧汇总,app安卓推广、ios推广aso优化
  • Android各个版本特性简介
  • ARMLCD的驱动与触摸屏的中断
  • linux实践案例1-14
  • Connectify是一款很实用的免费软件。能把计算机变成一个无线路由器
  • 淘淘商城
  • 俄语网站大全
  • 从盘古开天辟地教你使用yolov5(一万六千字)