OpenLayers OpenLayers

Changeset 7299

Show
Ignore:
Timestamp:
05/31/08 13:11:24 (3 months ago)
Author:
crschmidt
Message:

Fix for "Util.modifyAlphaImageDiv makes hidden elements reappear in IE6.".
Patch by jwpage. (Closes #1520)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/openlayers/lib/OpenLayers/Util.js

    r7014 r7299  
    428428     
    429429    if (OpenLayers.Util.alphaHack()) { 
    430  
    431         div.style.display = "inline-block"; 
     430        if(div.style.display != "none") { 
     431            div.style.display = "inline-block"; 
     432        } 
    432433        if (sizing == null) { 
    433434            sizing = "scale"; 
  • trunk/openlayers/tests/Util.html

    r6724 r7299  
    401401 
    402402    function test_Util_modifyAlphaImageDiv(t) { 
    403         t.plan( 19 ); 
     403        t.plan( 20 ); 
    404404 
    405405        var imageDiv = OpenLayers.Util.createAlphaImageDiv(); 
     
    461461        if (OpenLayers.Util.alphaHack()) { 
    462462         
    463             t.eq(imageDiv.style.display, "inline-block", "imageDiv.style.display set correctly"); 
    464  
    465463            var filter = "progid:DXImageTransform.Microsoft" + 
    466464                         ".AlphaImageLoader(src='" + img + "', " + 
     
    476474            t.ok(true, "image filter value not set (not in IE)"); 
    477475        } 
     476 
     477        var imageDiv = OpenLayers.Util.createAlphaImageDiv(); 
     478        var display = "none"; 
     479        imageDiv.style.display = display; 
     480        OpenLayers.Util.modifyAlphaImageDiv(imageDiv, id, xy, sz, img, position, border, sizing, opacity); 
     481        t.eq(imageDiv.style.display, display, "imageDiv.style.display set correctly, if 'none'"); 
     482 
     483        var imageDiv = OpenLayers.Util.createAlphaImageDiv(); 
     484        var display = "block"; 
     485        imageDiv.style.display = display; 
     486        OpenLayers.Util.modifyAlphaImageDiv(imageDiv, id, xy, sz, img, position, border, sizing, opacity); 
     487        t.eq(imageDiv.style.display, "inline-block", "imageDiv.style.display set correctly, if not 'none'"); 
     488 
     489         
    478490 
    479491        var imageDiv = OpenLayers.Util.createAlphaImageDiv(id, xy, sz, img, position, border, "scale", opacity);