Autor Zpráva
regvac
Profil *
Na netu jsem našel tuto funkci k blokaci klávesy Backspace pro IE:
document.onkeydown = haltBackspace;
document.onkeyup = haltBackspace;
function haltBackspace() {if (window.event && window.event.keyCode == 8) {return false;}}

Při vložení na stránku to ale zablokuje i backspace při práci s textem v inputech, textarea,... Jde nějak udělat výjimku pro textové tagy? Jak to případně ještě rozšířit na blokaci ALT+levá nebo ALT+pravá šipka? Chci jen uživateli blokovat návrat na předchozí stránku (resp. vpřed). Stránku mám součástí ebook, takže přímo IE tlačítko pro zpět a vpřed není dostupné (skryl jsem ho).

Děkuji
_es
Profil
regvac:
Možno ti pomôže http://diskuse.jakpsatweb.cz/?action=vthread&forum=9&topic=114905#9.
regvac
Profil *
Tak jsem si to nakonec našel zde: Odkaz

A poupravil takto:

if (typeof window.event != 'undefined') { // IE
  document.onkeydown = function() {  
    var e = event;
    var t = e.srcElement.type;
    var kc = e.keyCode;
    var tar = e.srcElement;
    var ro = tar.getAttribute('readonly');
    var r = kc != 8 || (t == 'text' && ro == false) || (t == 'password') || (t == 'textarea' && ro == false); 
    if ((kc == 37 && e.altKey) || (kc == 39 && e.altKey)) {r = false;}  
    return r;
  }
}
else {
  document.onkeypress = function(e) {// Firefox
    var t = e.target.type;
    var kc = e.keyCode;
    var tar = e.target;
    var ro = tar.getAttribute('readonly');
    var r = kc != 8 || (t == 'text' && ro != 'readonly') || (t == 'password') || (t == 'textarea' && ro != 'readonly');  
    if ((kc == 37 && e.altKey) || (kc == 39 && e.altKey)) {r = false;}  
    return r;
  }
}
_es
Profil
regvac:
A čo pohyb v histórii inak ako pomocou klávesnice alebo tlačidiel?
Napríklad cez pravé tlačítko myší (alebo špeciálnu klávesu toto nahradzujúce), hlavné menu prehliadača história: naspäť alebo pridané klávesy na niektorých klávesniciach?

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0