纯js实现画一棵树的示例


Posted in Javascript onSeptember 05, 2017

用纯js画一棵树。思路:

1、一棵树的图片,作为页面背景;

2、通过html5中的canvas画布进行遮罩;

3、定时每隔10ms,从下往上清除1px的遮罩;

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>My JS tree</title>
<style>
body {
  width: 1000px;
  height: 570px;
  background-image: url(image/tree.png);
  background-size: 1000px, 570px;
  background-repeat: no-repeat;
  margin-top: 0px;
  margin-bottom: 0px;
}
</style>
</head>

<body>
  <canvas id="mycanvas" width="1000px" height="570px"></canvas>

  <script>
    var c = document.getElementById("mycanvas");
    var ctx = c.getContext("2d");

    ctx.fillStyle = "#ffffff";
    ctx.fillRect(0, 0, c.width, c.height);//矩形遮住背景图像

    var y = c.height;

    window.setInterval(function() {
      if (y > 2) {
        ctx.clearRect(0, y - 1, c.width, y);
        y = y - 1;
      } else {
        window.clearInterval(this);//清除定时
        ctx.clearRect(0, 0, c.width, c.height);
      }
    }, 10);//每隔10ms清除1px的遮照
  </script>
</body>
</html>

画的过程如下:

纯js实现画一棵树的示例

以上这篇纯js实现画一棵树的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
40个有创意的jQuery图片、内容滑动及弹出插件收藏集之一
Dec 31 Javascript
jQuery的控件及事件(输入控件及回车事件)使用示例
Jul 25 Javascript
完美兼容多浏览器的js判断图片路径代码汇总
Apr 17 Javascript
JavaScript实现点击单元格改变背景色的方法
Feb 12 Javascript
浅谈JS原型对象和原型链
Mar 02 Javascript
javascript中Number的方法小结
Nov 21 Javascript
ES6使用let命令更简单的实现块级作用域实例分析
Mar 31 Javascript
node跨域请求方法小结
Aug 25 Javascript
VUEJS 2.0 子组件访问/调用父组件的实例
Feb 10 Javascript
微信小程序中如何计算距离某个节日还有多少天
Jul 15 Javascript
解决微信授权成功后点击按返回键出现空白页和报错的问题
Jun 08 Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
Aug 04 Javascript
javascript基础进阶_深入剖析执行环境及作用域链
Sep 05 #Javascript
基于ES6 Array.of的用法(实例讲解)
Sep 05 #Javascript
对于Javascript 执行上下文的全面了解
Sep 05 #Javascript
JS一个简单的注册页面实例
Sep 05 #Javascript
基于react组件之间的参数传递(详解)
Sep 05 #Javascript
zTree获取当前节点的下一级子节点数实例
Sep 05 #Javascript
JavaScript基础进阶之数组方法总结(推荐)
Sep 04 #Javascript
You might like
NOD32 v2.70.32 简体中文封装版 提供下载了
2007/02/27 PHP
PHPMailer邮件发送的实现代码
2013/05/04 PHP
解析yahoo邮件用phpmailer发送的实例
2013/06/24 PHP
PHP实现中文圆形印章特效
2015/06/19 PHP
php实现的生成排列算法示例
2019/07/25 PHP
PHP序列化和反序列化深度剖析实例讲解
2020/12/29 PHP
实例:用 JavaScript 来操作字符串(一些字符串函数)
2007/02/15 Javascript
疯掉了,尽然有js写的操作系统
2007/04/23 Javascript
JavaScript下通过的XMLHttpRequest发送请求的代码
2011/06/28 Javascript
js动态创建上传表单通过iframe模拟Ajax实现无刷新
2014/02/20 Javascript
JS获取文本框,下拉框,单选框的值的简单实例
2014/02/26 Javascript
深入理解JavaScript系列(35):设计模式之迭代器模式详解
2015/03/03 Javascript
JQuery标签页效果的两个实例讲解(4)
2015/09/17 Javascript
基于angularjs实现图片放大镜效果
2016/08/31 Javascript
详解vue.js的devtools安装
2017/05/26 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
webpack搭建vue 项目的步骤
2017/12/27 Javascript
js回到页面指定位置的三种方式
2020/12/17 Javascript
[02:20]DOTA2亚洲邀请赛 IG战队出场宣传片
2015/02/07 DOTA
[01:52]深扒TI7聊天轮盘语音出处7
2017/05/11 DOTA
python基于multiprocessing的多进程创建方法
2015/06/04 Python
Python使用filetype精确判断文件类型
2017/07/02 Python
解决phantomjs截图失败,phantom.exit位置的问题
2018/05/17 Python
Django组件之cookie与session的使用方法
2019/01/10 Python
python+selenium select下拉选择框定位处理方法
2019/08/24 Python
Python通过文本和图片生成词云图
2020/05/21 Python
TensorFlow Autodiff自动微分详解
2020/07/06 Python
Python绘制数码晶体管日期
2021/02/19 Python
含精油的天然有机化妆品:Indemne
2019/08/27 全球购物
物流仓管员工作职责
2014/01/06 职场文书
小小的船教学反思
2014/02/21 职场文书
电子商务专业自荐信
2014/06/02 职场文书
户籍证明格式
2014/09/15 职场文书
电影开国大典观后感
2015/06/04 职场文书
伊索寓言读书笔记
2015/06/30 职场文书
中学生打架检讨书之500字
2019/08/06 职场文书