Browse Source

fix paste event for older browsers

Robin Herbots 13 years ago
parent
commit
664aeccdb5
1 changed files with 3 additions and 1 deletions
  1. 3 1
      js/jquery.inputmask.js

+ 3 - 1
js/jquery.inputmask.js

@@ -63,6 +63,8 @@
 
 
         $.fn.inputmask = function (fn, options) {
         $.fn.inputmask = function (fn, options) {
             var opts = $.extend(true, {}, $.inputmask.defaults, options);
             var opts = $.extend(true, {}, $.inputmask.defaults, options);
+            var pasteEvent = (($.browser.opera || ($.browser.mozilla && parseFloat($.browser.version.substr(0,3)) < 1.9)) ? 'input' : 'paste');
+
 
 
             var iphone = navigator.userAgent.match(/iphone/i) != null;
             var iphone = navigator.userAgent.match(/iphone/i) != null;
             var android = navigator.userAgent.match(/android.*mobile safari.*/i) != null;
             var android = navigator.userAgent.match(/android.*mobile safari.*/i) != null;
@@ -638,7 +640,7 @@
                 }).bind("keydown.inputmask", keydownEvent
                 }).bind("keydown.inputmask", keydownEvent
                 ).bind("keypress.inputmask", keypressEvent
                 ).bind("keypress.inputmask", keypressEvent
                 ).bind("keyup.inputmask", keyupEvent
                 ).bind("keyup.inputmask", keyupEvent
-                ).bind("paste.inputmask", function () {
+                ).bind(pasteEvent + ".inputmask", function () {
                     var input = this;
                     var input = this;
                     setTimeout(function () {
                     setTimeout(function () {
                         caret(input, checkVal(input, buffer, true));
                         caret(input, checkVal(input, buffer, true));