diff --git a/lib/OpenLayers/Tile/Image/IFrame.js b/lib/OpenLayers/Tile/Image/IFrame.js
index <HASH>..<HASH> 100644
--- a/lib/OpenLayers/Tile/Image/IFrame.js
+++ b/lib/OpenLayers/Tile/Image/IFrame.js
@@ -196,6 +196,19 @@ OpenLayers.Tile.Image.IFrame = {
             OpenLayers.Tile.Image.prototype.setImgSrc.apply(this, arguments);
         }
     },
+    
+    /**
+     * Method: onImageLoad
+     * Handler for the image onload event
+     */
+    onImageLoad: function() {
+        //TODO de-uglify opacity handling
+        OpenLayers.Tile.Image.prototype.onImageLoad.apply(this, arguments);
+        if (this.useIFrame === true) {
+            this.imgDiv.style.opacity = 1;
+            this.frame.style.opacity = this.layer.opacity;
+        }
+    },
 
     /**
      * Method: createBackBuffer
Overriding onImageLoad to set the opacity on the correct element.