纯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 相关文章推荐
复制小说文本时出现的随机乱码的去除方法
Sep 07 Javascript
25个优雅的jQuery Tooltip插件推荐
May 25 Javascript
jquery提交form表单时禁止重复提交的方法
Feb 13 Javascript
JS+CSS模拟可以无刷新显示内容的留言板实例
Mar 03 Javascript
javascript模拟命名空间
Apr 17 Javascript
javascript实现无缝上下滚动特效
Dec 16 Javascript
js事件驱动机制 浏览器兼容处理方法
Jul 23 Javascript
详解js界面跳转与值传递
Nov 22 Javascript
详解vue 模拟后台数据(加载本地json文件)调试
Aug 25 Javascript
解决vue-quill-editor上传内容由于图片是base64的导致字符太长的问题
Aug 20 Javascript
Vue CL3 配置路径别名详解
May 30 Javascript
简单学习5种处理Vue.js异常的方法
Jun 17 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
php数组合并array_merge()函数使用注意事项
2014/06/19 PHP
thinkPHP5.0框架开发规范简介
2017/03/25 PHP
基于jquery的横向滚动条(滑动条)
2011/02/24 Javascript
JqGrid web打印实现代码
2011/05/31 Javascript
基于jquery的使ListNav兼容中文首字拼音排序的实现代码
2011/07/10 Javascript
JQquery的一些使用心得分享
2012/08/01 Javascript
js点击出现悬浮窗效果不使用JQuery插件
2014/01/20 Javascript
javascript实现信息增删改查的方法
2015/07/25 Javascript
纯javascript代码实现计算器功能(三种方法)
2015/09/07 Javascript
js仿百度登录页实现拖动窗口效果
2016/03/11 Javascript
jQuery.form插件的使用及跨域异步上传文件
2016/04/27 Javascript
BootStrap智能表单实战系列(七)验证的支持
2016/06/13 Javascript
BootStrap实现带关闭按钮功能
2017/02/15 Javascript
编写更好的JavaScript条件式和匹配条件的技巧(小结)
2019/06/27 Javascript
[01:21]2018DOTA2亚洲邀请赛4.5采访 打DOTA2也能有女朋友?
2018/04/06 DOTA
[01:04:02]DOTA2-DPC中国联赛 正赛 Elephant vs IG BO3 第二场 1月24日
2021/03/11 DOTA
[19:54]夜魇凡尔赛茶话会 第一期02:看图识人
2021/03/11 DOTA
利用Python和OpenCV库将URL转换为OpenCV格式的方法
2015/03/27 Python
Python 保存矩阵为Excel的实现方法
2019/01/28 Python
Django之创建引擎索引报错及解决详解
2019/07/17 Python
Django 多表关联 存储 使用方法详解 ManyToManyField save
2019/08/09 Python
用Python去除图像的黑色或白色背景实例
2019/12/12 Python
使用Pandas将inf, nan转化成特定的值
2019/12/19 Python
python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)
2020/04/08 Python
基于Modernizr 让网站进行优雅降级的分析
2013/04/21 HTML / CSS
有机童装:Toby Tiger
2018/05/23 全球购物
我的五年职业生涯规划
2014/01/23 职场文书
飘柔洗发水广告词
2014/03/14 职场文书
积极贯彻学习两会精神总结
2014/03/17 职场文书
2014年商场国庆节活动策划方案
2014/09/16 职场文书
2014年打非治违工作总结
2014/11/13 职场文书
拾金不昧表扬信
2015/01/16 职场文书
销售经理岗位职责
2015/01/31 职场文书
师德承诺书2015
2015/04/28 职场文书
狼牙山五壮士观后感
2015/06/09 职场文书
Python并发编程实例教程之线程的玩法
2021/06/20 Python