Pārlūkot izejas kodu

fix for dropdown closing as soon as its opened in IE8. fixes #369. fixes #354

Igor Vaynberg 12 gadi atpakaļ
vecāks
revīzija
96657a16aa
1 mainītis faili ar 12 papildinājumiem un 7 dzēšanām
  1. 12 7
      select2.js

+ 12 - 7
select2.js

@@ -972,13 +972,18 @@
                 });
             });
 
-            $(window).bind(resize, function() {
-                var s2 = $(selector);
-                if (s2.length == 0) {
-                    $(window).unbind(resize);
-                }
-                s2.select2("close");
-            });
+            window.setTimeout(function() {
+                // this is done inside a timeout because IE will sometimes fire a resize event while opening
+                // the dropdown and that causes this handler to immediately close it. this way the dropdown
+                // has a chance to fully open before we start listening to resize events
+                $(window).bind(resize, function() {
+                    var s2 = $(selector);
+                    if (s2.length == 0) {
+                        $(window).unbind(resize);
+                    }
+                    s2.select2("close");
+                })
+            }, 10);
 
             this.clearDropdownAlignmentPreference();