浅谈Javascript事件对象

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

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就选中哪个元素 }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwgxzf.html