Событие — это объект, который поставляется с IE, но этот объект не существует в FF. События можно моделировать только путем передачи параметров.
Кроме того, srcElement используется в IE для получения источника триггера события, а target — в FF. Следовательно, при использовании этих двух объектов необходимо обеспечить соответствующую совместимость браузера.
Скопируйте код кода следующим образом:
<!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">
<голова>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>srcElement --//www.VeVB.COm/</title>
<тип сценария="текст/javascript">
<!--
функция Click(событие){
событие = событие? событие: окно.событие
вар obj = event.srcElement? event.srcElement:event.target;
оповещение(obj.tagName);
}
//-->
</скрипт>
</голова>
<тело>
<button id="btn" onclick="Click(event)">Нажмите</button>
</тело>
</html>
Посмотреть результаты бега
Комплекс AttachEvent и addEventListener из предыдущего раздела.
Скопируйте код кода следующим образом:
<тип сценария="текст/javascript">
<!
функция Click(событие){
событие = событие? событие: окно.событие;
вар obj = event.srcElement? event.srcElement:event.target;
alert("eventObj.tabName:" + obj.tagName);
}
вар oBtnNew;
window.onload=function(){
oBtnNew=document.getElementById("btnNew");
если (окно.attachEvent) {
oBtnNew.attachEvent("onclick",hanlder);
oBtnNew.attachEvent("onmouseover",hanlder);
}еще{
oBtnNew.addEventListener("клик",hanlder,false);
oBtnNew.addEventListener("наведение курсора",hanlder,false);
}
/*Или используйте следующий тест
oBtnNew.onclick=hander;
oBtnNew.onmouseover=hander;*/
}
обработчик функции (событие) {
событие=событие?событие:window.event;
если(event.type=="клик")
oBtnNew.innerHTML="Произошло событие onclick";
иначе, если(event.type=="наведение мыши")
oBtnNew.innerHTML="Произошло событие onmouseover";
}
//>
</скрипт>
</голова>
<тело>
<button id="btn" onclick="Click(event)">Нажмите</button>
<button id="btnNew">Добавить клик по событию</button>