事件(部分)

1.事件对象
* 事件:对某个元素的某种操作
* 事件对象:当某个事件触发时产生的对象,就是事件对象
* event使用前提,必须有事件
              不同的对象产生的事件不同。
* 事件对象的兼容性(通常一个事件如果需要用到事件对象,直接无脑写兼容):    var e = evt || event;
2.鼠标事件对象的属性
  • 坐标属性
  • pageX / pageY 相对于整个文档顶部和左侧的坐标(常用)
  • clientX / clientY 相对于局部窗口的左侧和顶部的坐标(比较少用)
  • offsetX / offsetY 相对于内部元素的距离左侧和顶部的坐标 常用于拖拽
  document.onmousemove = function(evt){
        //获取实
        var e = evt || event;
        var oImg = document.getElementById("myimg");
        //操作图片X和Y的位置
        oImg.style.left = e.pageX - oImg.offsetWidth/2 + "px";
        oImg.style.top = e.pageY -oImg.offsetHeight/2 + "px";
    }

3.键盘事件对象
  • onkeyup: 用户释放某一个按键时发生

  • onkeydown: 用户按下按键时发生,任何一个按键即可发生事件

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

  • 事件对象的属性:

  • keyCode: 获取键盘按键值 字母 对应其ASCII值识别
  • A:65 a:97 0:48 回车:13
    keyPress 的ctrl+回车返回值为10
  • ctrlKey:返回当事件被触发时,“Ctrl” 是否被按下,返回值为true or false
    键盘检测兼容写方法
  • var key = e.keyCode || e.which || e.charCode;
//键盘事件源都是document
	//键盘抬起的时间点触发
	document.onkeyup = function(){
		console.log("heihei");
	}
	//键盘落下的时间点触发
	document.onkeydown = function(){
		console.log("heihei");
	}
	//生成一个字符串触发
	document.onkeypress = function(){
		console.log("heihei");
	}

	
	
	//事件对象
	document.onkeypress = function(evt){
		var e = evt || event;
		//65 97 48字符0 32空格 13回车
		//keyCode:获取按下字符的ASC码值
		//兼容写法
		var key = e.keyCode || e.which || e.charCode;
		console.log(key);
		
		//ctrl + 回车  10
		if(key == 10 && e.ctrlKey){
			console.log("发送");
		}
		
		//判断ctrl是否被按下
		console.log(e.ctrlKey);
		
		// console.log(e.keyCode);
		// console.log(e.which);
		// console.log(e.charCode);
	}
	
	//console.log(String.fromCharCode(98));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值