fireEvent

本文介绍了一种在JavaScript中实现事件绑定与触发的方法。通过自定义函数addEvent和fireEvent,可以为DOM元素添加事件监听器,并手动触发这些事件。示例展示了如何使一个元素点击时触发另一个元素的点击事件。
摘要由CSDN通过智能技术生成

摘自果果的js库:

         function addEvent(el,type,fn,capture){
		if(el.addEventListener){
			el.addEventListener(type,fn,capture);
		}else if(el.attachEvent){
			el.attachEvent('on'+type,function(){
				fn.call(el);
			});
		}else{
			el['on'+type] = fn;
		}
	}
	function fireEvent(el,type){
		if(document.createEventObject){
			return el.fireEvent('on'+type);
		}else{
			var e = document.createEvent('HTMLEvents');
			e.initEvent(type,true,true);
			return !el.dispatchEvent(e);
		}
	}
	var a = document.getElementById('a'),b = document.getElementById('b');
	addEvent(a,'click',function(){alert('a has been clicked')});
	addEvent(a,'mouseover',function(){alert('mouseover')});
	addEvent(b,'click',function(){fireEvent(a,'click')});

HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>project index</title>
</head>
<body>
	<div id="a">aaaaa</div>
	<div id="b">bbbbb</div>
</body>
</html>

转载于:https://www.cnblogs.com/sky000/archive/2010/10/21/1857563.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值