Man bør altid tilføje events med DOM og kun til elementer, der allerede eksisterer i DOM-hierarkiet !-)
De standard-metoder, der findes, er absolut ikke implementeret ens i browserne og de ser meget forskelligt på sagen, så der skal virkeligt arbejdes, hvis events skal tilføjes:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
<title>AddEvent</title>
<meta name="Generator" content="Stone's WebWriter 4">
<meta name="keywords" content="roenving,
http://www.eksperten.dk/spm/812429"><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
html,body{height:100%;margin:0px;border:0px;padding:0px;font-family:tahoma,verdana,arial,sans-serif;font-size:small;}
</style>
<script type="text/javascript">
function addEvent(elm,evnt,func,addRem){
if(elm.addEventListener && navigator.userAgent.toLowerCase().indexOf('opera')==-1){//Opera har et problem (min er 9.25 !-)
if(addRem){
elm.addEventListener(evnt,func,true);
}else{
elm.removeEventListener(evnt,func,true);
}
}else if(elm.attachEvent){
if(addRem)
elm.attachEvent("on" + evnt, func);
else
elm.detachEvent("on" + evnt, func);
}else if(addRem){
elm["on"+evnt] = func;
}else{
elm["on"+evnt] = null;
}
}
function minAlert(){
alert('Funktion tilføjet');
}
</script>
</head>
<body>
<button name="button1" id="button1" onclick="addEvent(document.getElementById('minDiv'),'click',minAlert,true);return false">Tilføj event til div</button>
<button name="button2" id="button2" onclick="addEvent(document.getElementById('minDiv'),'click',minAlert,false);return false">Fjern event fra div</button>
<br><br>
<div id="minDiv">En div-tekst</div>
</body>
</html>