Ich bin zu binden, um eine benutzerdefinierte Alarmbox mit fester Positionierung zu erstellen. Es funktioniert hervorragend in Chrome, aber ich kann die dynamische Position nicht direkt in Firefox finden.Jquery-Offset-Funktion macht den oberen Stil eine negative Zahl in Firefox
stellte ich einen modal Behälter die Größe des Dokuments
$('#modalContainer').height($.getDocHeight());
und dann die #alertBox div lebt in modalContainer und Position muss gleich: fixed Stil.
ich die Jquery-Offset-Funktion bin mit den oberen und linken Werten für #alertBox einzustellen etwa so:
var off_top=$(window).height()/3-$('#alertBox').height()/3;
var off_top=100;
var off_left=$(window).width()/2- $('#alertBox').width()/2;
$('#alertBox').offset({top:off_top,left:off_left});
In Chrom der Spitzenwert wird auf 100 Pixel und erscheint auf dem Bildschirm einstellen. In Firefox bekomme ich eine unfassbar große Zahl für den Top-Wert wie -1084px.
Wenn ich die Werte .offset() und position() in console.log ausgibt, sind sie in chrome identisch. In Firefox, während der Offset-Wert genau das ausgibt, auf was ich ihn eingestellt habe, gibt die Funktion .position() die unangemessen große Zahl aus.
Ist dies eine bekannte Browser-Inkonsistenz? Muss ich das anders machen?
Wenn es 'fixed' Positionierung, warum nicht css' top' verwenden und ' links um 40-50% um die Box zu zentrieren. http://jsfiddle.net/skram/XWN9G/ –