9月11日事件

1事件

1.事件:

对某个元素的某种操作

2.事件对象:

当某个事件触发时产生的对象,就是事件对象。

注:event使用前提,必须有事件, 不同的对象产生的事件不同。

3.事件的三要素:

事件元素 , 事件类型 ,[事件对象];

4.事件对象的兼容:
document.onclick = function(evt(这个名字可以随便写)){
var  e  = evt ||event;
}

事件对象拥有该事件的相关属性和方法。

5.元素在页面移动

元素要在页面发生位置移动时,元素必须设置绝对定位

核心问题:元素的移动实质是元素绝对定位时的left和top进行值的改变;

2.鼠标事件对象的属性

1.坐标属性:page,client,offset

pageX / pageY 相对于整个文档顶部和左侧的坐标 常用

clientX / clientY 相对于局部窗口的左侧和顶部的坐标

offsetX /offsetY 相对于内部元素的距离左侧和顶部的坐标 常用于拖拽

2.onmousemove鼠标移动,元素跟随

3.键盘事件

1.onkeyUp:

用户释放某一个按键时发生

2.onkeyDown:

用户按下按键时发生

3.onkeyPress:

【注意】:keyPressctrl+回车返回值为10

用户按下按键,并且产生一个字符时发生(意思就是说按ctrl这样的按键没有效果的)

4.keyCode:

获取键盘按键值 字母 对应其ASCII值识别

【注意】ctrlKey:返回当事件被触发时,"Ctrl" 是否被按下,返回值为true or false

【注意】:键盘检测兼容写方法

var key = e.keyCode || e.which || e.charCode;

4.事件流

1.定义

当某个事件执行时,从子元素向父元素触发 或 从父元素向子元素触发 称为事件流

2.事件流的两种模式:
1.事件冒泡:

从子元素向父元素触发 —>当某个事件触发时,同样的事件会向父元素触发。

但并不是所有事件都会产生冒泡问题 onfocus (聚焦)onblur(取消焦点) onload(加载)不会产生冒泡问题

2.事件捕获

从父元素向子元素触发

5.阻止事件冒泡

e.stopPropagation(); 通过事件对象调用 阻止事件冒泡

e.cancelBubble = true;

e.stopPropagation ? e.stopPropagation():e.cancelBubble = true;

6.阻止浏览器默认事件

1.e.preventDefault?e.preventDefault():e.returnValue = false;

2.return false;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值