HTML5新特性-- -定时器

一、定时器:一次性定时器/周期性定时器

   #requestAnimationFrame 智能定时器

   #此定时器主要使用范围:动画和游戏中

   特点:

   setTimeout(fn,500);

   setInterval(fn,500); 周期性调用fn函数间隔500ms

   二台电脑:  新 12ms   旧 600ms

   解决方案:requestAnimationFrame 智能计算当前浏览器效率

   11ms,计算600ms 按照不同浏览器设置间隔时间

   #实现功能平滑

   #使用方法  requestAnimationFrame == setTimeout

   标准语法

   requestAnimationFrame(fn)

   如何周期调用定时器完成游戏

   function f1(){

     requestAnimationFrame(f1);

     ....

     ....

   }

   f1();

 

 

 二、HTML5新特性-svg--echarts(重点)

   

 

canvas

svg

绘图类型

2D位图

2D矢量图

如何绘制

使用js代码

标签

事件绑定

只能绑定在画布

每个图形都可绑定事件

应用场景

网页特效;游戏

地图

   svg 图形创建流程

   (1)创建画布标签

   <svg id="s3" width="500" height="400">

      ...

   </svg>

   (2)添加圆环标签

   <circle cx="" cy="" r="" fill="" stroke=""></circle>

   cx,cy  圆心坐标

   r     半径

   fill    填充

   stroke 描边

   

通过js在svg画布上动态创建元素

(1)字符串拼接方式来创建元素

  var str = "<circle></circle>";

  svg.innerHTML = str;

(2)通过创建对象方式

  var c = document.createElementNS(

   "http://www.w3.org/2000/svg",    #指定元素svg标准

   "circle");

  svg.appendChild(c);

(3)为元素添加属性获取属性

  设置与获取属性只能采用核心DOM方法不能使用HTML DOM

  #核心DOM circle.setAttribute("属性名",值)

      var 值=circle.getAttribute("属性名");

  #HTML dom   circle.name = value    

                       var name = circle.name

  

   

 三、讲解创建画布标签--直线

   <line x1="" y1="" x2="" y2="" stroke-width="" stroke=""

   stroke-linecap=""></line>

   x1="" y1=""  起点坐标

   x2="" y2=""  终点坐标

   stroke-width="" 边线宽度 

   stroke=""      边线样式 

   stroke-linecap="" 边线顶端样式 round 圆角

 

posted @ 2020-03-03 23:04  平凡人的普通修仙之路  阅读(1810)  评论(0编辑  收藏  举报