• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Ubuntu Firefox onKeyUp

Status
Für weitere Antworten geschlossen.
G

Gelöschtes Mitglied 3007

Guest
Hallo,

ich habe schon das ganze (mir bekannte) internet durchsucht aber gefunden hab ich nichts.

aufgabenbeschreibung: ein html element solange die entsprechende taste gedrückt ist in richtung x bewegen

da denkt man sich... kein problem...

Code:
bla.onkeydown = function() { /*beweg dich*/ };
bla.onkeyup = function() { /*bleib stehen*/ };

funktioniert auch super... nur im firefox unter ubuntu macht der ganz komische sachen...

hier die eine kleine liste wer welche events wie schmeißt... darin seht ihr dann auch mein problem.

Code:
MAC SAFARI
WIN OPERA

keydown
keypress
keypress
keypress
keypress
keypress
up

UBUNTU FF

keydown
keypress
keyup
keydown
keypress
keyup
keydown
keypress
keyup

WIN FF

keydown
keypress
keydown
keypress
keydown
keypress
keydown
keypress
keyup

WIN IE 6
reagiert nicht...

mein problem ist jetzt das ich keine ahnung habe wie ich das ende der aktion bestimmen soll wenn alle 3 events immer wieder geworfen werden... hab da schon ganz viel überlegt mit timern und so aber das ist alles blöd...

also wenn jemand weiß warum das so ist oder wie ich es trotsdem hinbekomme ohne viel drum rum zu arbeiten schreibst mir :) danke^^ :-*

lg Miah

Ps: sorry das sich der text so komisch liest bin gerade ziemlich verwirrt xD
 
Werbung:
Ich kann mir nicht vorstellen, dass das so ist, aber mangels Möglichkeiten auch nicht testen. Aber das wäre ein Bug. Wie sieht denn dein Code aus, um das zu testen.
 
es ist so... wie ich eben erfahren habe soll google chrome unter ubuntu den gleichen bug haben.

code hab ich gerade nicht hier aber aus meinem test script sieht der code so aus...

Code:
		<script>
		//<![CDATA[

		window.onkeydown = function() { document.getElementById('test').innerHTML += 'down<br />'; };
		window.onkeypress = function() { document.getElementById('test').innerHTML += 'press<br />'; };
		window.onkeyup = function() { document.getElementById('test').innerHTML += 'up<br />'; };
		
		function start() {
			document.getElementById('test').innerHTML += navigator.userAgent + '<br />';
		}

		//]]>
		</script>
 
Werbung:
Unter windows sieht es bei mir genauso aus.

Ich würd das ganze mit einem flag lösen, der anzeigt, ob der Event onkeydown stattgefunden hat und dann nicht mehr reagieren.

EDIT: ich sehe gerade dass bei dir auch unter Linux und win das gleiche verhalten ist oder bin ich grad zu blöd um den Unterschied zu sehen?

EDIT EDIT: ja ich war zu blöd. aber das mit dem Flag sollte trotzdem helfen.
 
Und wie soll das mit diesem "flag" gehen? Ich kann doch nicht unterscheiden, ob das Events vom User oder durch diesen Bug ausgelöst wird.
 
Werbung:
Vll. unterscheidet sich das Event-Objekt aber in irgend einem Detail, dass doch eine Unterscheidung möglich ist.

*edit*
Wer einen Bugzilla@Mozilla-Account hat, sollte mal für diesen Bug voten.
@struppi: Kannst du den Bug für Chrome anhand des Testcases verifizieren? In Midori ist es jedenfall der Fall: Webkit-Version: r43000 - build 62.1.
 
Zuletzt bearbeitet:
Werbung:
Vll. unterscheidet sich das Event-Objekt aber in irgend einem Detail, dass doch eine Unterscheidung möglich ist.

Es gibt leider keine unterschiede.

Allen anderen schonmal vielen dank aber ich habe gehofft eine lösung zu finden bei der das element auch wirklich und unmitelbar nach loslassen der taste stehen bleibt. Da muss es eine lösung geben.

Ich habe auch schon daran gedacht das element bei jedem event um ein bisschen zu bewegen da könnte man wenn man die zeit beobachtet immer genau so weit gehen wie das element sich in der zeit normalerweise bewegt hätte. Dabei besteht aber das problem das die häufigkeit der evente dazu führt das eine funktion noch so klein sein kann irgendwann, irgendwann gibt der browser auf und dann siehts nicht mehr schön aus.

hoffentlich finde ich hier noch weitere anregungen. :)
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben