L'événement est un objet fourni avec IE, mais cet objet n'existe pas dans FF. Les événements ne peuvent être simulés qu'en passant des paramètres.
De plus, srcElement est utilisé dans IE pour obtenir la source du déclencheur d'événement, et target est utilisé dans FF. Par conséquent, une compatibilité appropriée avec les navigateurs doit être assurée lors de l’utilisation de ces deux objets.
Copiez le code comme suit :
<!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">
<tête>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>srcElement ---//www.VeVB.COm/</title>
<script type="text/javascript">
<!--
fonction Clic(événement){
événement = événement ? : fenêtre.événement
var obj = event.srcElement? event.srcElement:event.target;
alerte(obj.tagName);
}
//-->
</script>
</tête>
<corps>
<button id="btn" onclick="Click(event)">Cliquez</button>
</corps>
</html>
Afficher les résultats en cours
Complet de attachEvent et addEventListener dans la section précédente.
Copiez le code comme suit :
<script type="text/javascript">
<!
fonction Clic(événement){
événement = événement ? événement : fenêtre.événement ;
var obj = event.srcElement? event.srcElement:event.target;
alert("eventObj.tabName:" + obj.tagName);
}
var oBtnNouveau;
window.onload=fonction(){
oBtnNew=document.getElementById("btnNew");
si(window.attachEvent){
oBtnNew.attachEvent("onclick",hanlder);
oBtnNew.attachEvent("onmouseover",hanlder);
}autre{
oBtnNew.addEventListener("click",hanlder,false);
oBtnNew.addEventListener("mouseover",hanlder,false);
}
/* Ou utilisez le test suivant
oBtnNew.onclick=hanlder;
oBtnNew.onmouseover=hanlder;*/
}
handle de fonction (événement) {
event=event?event:window.event;
if(event.type=="clic")
oBtnNew.innerHTML="l'événement onclick s'est produit" ;
sinon if(event.type=="mouseover")
oBtnNew.innerHTML="l'événement onmouseover s'est produit" ;
}
//
</script>
</tête>
<corps>
<button id="btn" onclick="Click(event)">Cliquez</button>
<button id="btnNew">Ajouter un clic d'événement</button>