第六十七天 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 ...
随机推荐
- Selenium自动化 Xpath-元素定位
最近在教妹子做自动化测试,妹子基础差,于是想到很多初学自动化的朋友们学习的知识没有规范化,信息太过杂乱.所以,本文整理了一些自动化元素定位方式: 这次将讲Xpath定位! 什么是Xpath: Path ...
- WLST Hangs Up Because of Java VM ClassLoader Deadlock
APPLIES TO: Oracle WebLogic Server - Version 10.0 to 10.3.6Information in this document applies to a ...
- Vsphere 回收未消使用的磁盘空间
下载sdelete.exe 执行 sdelete.exe -z E: ,然后又恢复为原可用空间 关机 SHH进入物理主机,找到对应的虚机文件 执行vmkfstools -K test-Win200 ...
- 命令行以及Python交互模式下python程序的编写
一.命令行模式 在Windows开始菜单选择“命令提示符”,就进入到命令行模式,它的提示符类似C:\>: 二.Python交互模式 在命令行模式下敲命令python,就看到类似如下的一堆文本输出 ...
- ORA-00904: "WMSYS"."WM_CONCAT": invalid identifier
同事玩Docker,在Docker里面启了一个Oracle 10g Express版本,在测试过程中遇到了ORA-00904: "WMSYS"."WM_CONCAT&qu ...
- 系统重装助手教你如何在Microsoft Edge中恢复“关闭所有选项卡”警告
在Microsoft Edge中,当您打开多个选项卡时,浏览器将显示“您要关闭所有选项卡吗?” 警告,以防止您意外关闭重要标签. 通常,在没有第二个想法的情况下,您会立即禁用此功能,检查提示中的“始终 ...
- 微信小程序上手项目
小程序刚发布的时候何其风光,可能大家习惯性的对微信给予了过高的期待,加上一开始小程序的功能确实很孱弱,扫了很多人的兴. 经过最开始的热闹和喧嚣,如今微信小程序热度大减,但随着不断迭代,如今小程序的功能 ...
- Extjs 改变grid行的背景颜色
## Ext grid 改变行背景色 Ext.util.CSS.createStyleSheet('.ts {background:#9a9a9bc2;}');//单独创建css样式 { xtype: ...
- 使用time+dd测试硬盘读写速度
命令:time dd if=/dev/zero bs=1M count=2048 of=direct_2G 此命令为在当前目录下新建一个2G的文件 Demo如下: 写速度: time dd if= ...
- Java 8 新特性7-方法引用、继承
(原) 方法引用: 方法引用有4种: 1.静态方法引用:类名::静态方法名 在java中,对集合的排序,我们常用java提供的 Collections.sort(List<T> list, ...