Christian S.: onkeypress im Firefox + Cursortasten

Hi,

ich habe an einer DropDownList ein onkeypress event dran. um in die erster option etwas reinschreiben zu können.

ich hole mir dann den CharCode über:

var keyCode = (e.charCode) ? e.charCode : e.keyCode;

um in verschiedenen Browsern den richtigen Code zu haben.

Wenn ich allerdings im Firefox die Cursortasten drücke, scheinen diese den selben Code zu haben wie "%", "&", "'" und "(".

Dementsprechend wird dann auch dieses Zeichen geschrieben.

normal haben die cursortasten ja 37-40 glaub ich. und die anderen oben genannten liegen genau davor. (33-36).

Wieso ist das beim onkeypress falsch?

Im IE gehts.

Jemand ne Idee?

Gruß
Christian

  1. hi,

    Wenn ich allerdings im Firefox die Cursortasten drücke, scheinen diese den selben Code zu haben wie "%", "&", "'" und "(".

    Hinweise zu event.keyCode beachtet?

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Hi,

      ah, ok, ich hab zwar noch e.which abgefragt, aber bringen tut das nichts.

      Ob ich nun das & Zeichen oben über der 6 per Shift drücke oder ob ich eine Curortaste drücke. Beide male kommt der Code 38 raus.

      was durch String.fromCharCode dazu führt, dass ein & Zeichen gedrückt wurde.

      Kann ich das nicht irgendwie noch unterscheiden, ob Cursortasten oder eben die anderen Zeichen gedrückt wurden??

      Gruß
      Christian

      1. Hi Christian,

        Kann ich das nicht irgendwie noch unterscheiden, ob Cursortasten oder eben die anderen Zeichen gedrückt wurden??

        shift und 6 (also &) liefert dir einen einen Keycode von 36, ebenso wie die Cursortaste. ABER was sagt event.shiftKey?

        Grüße,

        Jochen

        --
        Kritzeln statt texten:
        Scribbleboard
  2. ich hole mir dann den CharCode über:

    var keyCode = (e.charCode) ? e.charCode : e.keyCode;

    charCode ist mir völlig unbekannt, warum nicht so:

    var keyCode = e.keyCode || e.which;

    Dann solltest du deine deine Werte bekommen.

    Struppi.

    --
    Javascript ist toll (Perl auch!)