<!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>无标题文档</title>
</head><body>
<p id="pro">ass</p>
</body>
<script language="javascript">function $(id){
return document.getElementById(id)
}var eventUtil={
addEventHandler:function(target,EventType,fnHandle){
if(target.attachEvent)
{
target.attachEvent("on"+EventType,function(){fnHandle.apply(target)});
}
else if(target.addEventListener)
{
target.addEventListener(EventType,fnHandle,false);
}
else
{
target["on"+EventType]=fnHandle
}
},
removeEventHandler:function(target,EventType,fnHandle){
if(target.detachEvent)
{
target.detachEvent("on"+EventType,fnHandle)
}
else if(target.removeEventListener)
{
target.removeEventListener(EventType,fnHandle,false)
}
else{
target["on"+EventType]=null
}
}
}
function a(){
alert(0)
eventUtil.removeEventHandler($("pro"),"click",a)
//$("pro").removeEventListener('click',a,false);
}eventUtil.addEventHandler($("pro"),"click",a)
</script>
</html>
我在p上绑定了一个click事件,在点击之后会移除这个事件,在FF、chorme中可以实现,但是在IE、opera中不能移除事件,请问这是为什么?怎么解决?
addEventHandler:function(target,EventType,fnHandle){
if(target.attachEvent)
{
// target.attachEvent("on"+EventType,function(){fnHandle.apply(target)});
target.attachEvent("on"+EventType,fnHandle);
}
else if(target.addEventListener)
{
target.addEventListener(EventType,fnHandle,false);
}
else
{
target["on"+EventType]=fnHandle
}
},
target.attachEvent("on"+EventType,function(){fnHandle.apply(target)});
你移除的函数
target.addEventListener(EventType,fnHandle,false);fnHandle!=function(){fnHandle.apply(target)}
它们两完全不是一回事
afterload="$('#people_detail').show('slow')"
beforeload="$('#people_detail').hide('slow')"></DIV>
这有没有错啊?????