2014-12-10 4 views
0

Я хочу отключить Backspace кнопку в любое время, когда я нажимаю страницу браузера. Я написал этот кусок кода (второй if убедившись, что это будет работать для любой версии IE - 11 или ниже):Disable Backspace

<PUBLIC:COMPONENT TAGNAME="menucontrol"> 
    <PUBLIC:ATTACH EVENT="onclick" FOR="document" ONEVENT="RemoveBackspace();"/> 

<SCRIPT language="javascript"> 

function RemoveBackspace() { 
      document.onkeydown = function(){ 

      if(event.keyCode === 8) { 
       if(typeof event.preventDefault === 'function'){ 
        event.preventDefault(); 
      } 
      else{ 
        event.returnValue = false; 
      } 
     } 
}; 
} 
</SCRIPT> 
... 
</PUBLIC:COMPONENT> 

Если я ввести функцию оповещения в функции RemoveBackspace(), появляется сообщение , Я не знаю, что не так с этим кодом. Должен ли я использовать другой подход?

ответ

1

Вы забыли передать мероприятие функции.

document.onkeydown = function (event){ 

     if(event.keyCode === 8) { 
      event.preventDefault(); 
     } 
}; 

Посмотрите на первую строку моего кода. Я также удалил ненужный второй оператор if/else, так как код отлично работает без него. Не волнуйтесь, все сначала делают ошибки. : P

+0

Спасибо, это сработало! На самом деле я новичок в этом. Но в следующий раз я постараюсь найти ошибку, прежде чем задавать вопрос. – Alexandra