Don P: onmouseout verschluckt...

Beitrag lesen

Hallo,

Zum Ausprobieren in FireFox hier mal ein valides Beispiel (nach W3C HTML Validator und jslint):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">  
<html><head>  
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">  
<title>Test</title>  
<script type="text/javascript">  
  
	[code lang=javascript]window.onload = function() {  
  
		var toggleButtons = function(elt){  
  
			var editButtons = elt.getElementsByTagName('input');  
  
			for (var i=0; editButtons[i]; i++) {  
  
				var theButton = editButtons[i], itsVisibility = theButton.style.visibility;  
				theButton.style.visibility = itsVisibility === 'hidden' ? 'visible' : 'hidden';  
			}  
		};  
  
		document.getElementById("mySection").onmouseout = function (e) {  
  
		  var elt = e.target;               // auslösendes HTML-Element ermitteln  
  
		  if ( elt.id.match(/^p\d/) ) {     // ein p-Element hat ausgelöst:  
  
			  toggleButtons(elt);             // Funktion zum Ein-/Ausblenden seiner Buttons ausführen  
		  }  
		};  
	};

</script>
</head><body>

<div id="mySection" style="display:block; width:10em; height:10em; background-color:yellow; border:2px solid red;">  

  <p id="p17"><span><input id="r0" type="button" value="x" style="visibility:hidden;"><i>Text1</i><input id="i0" type="button" value="+" style="visibility:hidden;"></span></p>  
  <p id="p16"><span><input id="r1" type="button" value="x" style="visibility:hidden;"><i>Text2</i><input id="i1" type="button" value="+" style="visibility:hidden;"></span></p>  
  <p id="p15"><span><input id="r2" type="button" value="x" style="visibility:hidden;"><i>Text3</i><input id="i2" type="button" value="+" style="visibility:hidden;"></span></p>  

</div>  

</body>
</html>[/code]

Fährt man mit der Maus *langsam* über den Text, erscheinen und verschwinden Buttons rechts/links vom Text. So soll es auch sein.
Fährt man aber schneller, dann bleiben unkontrolliert Buttons sichtbar. Ich stehe vor einem Rätsel.

Wie würdet ihr denn diese Aufgabe lösen, das es *so* ganz offenbar nicht funktioniert?

Danke und Gruß, Don P