No IE, eu posso fazer isso com o jQuery (terrivelmente fora do padrão, mas funcionando)
if ($.browser.msie)
$(document).keydown(function(e) { if (e.keyCode == 8) window.event.keyCode = 0;});
Mas é possível fazer de uma maneira que funcione no Firefox ou de um modo cruzado para obter um bônus?
Para o registro:
$(document).keydown(function(e) { if (e.keyCode == 8) e.stopPropagation(); });
faz nada.
$(document).keydown(function(e) { if (e.keyCode == 8) e.preventDefault(); });
resolve o problema, mas torna a chave de backspace inutilizável na página, o que é ainda pior que o comportamento original.
EDIT: A razão pela qual faço isso é que não estou criando uma página da Web simples, mas um aplicativo grande. É incrivelmente chato perder 10 minutos de trabalho só porque você pressionou o backspace no lugar errado. A proporção entre evitar erros e usuários irritantes deve estar muito acima de 1000/1, impedindo que a tecla backspace navegue de volta.
EDIT2: Eu estou não tentar impedir a navegação história, apenas acidentes.
EDIT3: comentário @brentonstrines (movido para cá porque a pergunta é muito popular): Esta é uma 'correção' de longo prazo, mas você pode apoiar seu bug do Chromium para alterar esse comportamento no webkit