浏览代码

work around a firefox bug when calculation search width. fixes #944

Igor Vaynberg 12 年之前
父节点
当前提交
5ae70eca5f
共有 1 个文件被更改,包括 7 次插入1 次删除
  1. 7 1
      select2.js

+ 7 - 1
select2.js

@@ -2220,7 +2220,8 @@ the specific language governing permissions and limitations under the Apache Lic
             if (placeholder !== undefined  && this.getVal().length === 0 && this.search.hasClass("select2-focused") === false) {
                 this.search.val(placeholder).addClass("select2-default");
                 // stretch the search box to full width of the container so as much of the placeholder is visible as possible
-                this.resizeSearch();
+                // we could call this.resizeSearch(), but we do not because that requires a sizer and we do not want to create one so early because of a firefox bug, see #944
+                this.search.width(this.getMaxSearchWidth());
             } else {
                 this.search.val("").width(10);
             }
@@ -2447,6 +2448,11 @@ the specific language governing permissions and limitations under the Apache Lic
 
         },
 
+        // multi
+        getMaxSearchWidth: function() {
+            return this.selection.width() - getSideBorderPadding(this.search);
+        },
+
         // multi
         resizeSearch: function () {
             var minimumWidth, left, maxWidth, containerLeft, searchWidth,