事件对象

var el = document.getElementById("one")
var fn = function(e){
	console.log(e)
}
fn()
el.onclick = fn;

浏览器监测到事件发生时,会调用事件的注册函数

浏览器在调用注册函数的时候,会给该函数传递一个参数。

这个参数是一个对象,对象中详细的记录了和本次事件相关的一切信息。

鼠标事件

  • mousedown
  • mouseup
  • click
  • dbclick
  • mouseover
  • mouseout
  • mousemove 传入参数e会在console.log添加mouseEvent ## 鼠标事件 事件对象中的一些属性

  • shiftKey
  • ctrlKey
  • altKey ```javascript el.onclick=(function(){ var flag=true return function(e){ if(e.shiftKey&&e.altKey&&e.ctrlKey){ el.className=flag?’da selected’:’da’ flag=!flag; } } })()

```

键盘和表单事件

  • keydown//除了被操作系统拦截的按键。都会触发.
  • keyup
  • keypress//只能在按下可能打印字符的按键时出发.

键盘事件 事件对象

  • shiftKey
  • ctrlKey
  • altKey
  • keyCode//string.fromCharCode() e.keyCode 会返回案件的unicode码 在键盘事件中按下字母的 e.keyCode永远是大写字母的unicode码

表单事件

  • blur
  • focus
  • change i### 从表单中收集值

##闭包 >函数在定义的时候,会记录下自己可见范围内的所有变量,形成一个链条, >叫做函数的作用域链,函数调用时,如果在函数内部对变量引用,函数会在自己的用>域中由远及近的去寻找这个变量 * clientX * clientY

  • offsetX
  • offsetY