Knusperklumpen: Auf Maus reagieren

Beitrag lesen

Hi,

ein elementarer Fehler ist, dass du in die Funktion resizeField das Feld übergibst, dort aber einen Event-Handler erwartest. Das funktioniert so nicht bzw. wenn was funktioniert, ist es Zufall.
Du kannst jedoch aus dem onClick heraus nicht gleichzeitig das betreffende Feld und den Event-Handler übergeben, daher würde ich das anders machen und zwar angelehnt an das Beispiel in http://de.selfhtml.org/javascript/objekte/event.htm#button@title=SelfHTML.
Hier steht außerdem auch, dass unterschiedliche Browser mit unterschiedlichen Zahlen für die jeweiligen Button arbeiten, was die Sache erschwert, letztlich aber nicht unmöglich macht.

Folgendermaßen funktioniert es bei mir im Firefox 3.0 und IE 6.0 (was wir hier an der Arbeit aber auch für nen alten Scheiß haben ...)
Der FF reagiert nur auf die rechte Maustaste, der IE auf die rechte und mittlere.

  
var pickHuge = true;  
var pickOrgPosition;  
var pickOrgTop;  
var pickOrgHeight;  
  
// neu hinzugekommene Variable  
var field;  
  
// neu hinzugekommene Funktion  
function setField(f)  
{  
	field = f;  
	f.onmousedown = resizeField;  
}  
  
function resizeField(e)  
{  
        if (!e) e = window.event;  
  
        if ((e.button && e.button != 1))  
	{  
	        if (pickHuge)  
		{  
			pickHuge = false;  
			alert("vergrößern");  
	        }  
	else  
		{  
			pickHuge = true;  
                	alert("verkleinern");  
	        }  
	}  
}  

  
<select id='FeldID' name='FeldName' onDblClick='' onFocus="setField(this)">  

Probier mal ...
mfg
Knusperklumpen