MediaWiki:Common.js/IE60Fixes.js
Note: After saving, you have to bypass your browser's cache to see the changes. Internet Explorer: hold down the Ctrl key and click the Refresh or Reload button. Firefox: hold down the Shift key while clicking Reload (or press Ctrl-Shift-R). Google Chrome and Safari users can just click the Reload button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
/**
* Correctly handle PNG transparency in Internet Explorer 6.
* http://homepage.ntlworld.com/bobosola. Updated 18-Jan-2006.
*
* Adapted for Wikipedia by Remember_the_dot and Edokter.
*
* http://homepage.ntlworld.com/bobosola/pnginfo.htm states "This page contains more information for
* the curious or those who wish to amend the script for special needs", which I take as permission to
* modify or adapt this script freely. I release my changes into the public domain.
*/
function PngFix()
{
try
{
if (!document.body.filters)
{
window.PngFixDisabled = true
}
}
catch (e)
{
window.PngFixDisabled = true
}
if (!window.PngFixDisabled)
{
var documentImages = document.images
var documentCreateElement = document.createElement
var funcEncodeURI = encodeURI
for (var i = 0; i < documentImages.length;)
{
var img = documentImages[i]
var imgSrc = img.src
if (imgSrc.substr(imgSrc.length - 3).toLowerCase() == "png" && img.complete && !img.onclick)
{
if (img.useMap)
{
img.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + funcEncodeURI(imgSrc) + "')"
img.src = "//upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif"
i++
}
else
{
var outerSpan = documentCreateElement("span")
var innerSpan = documentCreateElement("span")
var outerSpanStyle = outerSpan.style
var innerSpanStyle = innerSpan.style
var imgCurrentStyle = img.currentStyle
outerSpan.id = img.id
outerSpan.className = img.className
outerSpanStyle.backgroundImage = imgCurrentStyle.backgroundImage
outerSpanStyle.borderWidth = imgCurrentStyle.borderWidth
outerSpanStyle.borderStyle = imgCurrentStyle.borderStyle
outerSpanStyle.borderColor = imgCurrentStyle.borderColor
outerSpanStyle.display = "inline-block"
outerSpanStyle.fontSize = "0"
outerSpanStyle.verticalAlign = "middle"
if (img.parentElement.href) outerSpanStyle.cursor = "hand"
innerSpanStyle.width = "1px"
innerSpanStyle.height = "1px"
innerSpanStyle.display = "inline-block"
innerSpanStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + funcEncodeURI(imgSrc) + "')"
outerSpan.appendChild(innerSpan)
img.parentNode.replaceChild(outerSpan, img)
}
}
else
{
i++
}
}
}
}
window.attachEvent("onload", PngFix)