reverted r10125, which does not fix the described issue, and store style.display instead (first patch attached to #2414). r=bartvde,elemoine (pullup #2414)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10276 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
@@ -93,7 +93,6 @@ OpenLayers.Element = {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* APIFunction: getDimensions
|
* APIFunction: getDimensions
|
||||||
* *Deprecated*. Returns dimensions of the element passed in.
|
|
||||||
*
|
*
|
||||||
* Parameters:
|
* Parameters:
|
||||||
* element - {DOMElement}
|
* element - {DOMElement}
|
||||||
|
|||||||
@@ -1402,6 +1402,12 @@ OpenLayers.Map = OpenLayers.Class({
|
|||||||
var size = new OpenLayers.Size(this.div.clientWidth,
|
var size = new OpenLayers.Size(this.div.clientWidth,
|
||||||
this.div.clientHeight);
|
this.div.clientHeight);
|
||||||
|
|
||||||
|
// Workaround for the fact that hidden elements return 0 for size.
|
||||||
|
if (size.w == 0 && size.h == 0 || isNaN(size.w) && isNaN(size.h)) {
|
||||||
|
var dim = OpenLayers.Element.getDimensions(this.div);
|
||||||
|
size.w = dim.width;
|
||||||
|
size.h = dim.height;
|
||||||
|
}
|
||||||
if (size.w == 0 && size.h == 0 || isNaN(size.w) && isNaN(size.h)) {
|
if (size.w == 0 && size.h == 0 || isNaN(size.w) && isNaN(size.h)) {
|
||||||
size.w = parseInt(this.div.style.width);
|
size.w = parseInt(this.div.style.width);
|
||||||
size.h = parseInt(this.div.style.height);
|
size.h = parseInt(this.div.style.height);
|
||||||
|
|||||||
@@ -110,6 +110,37 @@
|
|||||||
t.ok(OpenLayers.Element.getHeight(elem) == elem.offsetHeight, "offsetHeight returned");
|
t.ok(OpenLayers.Element.getHeight(elem) == elem.offsetHeight, "offsetHeight returned");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function test_Element_getDimensions(t) {
|
||||||
|
if (!t.open_window) {
|
||||||
|
t.plan(0);
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
t.plan(4);
|
||||||
|
}
|
||||||
|
|
||||||
|
//shown
|
||||||
|
t.open_window( "BaseTypes/Element.html", function( wnd ) {
|
||||||
|
t.delay_call(3, function() {
|
||||||
|
var elem = wnd.document.getElementById("elemID");
|
||||||
|
|
||||||
|
var dims = OpenLayers.Element.getDimensions(elem);
|
||||||
|
t.eq(dims.width, 50, "width correct when displayed");
|
||||||
|
t.eq(dims.height, 100, "height correct when displayed")
|
||||||
|
|
||||||
|
elem.style.display = "none";
|
||||||
|
dims = OpenLayers.Element.getDimensions(elem);
|
||||||
|
t.eq(dims.width, 50, "width correct when hidden");
|
||||||
|
t.eq(dims.height, 100, "height correct when hidden")
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
//hidden
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
function test_hasClass(t) {
|
function test_hasClass(t) {
|
||||||
t.plan(14);
|
t.plan(14);
|
||||||
var has = OpenLayers.Element.hasClass;
|
var has = OpenLayers.Element.hasClass;
|
||||||
|
|||||||
Reference in New Issue
Block a user