第六十七天 js动画
1.事件总结
鼠标事件
var box = document.querySelect('.box')
// 1.点击事件
box.onclick = function(){
console.log('单击');
};
// 2.双击事件(应用场景不广)
box.ondblclick = function(){
cosole.log("双击")
}
// 3.鼠标右键
box.oncintextment = function(){
console.log("右键了")
return false;
};
// 4.鼠标悬浮 | 移动 | 按下 | 抬起 | 离开
box.onmouseover = function(){
console.log("悬浮");
};
box.onmousemove = function(){
console.log("移动");
);
box.onmousedown = function(){
console.log("按下");
};
box.onmouseup = function(){
console.log("抬起")
};
box.onmouseout = function(){
console.log("离开");
};
over | out vs enter | leave
总结:
1.将子级与父级分开考虑,大家都有各自的悬浮离开事件,采用 over | out组合
2.将子级纳入父级考虑范围,也就是只有父级取相应悬浮离开事件,采用enter | leave组合
3.单独考虑一个盒子的悬浮离开事件,两套均可以
特性:
从父级移至子级,会触发out事件,紧接着触发子级的over事件,并可以冒泡给父级
从父级移至子级,leave事件并不会触发,它认为子级是属于父级的一部分,enter事件,也不 会再次触发
悬浮子级:
sub over => sup over 支持冒泡
sub enter =>sub enter 不支持冒泡
键盘事件
onkeydown: 键盘按下会触发,长按会持续触发
onkeup: j键盘抬起会触发
ev.keyCode:按下的键盘键的标号
其他事件
window.onload:页面加载完毕触发
window.onscroll | document.onscroll => window.scrollY(页面下滚距离):页面滚动触发
二.js盒模型
content:通过计算后样式获取
padding + content + content:box.offsetWidth | box.offsetHeight
绝对定位top|left:box.offsetTop | box.offsetLeft
三.动画
定时器
// 一次性定时器
var timeout = setTimeout(function(a,b){},1000,10,20); // 持续性定时器
var timer = setInterval(function(a,b){},1000,10,20); // 清除定时器
// clearTimeout | clearInterval // 结论:
// 1.定时器刽立即执行
// 2.一次定时器只能执行一次,持续性定时器不做清除的话会一直执行
// 3.声明定时器第一个参数为逻辑函数地址,第二个参数为事件间隔,第三个为逻辑函数所需要参数(可以为多个,一般省略)
// 4.清除定时器可以混用,本质就是清除创建定时器的数字标号,该编号激素是创建定时器的返回值 // 小技巧:如果页面中有n个定时器
var n = setTimeout(function(){},1);
for (var I = 1;i <n; I++){
clearInterval(i)
}
第六十七天 js动画的更多相关文章
- 前端(十六)—— JavaScript盒子模型、JS动画、DOM、BOM
JS盒子模型.JS动画.DOM.BOM 一.JS盒模型 1.width | height parseInt(getComputedStyle(ele, null).getPropertyValue(' ...
- 【06-23】js动画学习笔记01
<html> <head> <style> * { margin:0; padding:0; } #div1{ width:200px; height:200px; ...
- css动画与js动画的区别
CSS动画 优点: (1)浏览器可以对动画进行优化. 1. 浏览器使用与 requestAnimationFrame 类似的机制,requestAnimationFrame比起setTimeout ...
- CSS VS JS动画,哪个更快[译]
英文原文:https://davidwalsh.name/css-js-animation 原作者Julian Shapiro是Velocity.js的作者,Velocity.js是一个高效易用的js ...
- JS动画理论
动画(Animation) 动画意味着随着时间而变化,尤其指视觉上的变化,包括位置.形态等的变化.运动基本上表现为物体随时间,发生位置上的变化:形态基本表现为大小.颜色.透明度.形状等随时间的变化. ...
- css与 js动画 优缺点比较
我们经常面临一个抉择:到底使用JavaScript还是CSS动画,下面做一下对比 JS动画 缺点:(1)JavaScript在浏览器的主线程中运行,而主线程中还有其它需要运行的JavaScript脚本 ...
- [学习笔记]js动画实现方法,作用域,闭包
一,js动画基本都是依靠setInterval和setTimeout来实现 1,setInterval是间隔执行,过一段时间执行一次代码 setInterval(function(){},500);即 ...
- css3动画与js动画的一些理解
http://zencode.in/19.CSS-vs-JS%E5%8A%A8%E7%94%BB%EF%BC%9A%E8%B0%81%E6%9B%B4%E5%BF%AB%EF%BC%9F.html 首 ...
- Bootstrap入门(二十七)JS插件4:标签页
Bootstrap入门(二十七)JS插件4:标签页 标签页的切换可以带动内容的变化 首先我们引入CSS文件 <link href="bootstrap.min.css" re ...
随机推荐
- [笔记]原生JS实现的DOM操作笔记
原生JS实现的DOM一系列操作参考: 原生JavaScript封装DOM库 siblings: 原生JS-查找相邻的元素-siblings方法的实现 addClass,removeClass,hasC ...
- 在虚拟机中搭建qduoj(二)——安装OJ
在上一章中,我们已经做好了准备工作,现在,正式开始搭建OJ. 可以先看看官方文档: https://github.com/QingdaoU/OnlineJudgeDeploy/tree/2.0 运行p ...
- HTML和CSS前端教程03-CSS文本样式
目录 1.CSS颜色-建议就用十六进制 2.CSS长度的度量单位-建议就用px 3.CSS文本样式 3.1. 字体属性 3.1. 文本样式 1.CSS颜色-建议就用十六进制 p{ color: #ff ...
- 2018年终总结之AI领域开源框架汇总
2018年终总结之AI领域开源框架汇总 [稍显活跃的第一季度] 2018.3.04——OpenAI公布 “后见之明经验复现(Hindsight Experience Reply, HER)”的开源算法 ...
- Arcgis瓦片--js客户端加载
接上篇博客,下载好arcgis格式的瓦片数据以后,需要用js客户端在前端加载出来.这里介绍两种方案: 1.使用超图iServer将瓦片发布成rest地图服务,或者arcgis地图服务,客户端直接加载 ...
- linux 大小写转化
(1)sed: cat file | sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' (2)tr: cat file | ...
- 从0开始的Python学习007函数&函数柯里化
简介 函数是可以重用的程序段.首先这段代码有一个名字,然后你可以在你的程序的任何地方使用这个名称来调用这个程序段.这个就是函数调用,在之前的学习中我们已经使用了很多的内置函数像type().range ...
- jest 自动化测试
概述 jest 是 facebook 开源的,用来进行单元测试的框架,可以测试 javascipt 和 react. 单元测试各种好处已经被说烂了,这里就不多扯了.重点要说的是,使用 jest, 可以 ...
- html+css 制作简易导航栏
二话不说直接上代码(萌新:实在也没什么好说的) <!DOCTYPE html> <html lang="en" xmlns="http://www.w3 ...
- 【Python 04】Python开发环境概述
1.Python概述 Python是一种计算机程序设计语言,一个python环境中需要有一个解释器和一个包集合. (1)Python解释器 使用python语言编写程序之前需要下载一个python解释 ...