Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Znaki diakrytyczne
Hpsi
post
Post #1





Grupa: Zarejestrowani
Postów: 483
Pomógł: 50
Dołączył: 15.03.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witam muszę zrobić przechwytywanie znaków diakrytycznych w różnych językach i mam pewien problem.

Więc pokrótce, w celu przechwytywania znaków użyłem jQuery pluginem js-hotkeys.

Wszystko byłoby piękne, ale muszę przechwytywać na "lewym alt" znaki do przykładu:

w języku hiszpańskim na "lewy alt"+u ma pojawiać się znak: ú -> i tutaj pojawia się problem z IE, gdyż prawy alt + u w skrótach na IE oznacza ulubione (przynajmniej u mnie tak się włącza)

podobne problemy są z "alt + e" (dodatkowy problem chrome - otwiera się lista "ustawienia chrome" ) , " alt + a " , " alt + c " , " alt + n "



czy mógłby ktoś mi doradzić co z tym zrobić?

Ten post edytował Hpsi 25.10.2011, 13:12:46
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Opcje masz dwie - użyj flasha - on na pewno przechwytuje wszystkie znaki lub spróbuj prosty skrypt JS w którym sprawdzisz jedynie czy działa blokowanie bąbelkowania eventów w IE. Najprościej:

[JAVASCRIPT] pobierz, plaintext
  1.  
  2. function myKeyHandler(event)
  3. {
  4. if(!event) event = window.event;
  5.  
  6. if('preventDefault' in event) event.preventDefault();
  7. event.cancelBubble = true;
  8. event.returnValue = false;
  9. return false;
  10. }
  11.  
  12. document.attachEvent('onkeyup',myKeyHandler);
  13. document.attachEvent('onkeydown',myKeyHandler);
  14.  
[JAVASCRIPT] pobierz, plaintext


Dla innych browserów niż IE użyj:

[JAVASCRIPT] pobierz, plaintext
  1. [...]
  2.  
  3. document.addEventListener('keyup',myKeyHandler,true);
  4. document.addEventListener('keydown',myKeyHandler,true);
[JAVASCRIPT] pobierz, plaintext


Co robi ten skrypt? Nic - i właśnie o to chodzi - przechwytuje on wszystkie naciśnięcia klawiszy i blokuje to co powinno się stać normalnie po ich wciśnięciu. Jeżeli na stronie z tym skryptem te skróty klawiszowe nie zadziałają to znaczy, że trzeba pogrzebać trochę w JS, jeśli i tak przejdą domyślne operacje to znaczy że na 99,9999% się nie da :/

EDIT: Poprawiłem błędy ;P

Ten post edytował Sephirus 25.10.2011, 15:20:04
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 07:10