Commit 550d1bf822172c068b762c66e55fa37aa6d85756
1 parent
f367ed6560
Exists in
master
and in
1 other branch
teclado soporta entradas numéricas
Showing
2 changed files
with
17 additions
and
3 deletions
Show diff stats
package.json
| ... | ... | @@ -36,11 +36,10 @@ |
| 36 | 36 | "devDependencies": { |
| 37 | 37 | "angular": "^1.7.5", |
| 38 | 38 | "angular-route": "^1.7.5", |
| 39 | + "angular-sanitize": "^1.7.5", | |
| 39 | 40 | "bootstrap": "^4.1.3", |
| 40 | 41 | "font-awesome": "^4.7.0", |
| 41 | 42 | "gulp": "^3.9.1", |
| 42 | - "angular-on-screen-keyboard": "git+https://github.com/ericf97/angular-on-screen-keyboard.git", | |
| 43 | - "angular-sanitize": "^1.7.5", | |
| 44 | 43 | "gulp-angular-templatecache": "^2.2.2", |
| 45 | 44 | "gulp-clean": "^0.4.0", |
| 46 | 45 | "gulp-concat": "^2.6.1", |
src/js/angular-on-screen-keyboard-directive.js
| ... | ... | @@ -89,6 +89,14 @@ angular.module('onScreenKeyboard', ['ngSanitize']) |
| 89 | 89 | var htmlKeyVal = angular.element(event.target || event.srcElement).text(); |
| 90 | 90 | var lastInputCtrl = angular.element(ctrl.lastInputCtrl); |
| 91 | 91 | var val = lastInputCtrl.val(); |
| 92 | + if(lastInputCtrl[0].type === 'number') { | |
| 93 | + var dato = parseInt(val + htmlKeyVal); | |
| 94 | + lastInputCtrl.val(dato); | |
| 95 | + lastInputCtrl.triggerHandler('change'); | |
| 96 | + ctrl.setKeyboardLayout(); | |
| 97 | + ctrl.refocus(); | |
| 98 | + return; | |
| 99 | + } | |
| 92 | 100 | var pre = val.substring(0, ctrl.startPos); |
| 93 | 101 | var post = val.substring(ctrl.endPos, val.length); |
| 94 | 102 | lastInputCtrl.val(pre + htmlKeyVal + post); |
| ... | ... | @@ -115,6 +123,13 @@ angular.module('onScreenKeyboard', ['ngSanitize']) |
| 115 | 123 | |
| 116 | 124 | var lastInputCtrl = angular.element(ctrl.lastInputCtrl); |
| 117 | 125 | var val = lastInputCtrl.val(); |
| 126 | + if(lastInputCtrl[0].type === 'number') { | |
| 127 | + lastInputCtrl.val(val.slice(0, -1)); | |
| 128 | + lastInputCtrl.triggerHandler('change'); | |
| 129 | + ctrl.setKeyboardLayout(); | |
| 130 | + ctrl.refocus(); | |
| 131 | + return; | |
| 132 | + } | |
| 118 | 133 | var pre = val.substring(0, hasSel ? ctrl.startPos : ctrl.startPos - 1); |
| 119 | 134 | var post = val.substring(ctrl.endPos, val.length); |
| 120 | 135 | |
| ... | ... | @@ -180,7 +195,7 @@ angular.module('onScreenKeyboard', ['ngSanitize']) |
| 180 | 195 | $document.bind('focusin', focusin); |
| 181 | 196 | $document.bind('keyup', keyup); |
| 182 | 197 | |
| 183 | - scope.$on("$destroy", function() { | |
| 198 | + scope.$on('$destroy', function() { | |
| 184 | 199 | $document.unbind('focusin', focusin); |
| 185 | 200 | $document.unbind('keyup', keyup); |
| 186 | 201 | }); |