`
xiaotongeye
  • 浏览: 19210 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

HTML5+javascript 动画基础(阅读笔记)

 
阅读更多
1.1.使用requestAnimationFrame的动画循环
(function drawFrame () {
  window.requestAnimationFrame(drawFrame,canvas);
  //animation code...
}());


1.2交互事件
1.2.1 鼠标常见的一些事件:
● mousedown
● mouseup
● click
● dblclick
● mousewheel
● mousemove
● mouseover
● mouseout
1.2.2 触摸事件
● touchstart
● touchend
● touchmove

1.3 获取位置
1.3.1 鼠标位置
鼠标事件的两个属性确定鼠标的当前位置:pageX和pageY。兼容属性clientX与clientY。
封装获取鼠标位值到函数utils.captureMouse中
utils.captureMouse = function(element){
  var mouse = {x:0,y:0};
  element.addEventListener('mousemove',function(event){
    var x,y;
    if(event.pageX || event.pageY){
      x = event.pageX;
      y = event.pageY;
    }else{
      x = event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
      y = event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
    }
    x -= element.offsetLeft;
    y -= element.offsetTop;
   
    mouse.x = x;
    mouse.y = y;
  },false);
  return mouse;
}

1.3.2 触摸位置
utils.captureTouch = function(element){
  var touch = {x:null,y:null,isPressed:false};
  element.addEventListener('touchstart',function(event){
    touch.idPressed = true;
  },false);
  element.addEventListener('touchend',function(event)){
    touch.isPressed = false;
    touch.x = null;
    touch.y = null;
  }
  element.addEventListener('touchmove',function(event){
    var x,y,touch_event = event.touches[0];//first touch
    if(touch_event.pageX || touch_event.pageY){
      x = touch_event.pageX;
      y = touch_event.pageY;
    }else{
      x = touch_event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
      y = touch_event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
    }
    x -= offsetLeft;
    y -= offsetTop;
    touch.x = x;
    touch.y = y;
  },false);
  return touch;
};

2.1弧度与角度的转换
radians = degrees * Math.PI / 180;
degrees = radians * 180 / Math.PI;

分享到:
评论

相关推荐

    韩顺平html+css+javascript笔记完整版

    提供的压缩包文件中包含了`javascript学习笔记.docx`、`html+css+javascript学习笔记.docx`等文档,这些都是宝贵的自学资料。它们可能详细记录了HTML标签的使用、CSS选择器及样式规则、JavaScript语法和常见函数,...

    前端HTML5+CSS+JavaScript学习笔记.docx

    HTML5是现代网页开发的基础,它包含了众多改进和新增的元素。HTML标签是构建网页结构的关键,例如`<html>`标签作为整个文档的根元素,它包含`<head>`和`<body>`两个主要部分。`<!DOCTYPE>`声明用于指示文档使用的...

    Web+HTML+JavaScript+Ajax学习笔记

    "Web+HTML+JavaScript+Ajax学习笔记"这个主题涵盖了许多Web开发的核心概念和技术。通过深入学习这些笔记,你将能够创建动态、交互式的Web应用,并理解前后端如何协同工作。同时,持续学习和掌握新的Web技术,如框架...

    韩顺平 html+css+javascript

    韩顺平老师的"html+css+javascript"课程,是一套全面讲解这三个关键技术的教程。通过这个课程,学习者可以系统地了解并掌握创建现代网页所需的基本技能。 在"html笔记.docx"中,你可能会学到如何创建基本的HTML文档...

    html+css+javascript笔记完整版

    "html+css+javascript笔记完整版"是一份全面的前端学习资源,涵盖了从基础到进阶的HTML、CSS和JavaScript知识。通过深入学习,你可以掌握创建交互式、响应式网页所需的所有技能,并为进一步探索前端开发的广阔领域...

    html+css+javascript

    而"学员优秀笔记html+css.pdf"可能讲解了HTML5的新特性、CSS选择器、布局模型(如Flexbox和Grid)、响应式设计以及CSS动画等主题。 总的来说,HTML、CSS和JavaScript是构建动态、交互式网页的关键技术,它们的深入...

    HTML5+CSS3从入门到精通.zip

    HTML5和CSS3是现代网页开发的基石,它们极大地提升了网页设计的灵活性和表现力。在JavaWeb前端开发中,熟练掌握这两项技术...通过阅读"HTML5+CSS3从入门到精通1.pdf"这份文档,你可以系统地学习并掌握这些关键知识点。

    HTML+CSS+JS复习笔记

    这些复习笔记将帮助你巩固HTML、CSS和JavaScript的基础知识,并通过实践练习加深理解。通过记事本打开查看源码,你可以直接查看和编辑代码,实践是学习的最佳方式。同时,结合标签中的"html css javasc",这些笔记将...

    JS+JQuery+CSS基础笔记

    【JavaScript基础】 ...这些笔记将帮助初学者理解JavaScript、jQuery和CSS的基础知识,通过学习和实践,可以快速掌握Web前端开发的基本技能。在实际项目中,可以结合这三者,创建交互性强、视觉效果丰富的网页。

    传智播客-PHP基础视频_html+css+js笔记

    【HTML基础】 HTML(HyperText Markup Language)是用于创建网页的标准标记语言。HTML由一系列元素组成,这些元素通过标签表示。HTML5是当前最新的版本,增加了许多新特性,如语义化标签、离线存储、音频和视频支持...

    web前端零基础html5 +css3+前端项目视频教程笔记、源码第一章初识HTML

    HTML5和CSS3是现代Web前端开发的基础,它们共同构成了网页的结构和样式。本教程旨在帮助零基础的学员从头开始学习这两种关键技术,并通过实际项目加深理解。 HTML(HyperText Markup Language)是用于创建网页内容...

    css+html+js笔记

    "html笔记.docx"可能讲解了HTML标签的使用、HTML5新特性、语义化标签等;"div+css笔记.docx"则可能详细介绍了CSS选择器、布局技术(如浮动、定位、Flexbox、Grid)、响应式设计等方面的知识。通过学习这些笔记,你...

    韩顺平 html+css+JS完整笔记

    【HTML笔记】 ...这些笔记详细地梳理了HTML、CSS和JavaScript的基础知识,适合初学者系统学习,也对进阶开发者巩固基础有所帮助。通过深入学习和实践,可以提升网页开发技能,创建更具交互性和美感的网页。

    html5+css3笔记html5+css3笔记

    4. **动画和过渡**:CSS3的transition和animation属性可以创建平滑的动态效果,无需JavaScript即可实现元素状态的转变。 5. **响应式设计**:媒体查询(media queries)是CSS3中的重要特性,它允许根据设备的特性...

    HTML5+Canvas打开红包获得流量动画代码.zip

    在这个“HTML5+Canvas打开红包获得流量动画代码”项目中,我们可以深入探讨以下几个关键知识点: 1. HTML5:HTML5是超文本标记语言的第五个版本,它引入了许多新特性,如语义化标签(如、等)、离线存储(离线Web...

    HTML5+CSS3 markdown笔记

    3. **拖放功能**:HTML5提供了拖放API,允许用户在网页上直接拖放元素,无需JavaScript插件。 4. **多媒体支持**:内建的`<audio>`和`<video>`标签,使得音频和视频播放无需Flash等第三方插件。 5. **Canvas画布**...

    黑马基础学习html+css课程笔记和案例

    在“黑马基础学习html+css课程笔记和案例”中,你可以找到学习这两门语言的详细资源,包括理论知识和实践案例。 HTML是网页内容的结构标记语言,它定义了网页的基本元素,如标题、段落、链接、图片等。学习HTML首先...

Global site tag (gtag.js) - Google Analytics