Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Submit(Enter) Touchstart i addEventListener
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
icemanwlkp
Witam szanowne grono . Pisze stronke pod tablety przeglądarka Webkit , taka wewnetrza zabawa i mam kłopoty dwa :

1. To dotyk ekranu o ile w js zapis

  1. document.addEventListener("touchstart", packa, true);


działa dla całego dokumentu , to nie chodzi mi przypisanie zdarzenia do elementu np.

  1. document.getElementById("dot").addEventListener( "touchstart", packa, true );


Rozwiązany , choć bardzo okrężną metodą

  1. var P1 = document.getElementById('dot');
  2. P1.addEventListener('touchstart', funcja, false); // uwaga nie można przekazywać parametrów żadnych :(
  3.  
  4. funkcja()
  5. {
  6. cos tam robimy sobie
  7. }


Niestety nie można przekazywać parametrów , wiec muszę w funkcji wywołać następna , która dopiero coś tam zrobi.

a i na to metoda

  1. P1.addEventListener('touchstart', function(e){naszafuncja(parametr);}, false);



2. To sprawa klawisza enter , zawsze powoduje on submit , nawet jak przechwytuje go metoda

  1. function skok(element) {
  2. var kod = (window.event) ? window.event.keyCode : e.which;
  3. var N = element.id;
  4. if(kod == 13)
  5. {
  6. if (N == 'ki')
  7. {
  8. document.getElementById('pi').focus();
  9. }
  10. if (N == 'pi'){klik(20);}
  11. }
  12. }


Rozwiązanie to dodanie do formularza do zdarzenia onsubmit i funkcja w js

  1. onsubmit="return niewysylaj(this);"
  2.  
  3. function niewysylaj(element)
  4. {
  5. var a = document.getElementById('pi').value;
  6. var k = document.getElementById('ki').value;
  7. if (k == '')
  8. {
  9. document.getElementById('ki').focus()
  10. return false;
  11. }
  12. if (a == '')
  13. {
  14. document.getElementById('pi').focus()
  15. return false;
  16. }
  17. return true;
  18. }



Tylko niestety focus nie powoduje pojawienia się znaku zachęty w polu o id ki lub pi , jednak wpisywanie dane z klawiatury tam są umieszczanie ,ale nie widzimy co wpisujemy .

czy ktoś miał już podobne problemy ? Może ktoś widzi jakiś błąd ?
Pozdrawiam .
wNogachSpisz
z eventami to zapraszam do jQuery, bind, trigger, live, delegate, same cudeńka happy.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.