Fix Menu position on Firefox.

This commit is contained in:
Nicolas Stepien 2012-06-25 13:00:22 +02:00
parent faef152020
commit 909e8dc4d9
2 changed files with 7 additions and 5 deletions

View File

@ -1101,7 +1101,7 @@
return $.on(a, 'click', Menu.toggle);
},
toggle: function(e) {
var lastOpener, s;
var lastOpener, rect, s;
e.preventDefault();
e.stopPropagation();
if (Menu.el.parentNode) {
@ -1112,8 +1112,9 @@
}
}
s = Menu.el.style;
s.top = this.offsetTop + this.offsetHeight + 2 + 'px';
s.left = this.offsetLeft + 'px';
rect = this.getBoundingClientRect();
s.top = d.documentElement.scrollTop + d.body.scrollTop + rect.top + rect.height + 2 + 'px';
s.left = d.documentElement.scrollLeft + d.body.scrollLeft + rect.left + 'px';
Menu.lastOpener = this;
return Menu.open(Main.preParse($.x('ancestor::div[contains(@class,"postContainer")][1]', this)));
},

View File

@ -850,8 +850,9 @@ Menu =
# Position
s = Menu.el.style
# XXX prevent overflows
s.top = @offsetTop + @offsetHeight + 2 + 'px'
s.left = @offsetLeft + 'px'
rect = @getBoundingClientRect()
s.top = d.documentElement.scrollTop + d.body.scrollTop + rect.top + rect.height + 2 + 'px'
s.left = d.documentElement.scrollLeft + d.body.scrollLeft + rect.left + 'px'
Menu.lastOpener = @
Menu.open Main.preParse $.x 'ancestor::div[contains(@class,"postContainer")][1]', @