欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

浅谈Javascript事件对象

程序员文章站 2023-11-03 12:04:52
如果是事件处理函数绑定的函数,浏览器会默认传递一个参数,而这个参数就是事件对象。 document.onclick = function() { alert(...

如果是事件处理函数绑定的函数,浏览器会默认传递一个参数,而这个参数就是事件对象。

document.onclick = function() {
 alert(arguments.length); //1
}

因为arguments[0]这样使用这个参数比较麻烦,所以我们可以传递一个参数evt来进行使用。

document.onmouseup = function(evt) {
 var e = evt || window.event;
 alert(e.button); //0为鼠标左键,1为滚轮,2为右键
 //基于浏览器可视区左上角的位置
 alert(e.clientx + ',' + e.clienty);
 //机器的分辨率
 alert(window.screen.width + ',' + window.screen.height);
 // 离屏幕左上角的位置
 alert(e.screenx + ',' + e.screeny);
}
//侦测按键
document.onclick = function(evt) {
 alert(getkey(evt));
}
function getkey(evt) {
 var e = evt || window.event;
 var keys = [];
 if (e.shiftkey) {
 keys.push('shift');
 }
 if (e.ctrlkey) {
 keys.push('ctrl');
 }
 if (e.altkey) {
 keys.push('alt');
 }
 return keys;
}
//键盘事件,keydown是按下任意键,keyup是弹起任意键,keypress按下字符键触发
//键码:键盘上任意键,全兼容
//字符编码:可以输出的字符的键,ie不兼容
document.onkeydown=function(evt){
 var e = evt || window.event;
 alert(e.keycode); //keycode返回键码
 }
document.onkeypress = function(evt) {
 var e = evt || window.event;
 alert(e.charcode);  //charcode返回字符键码
 }
document.onclick = function(evt) {
 var e = evt || window.event;
 alert(e.target.innerhtml);  //点到哪里target就选中哪个元素
 }

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!