javascript获取事件源

javascript获取事件源

var node = evt.currentTarget || evt.srcElement;
var obj = event.srcElement ? event.srcElement : event.target;

 

加强版:

var eventTarget = event.srcElement || event.target || event.toElement|| event.currentTarget

 范例:

var event = window.event || ev;//兼容ie7 8
            cleanUpDefaultEvent(event);//清除默认事件
            var target2 = event.srcElement || event.target || event.toElement;
            var position = {x: 0, y: 0};
            var imgObj = target2;

 

getRelativePosition = helpers.getRelativePosition = function(evt){
			var mouseX, mouseY;
			var e = evt.originalEvent || evt,
				canvas = evt.currentTarget || evt.srcElement||evt.target||evt.toElement,
				boundingRect = canvas.getBoundingClientRect();

			if (e.touches){
				mouseX = e.touches[0].clientX - boundingRect.left;
				mouseY = e.touches[0].clientY - boundingRect.top;

			}
			else{
				mouseX = e.clientX - boundingRect.left;
				mouseY = e.clientY - boundingRect.top;
			}

			return {
				x : mouseX,
				y : mouseY
			};

		}

  

封装成为函数:

/***
 * 获取事件源
 * @param evt
 * @returns {*|Object}
 */
getSrcElement = function (evt) {
    var event = window.event || evt;//兼容ie7 8
    var eventTarget = event.srcElement || event.target || event.toElement || event.currentTarget;
    return eventTarget;
};

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值