[JavaScript] onmousedown/onmouseup beim iPod/iPhone

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Root-2k, 4. Mai 2010 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 4. Mai 2010
    onmousedown/onmouseup beim iPod/iPhone

    Hi,

    ich habe ein kleines Problem mit meiner "mobilen Anwendung".
    Ich habe ein Button erstellt welche eine JavaScript- Funktion aufruft und diese soll solange einen Wert (um 0,1) in einem Feld erhöhen, bis der Button losgelassen wird.
    Nun funktioniert aber onmousedown, bzw. onmouseup nicht richtig auf dem iPod/iPhone, so dass der Wert nur ein einziges Mal erhöht wird. Dann wird auch schon wieder das onmouseup- event aufgerufen. Beim Firefox, Safari (PC) geht das Ganze aber. Das Problem ist eben dass man keine Maus sondern nur seinen Finger zur Navigation hat und dass beim iPod/iPhone Funktionen, wie beispielsweise der Doppelklick, fehlen.

    Wisst Ihr vielleicht wie ich das Problem lösen kann?
    Bw ist (für jeden sinnvollen Beitrag) natürlich Ehrensache.

    Hier mal der Code:

    HTML:
    <!-- this.form[field].value : Hier wird ein Wert aus einem Feld ausgelesen -->
    
    <input type="button" name="zahl" value="<<" onmousedown="minus(this.form[field].value)" onmouseup="minus('ende')">
    <input type="button" name="zahl" value=">>" onmousedown="plus(this.form[field].value)" onmouseup="plus('ende')">
    
    <script type="text/javascript">
     var tmp;
     window.field = "Temperatur";
     function plus(para){
     if(para == "ende"){
     tmp = "ende";
     window.clearTimeout(aktiv);
     }else{
     para = para * 10;
     para++;
     para = para / 10;
     document.getElementById(field).value = para;
     
     tmp = para;
     if(tmp != "ende"){
     aktiv = window.setTimeout("plus(tmp);",500);
     }
     }
     }
     
     function minus(para){
     if(para == "ende"){
     tmp = "ende";
     window.clearTimeout(aktiv);
     }else{
     para = para * 10;
     para--;
     para = para / 10;
     document.getElementById(field).value = para;
     
     tmp = para;
     if(tmp != "ende"){
     aktiv = window.setTimeout("minus(tmp);",500);
     }
     }
     }
     
    </script>
    
    
     
  2. 4. Mai 2010
    AW: onmousedown/onmouseup beim iPod/iPhone

    evt. onclick nehmen.

    sonst hab ich das gegoogelt
    Touching and Gesturing on the iPhone | Blog | SitePen
     
  3. 4. Mai 2010
    AW: onmousedown/onmouseup beim iPod/iPhone

    Wegen onclick: Ich weiß nicht genau wie ich meine Funktion dann umschreiben müsste... wenn ich statt "onmousedown" einfach "onclick" verwende, bekomme ich eine Endlosschleife.

    Die Homepage: Sehr guter Tipp! Danke dafür.
    Kann da gut "ontouchstart" und "ontouchend" verwenden. Allerdings bekomme ich hier auch manchmal eine Endlosschleife.... und zwar wenn beim mehrfachen Klicken auf einen der Buttons die ganze Zeile der Tabelle (in der die Buttons liegen --> oben nicht angegeben) markiert wird.
    Weiß allerdings nicht genau wann der (iPod) das macht. Passiert wohl nur wenn ich an eine bestimmte Stelle in der Tabelle klicke. Hab aber noch nicht rausgefunden an welcher Stelle dies auftritt.

    Das Ganze hilft mir aber schon mal sehr weiter!!!

    Wenn noch jemand eine andere Lösung hat wäre ich sehr dankbar für einen post!
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.