Event(下)

this指向
1.事件中this永远指向调用者。
2.在全局函数中this指向window对象
3.任何回调函数中的this
event
1.阻止:event.stopPropagation()
2.兼容:var e = e || window.event;
2.事件源的属性:target 兼容:var tar = e.target || e.srcElement;
3.e.target.nodeName == “BUTTON”//双引号里必须要大写,写的是标签
js是一个事件驱动的语言
事件
组成 :on + 事件名
1.onclick:点击事件
2.ondblclick
3.onmouseover:鼠标移入事件====优化版:onmouseenter
4.onmouseout:鼠标移出事件
5.onmousemove:鼠标移动事件—高频次触发事件

      元素事件==》只针对结果,不在乎过程
      1.onblur:失去焦点事件
      2.onfocus:获取焦点onblur
      3.oninput:写入内容时触发
      4.onchange:发生改变时触发-->常用在select
      5.onsubmit:提交是触发
             6.onmousedown:按下不抬起
             7.onmouseup:抬起事件


 事件对象
      1.时间对象里的状态类 ==timeStamp:记录打开的时间         
      2.数据类:
           获取当前事件的鼠标的位置
           事件发生在谁的身上

 坐标的获取
      1.offset:再谁身上发生的事件,那么就返回鼠标根据那个元素的定位
      2.client:根据游览器的边缘的来获取值
      3.screen:根据屏幕的边缘来获取值
      4.page:根据浏览器文档的顶部来进行定位

 键盘事件
      1.onkeydown:键盘按下
           正常按键:
                var keycode = e.keyCode || e.which;
                左上右下:37,38,39,40回车:13;
           组合按键:ctrlkey+shiftkey+altkey

      2.onkeyup:键盘抬起
      3.onkeypress:按下抬起算一次


 事件冒泡  
      1.数据(事件携带的信息)事件流;
      2.过程叫冒泡或捕获;
      3.阻止事件冒泡:

if(e.stopPropagation ){
e.stopPropagation()
}else{
e.cancelBubble = true;
}

 鼠标右击 :oncontextmenu
     取消默认事件:e.preventDefault()
       if(e.preventDefault ){e.preventDefault() }else{returnValue = false}    

 事件监听
      添加事件监听:addEventListener  上限=》10个
      删除事件监听:removeEventListener
         对象.addEventListener("click",fn)        

 事件监听的好处
      1.可以绑定多个事件处理函数
      2.不能被客户端轻易更改时间
      绑定在DOM对象上的事件obox.onclick= 事件处理函数
      DOM事件
      监听事件流,事件触发过程的监听
      DOM2事件绑定

  事件委托解决的问题
       1.事件绑定太多次,使用频率不高,就形成了事件冗余
       2.某些动态生成的元素也可以  
      3.把事件绑定给父级,父级触发事件的时候通过事件源(taeget)去判定,当前触发的事件的事件源是否符合规定。
          符合规定执行代码块
           不符合规定什么都不做
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值