Ermitteln des Eventverursachenden Elements
Dominik
- javascript
0 Robert Bamler0 Joachim
0 Joachim
guten morgen,
ich habe mehrere DIV-elemente auf einer seite platziert. nun würde ich
gerne in der body-anweisung auf z.B. onMouseDown reagieren. dabei würde
ich gerne den namen des div-elements mitgeben, auf das der benutzer
geklickt hat, damit ich z.b. den darin enthaltenen button ändern kann.
geht so was?
ich möchte das ganze nicht über koordinaten machen, da es sich dann
nicht mehr für mehrere verschiedene seiten eignet.
vielen dank schon mal
gruss
dominik
Hallo,
ich habe mehrere DIV-elemente auf einer seite platziert. nun würde ich
gerne in der body-anweisung auf z.B. onMouseDown reagieren. dabei würde
ich gerne den namen des div-elements mitgeben, auf das der benutzer
geklickt hat, damit ich z.b. den darin enthaltenen button ändern kann.
<DIV onClick="meinefunktion('div1')" id="div1">
TextText...
</DIV>
<DIV onClick="meinefunktion('div2')" id="div2">
TextText...
</DIV>
müsste doch eigentlich einfach so funktionieren.
Robert
hi,
<DIV onClick
nicht im NC 4x
Gruesse Joachim
Hallo,
<DIV onClick
nicht im NC 4x
Klar, für dem musst du sowieso Layer verwenden, weil er DIV's nicht ansprechen kann.
Dann kannst du dem event-Objekt auf Ereignisse reagieren (etwa so wie bei </selfhtml/tfcb.htm>).
Robert
hi,
hab Dir was gebastelt, enjoy
Gruesse Joachim
ps, vorsicht bei der Ausgabe per alert - gibt probs wegen des focusses
<html>
<head>
<style type="text/css">
<!--
#ebene0 {position:absolute; top:100px; left:100px; width:100px; height:100px; visibility:visible;}
-->
</style>
<script language="javascript1.2">
<!--
function myEl(e){
document.feld.ausgabe.value = this.id
if(document.layers) routeEvent(e)
}
function init(){
if(document.layers) {
document.ebene0.captureEvents(Event.MOUSEDOWN);
document.ebene0.onmousedown = myEl;
}
else if(document.all) document.all.ebene0.onmousedown = myEl;
else if(document.documentElement) document.getElementById('ebene0').onmousedown = myEl;
}
//-->
</script>
</head>
<body topmargin="0" leftmargin="0" marginheight="0" marginwidth="0" onload="init()">
<form Name="feld"><input type="text" name="ausgabe" size="30"></form>
<div id="ebene0">TestKlick</div>
</body>
</html>