Event事件

一、焦点

obj.focus()给指定的元素设置焦点

obj.blur() 取消指定元素的焦点

obj.select()选择指定元素里的文本内容 用于分享内容之类的


二、Event: 事件对象; 当一个事件发生的时候,和当前这个对象发生的事件有关的一些详细信息都会被临时保存到一个指定的地方-Event对象,供我们需要的时候调用.

事件对象必须在一个事件调用的函数里面使用才有内容

事件函数: 事件调用的函数

兼容性: var ev = ev || event;

IE/chrome: event是一个内置全局对象

FF/标准下: 事件对象是通过事件函数第一个参数传入

如果一个函数是被事件调用的,这个函数定义的第一个参数就是事件对象

clientX[Y]:当一个事件发生,鼠标到页面可视区的距离


三、事件冒泡: 当一个元素接收到事件的时候,会把它接收到的所有事件传播给它的父级,一直到顶层window

阻止冒泡:当前要阻止冒泡的事件函数中调用 event.cancelBubble = true;


四、事件捕获:给一个对象的的同一个事件绑定多个不同的函数

 IE:obj.attachEvent(事件名称,事件函数);

1.没有捕获

2.事件名称有'on'

3.事件函数执行的顺序:标准IE->正序非标准IE->倒序

4.this指向window

标准:obj.addEventListener(事件名称,事件函数,是否捕获); 默认是false   

false:冒泡  告诉元素,如果有一个出去的事件触发了你,你就去执行XX函数

true:捕获    告诉元素,如果有一个进去的事件触发了你,你就去执行XX函数

1.有捕获

2.事件名称没有'on'

3.事件函数执行的顺序:正序

4.this指向触发该事件的对象

call:函数下的一个方法,call方法第一个参数可以改变函数执行过程中的内部this指向,call方法第二个参数开始就是原来函数的参数列表.


五、事件函数取消

1)普通事件取消 document.onclick = null;

2)绑定事件取消 IE:obj.detachEvent(事件名称,事件函数);

标准:obj.removeEventListener(事件名称,事件函数,是否捕获);

键盘事件: onkeydown:当键盘按键按下的时候触发

onkeyup:当键盘按键抬起的时候触发

event.keyCode:数字类型   键盘按键的键值

    ctrlKey,shiftKey,altKey 布尔值

    当一个事件发生的时候,如果ctrl   ||  shift  ||  alt 是按下的状态,返回true,否则返回false

//键盘控制div移动

var oDiv = document.getElementById('box');

document.onkeydown = function(ev){

var ev = ev || event;

switch(ev.keyCode){

case 37:

oDiv.style.left = oDiv.offsetLeft -10 + 'px';

break;

case 38:

oDIv.style.top = oDiv.offsetTop -10 + 'px';

break;

case 39:

oDiv.style.right = oDiv.offsetRight +10 + 'px';

break;

case 40:

oDiv.style.top= oDiv.offsetTop + 10 + 'px';

break;

}

}


六、事件默认事件:当一个事件发生的时候浏览器会默认做的事情

阻止默认事件:在这个事件的处理函数中使用return false;

  document.onkeydown = function(){ return false;}

 oncontextmenu:右键菜单事件(环境菜单)

自定义右键菜单

var oDiv = document.getElementById('box');

document.oncontextmenu = function(ev){

var ev = ev || event;

oDiv.style.display = 'block';

oDiv.style.left = ev.clientX + 'px';

oDiv.style.top = ev.clientY + 'px'l;

return false;

}

document.onclick = function(){

oDiv.style.display = 'none';

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于event事件触发控制是一种常见的编程方法,它允许我们在特定的事件发生时执行代码或触发一些动作。在这种控制下,我们可以定义需要监听的事件,并通过设置相应的回调函数来处理这些事件事件可以是用户的操作,比如点击按钮、键盘输入等;也可以是系统的反应,比如网络请求完成、定时器触发等。在程序中,我们通过注册事件处理函数来捕获这些事件,并在事件发生时执行相应的逻辑或操作。 基于event事件触发控制的编程方式具有以下几个优点: 1. 高效灵活:通过监听事件并异步执行响应函数,可以充分利用计算资源,并提高程序的响应速度和并发能力。 2. 模块化设计:事件触发控制可以帮助我们将程序分解为更小的模块,每个模块专注于处理特定的事件,提高代码的可维护性和可扩展性。 3. 松耦合:通过事件触发控制,事件产生的模块和事件处理的模块可以解耦,降低了模块之间的依赖性,提高了代码的可测试性和重用性。 在具体实现中,我们可以使用各种编程语言或框架提供的事件机制来实现event事件触发控制。比如在JavaScript中,可以使用addEventListener函数来监听DOM事件;在Node.js中,可以使用EventEmitter对象来实现自定义事件的触发和处理。同时,许多GUI编程工具和框架也提供了强大的事件触发控制功能,用于实现用户界面的交互和响应。 总之,基于event事件触发控制是一种强大的编程方法,能够帮助我们设计和实现灵活、高效的程序。通过合理地使用事件和回调函数,我们可以充分利用事件的特性,提升程序的性能和用户体验。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值