<public:component> <public:attach event="onpropertychange" onevent="propertyChanged()" /> <script> var supported = /MSIE (5\.5)|[6789]/.test(navigator.userAgent) && navigator.platform == "Win32"; var realSrc; var blankSrc = "skins/default/images/blank.gif"; if (supported) fixImage(); function propertyChanged() { if (!supported) return; var pName = event.propertyName; if (pName != "src") return; // if not set to blank if ( ! new RegExp(blankSrc).test(src)) fixImage(); }; function fixImage() { // get src var src = element.src; // check for real change if (src == realSrc) { element.src = blankSrc; return; } if ( ! new RegExp(blankSrc).test(src)) { // backup old src realSrc = src; element._original_src = realSrc; } // test for png if ( /\.png$/.test( realSrc.toLowerCase() ) ) { // set blank image element.src = blankSrc; // set filter element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')"; } else { // remove filter element.runtimeStyle.filter = ""; } } </script> </public:component>