|
@@ -935,21 +935,21 @@ the specific language governing permissions and limitations under the Apache Lic
|
|
|
height = this.container.outerHeight(false),
|
|
|
width = this.container.outerWidth(false),
|
|
|
dropHeight = this.dropdown.outerHeight(false),
|
|
|
- viewPortRight = $(window).scrollLeft() + document.documentElement.clientWidth,
|
|
|
- viewportBottom = $(window).scrollTop() + document.documentElement.clientHeight,
|
|
|
+ viewPortRight = $(window).scrollLeft() + $(window).width(),
|
|
|
+ viewportBottom = $(window).scrollTop() + $(window).height(),
|
|
|
dropTop = offset.top + height,
|
|
|
dropLeft = offset.left,
|
|
|
enoughRoomBelow = dropTop + dropHeight <= viewportBottom,
|
|
|
enoughRoomAbove = (offset.top - dropHeight) >= this.body().scrollTop(),
|
|
|
- dropWidth = this.dropdown.outerWidth(false),
|
|
|
- enoughRoomOnRight = dropLeft + dropWidth <= viewPortRight,
|
|
|
+ dropWidth = this.dropdown.outerWidth(false),
|
|
|
+ enoughRoomOnRight = dropLeft + dropWidth <= viewPortRight,
|
|
|
aboveNow = this.dropdown.hasClass("select2-drop-above"),
|
|
|
bodyOffset,
|
|
|
above,
|
|
|
css;
|
|
|
|
|
|
- // console.log("below/ droptop:", dropTop, "dropHeight", dropHeight, "sum", (dropTop+dropHeight)+" viewport bottom", viewportBottom, "enough?", enoughRoomBelow);
|
|
|
- // console.log("above/ offset.top", offset.top, "dropHeight", dropHeight, "top", (offset.top-dropHeight), "scrollTop", this.body().scrollTop(), "enough?", enoughRoomAbove);
|
|
|
+ //console.log("below/ droptop:", dropTop, "dropHeight", dropHeight, "sum", (dropTop+dropHeight)+" viewport bottom", viewportBottom, "enough?", enoughRoomBelow);
|
|
|
+ //console.log("above/ offset.top", offset.top, "dropHeight", dropHeight, "top", (offset.top-dropHeight), "scrollTop", this.body().scrollTop(), "enough?", enoughRoomAbove);
|
|
|
|
|
|
// fix positioning when body has an offset and is not position: static
|
|
|
|
|
@@ -969,9 +969,9 @@ the specific language governing permissions and limitations under the Apache Lic
|
|
|
if (!enoughRoomBelow && enoughRoomAbove) above = true;
|
|
|
}
|
|
|
|
|
|
- if (!enoughRoomOnRight) {
|
|
|
- dropLeft = offset.left + width - dropWidth;
|
|
|
- }
|
|
|
+ if (!enoughRoomOnRight) {
|
|
|
+ dropLeft = offset.left + width - dropWidth;
|
|
|
+ }
|
|
|
|
|
|
if (above) {
|
|
|
dropTop = offset.top - dropHeight;
|