在我的代碼中,我試圖覆蓋按鍵(例如,我試圖在顯示數字鍵盤時覆蓋所有非數字鍵)。我試着做以下,它只與退格的工作,進入和標籤按鈕:覆蓋鍵按角度
HTML:
<input ng-keydown="numberKeydown($event)">
JS:
$scope.numberKeydown = function(event) {
if(!(event.keyCode >= 48 && event.keyCode <= 57) && !(event.keyCode >= 96 && event.keyCode <= 105)) { // if not 0-9 for normal, numeric keypad
event.stopPropagation();
event.preventDefault();
}
};
這些都不爲我工作的標點字符(例如,(
或)
或.
等)。退格鍵和回車鍵現在不能工作,但所有其他字符仍然顯示。我也試着使用ng-keypress
和ng-keyup
,但我真的不希望他們的工作...
編輯: 我應該提到,但我做我的測試在平板電腦上(的Nexus 9 ,iPad)
有點更容易閱讀: '''變種鍵= event.keyCode 如果(鍵< 48 ||(鍵> 57 &&鍵<96)||鍵> 105){//如果不是0-9爲正常,數字鍵盤''' 你確定它是在它內部阻止? – bryce
這確實使它更容易閱讀!是的,我可以阻止代碼,如果阻止(雖然行爲在使用斷點時很奇怪 - 我認爲事件的時間會變得混亂) – Kevin