浏览代码

fix delete in phone mask

Robin Herbots 11 年之前
父节点
当前提交
b84d0249a8
共有 3 个文件被更改,包括 3 次插入3 次删除
  1. 1 1
      dist/inputmask/jquery.inputmask.js
  2. 1 1
      dist/jquery.inputmask.bundle.js
  3. 1 1
      js/jquery.inputmask.js

+ 1 - 1
dist/inputmask/jquery.inputmask.js

@@ -708,7 +708,7 @@
             k == $.inputmask.keyCode.BACKSPACE && pos.end - pos.begin <= 1 ? pos.begin = seekPrevious(pos.begin) : k == $.inputmask.keyCode.DELETE && pos.begin == pos.end && pos.end++, 
             k == $.inputmask.keyCode.BACKSPACE && pos.end - pos.begin <= 1 ? pos.begin = seekPrevious(pos.begin) : k == $.inputmask.keyCode.DELETE && pos.begin == pos.end && pos.end++, 
             stripValidPositions(pos.begin, pos.end), generalize();
             stripValidPositions(pos.begin, pos.end), generalize();
             var firstMaskedPos = getLastValidPosition(pos.begin);
             var firstMaskedPos = getLastValidPosition(pos.begin);
-            getMaskSet().p = firstMaskedPos < pos.begin ? seekNext(firstMaskedPos) : pos.begin;
+            firstMaskedPos < pos.begin ? (-1 == firstMaskedPos && resetMaskSet(), getMaskSet().p = seekNext(firstMaskedPos)) : getMaskSet().p = pos.begin;
         }
         }
         function handleOnKeyResult(input, keyResult, caretPos) {
         function handleOnKeyResult(input, keyResult, caretPos) {
             if (keyResult && keyResult.refreshFromBuffer) {
             if (keyResult && keyResult.refreshFromBuffer) {

+ 1 - 1
dist/jquery.inputmask.bundle.js

@@ -706,7 +706,7 @@
             k == $.inputmask.keyCode.BACKSPACE && pos.end - pos.begin <= 1 ? pos.begin = seekPrevious(pos.begin) : k == $.inputmask.keyCode.DELETE && pos.begin == pos.end && pos.end++, 
             k == $.inputmask.keyCode.BACKSPACE && pos.end - pos.begin <= 1 ? pos.begin = seekPrevious(pos.begin) : k == $.inputmask.keyCode.DELETE && pos.begin == pos.end && pos.end++, 
             stripValidPositions(pos.begin, pos.end), generalize();
             stripValidPositions(pos.begin, pos.end), generalize();
             var firstMaskedPos = getLastValidPosition(pos.begin);
             var firstMaskedPos = getLastValidPosition(pos.begin);
-            getMaskSet().p = firstMaskedPos < pos.begin ? seekNext(firstMaskedPos) : pos.begin;
+            firstMaskedPos < pos.begin ? (-1 == firstMaskedPos && resetMaskSet(), getMaskSet().p = seekNext(firstMaskedPos)) : getMaskSet().p = pos.begin;
         }
         }
         function handleOnKeyResult(input, keyResult, caretPos) {
         function handleOnKeyResult(input, keyResult, caretPos) {
             if (keyResult && keyResult.refreshFromBuffer) {
             if (keyResult && keyResult.refreshFromBuffer) {

+ 1 - 1
js/jquery.inputmask.js

@@ -1248,7 +1248,7 @@
 
 
                 var firstMaskedPos = getLastValidPosition(pos.begin);
                 var firstMaskedPos = getLastValidPosition(pos.begin);
                 if (firstMaskedPos < pos.begin) {
                 if (firstMaskedPos < pos.begin) {
-                    //resetMaskSet();
+                    if (firstMaskedPos == -1) resetMaskSet();
                     getMaskSet()["p"] = seekNext(firstMaskedPos);
                     getMaskSet()["p"] = seekNext(firstMaskedPos);
                 } else {
                 } else {
                     getMaskSet()["p"] = pos.begin;
                     getMaskSet()["p"] = pos.begin;