Jak mogę zapobiec cofaniu się klawisza Backspace?

Na IE mogę to zrobić za pomocą (strasznie niestandardowego, ale działającego) jQuery

if ($.browser.msie)
    $(document).keydown(function(e) { if (e.keyCode == 8) window.event.keyCode = 0;});

Ale czy można zrobić to w sposób, który działa w Firefoksie lub w trybie krzyżowym w celu uzyskania premii?

Dla porządku:

$(document).keydown(function(e) { if (e.keyCode == 8) e.stopPropagation(); });

nic nie robi.

$(document).keydown(function(e) { if (e.keyCode == 8) e.preventDefault(); });

rozwiązuje problem, ale sprawia, że ​​klawisz Backspace nie jest dostępny na stronie, co jest nawet gorsze niż oryginalne zachowanie.

EDYCJA: Powodem, dla którego to robię, jest to, że nie tworzę prostej strony internetowej, ale dużą aplikację. Bardzo denerwujące jest stracenie 10 minut pracy tylko dlatego, że nacisnąłeś backspace w niewłaściwym miejscu. Stosunek zapobiegania błędom do irytujących użytkowników powinien być większy niż 1000/1, uniemożliwiając nawigację wstecz.

EDIT2: Jestemnie próbując zapobiec nawigacji w historii, po prostu wypadkom.

EDIT3: komentarz @ brentonstrines (przeniesiony tutaj, ponieważ pytanie jest tak popularne): Jest to długoterminowa „poprawka”, ale możesz wrzucić swoje wsparcie zaBłąd Chromium, aby zmienić to zachowanie w webkicie

questionAnswers(30)

yourAnswerToTheQuestion