浅谈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就选中哪个元素
}
以上是 浅谈Javascript事件对象 的全部内容, 来源链接: utcz.com/z/353222.html