Bonsoir,
j'ai un petit script JS pour la transparences des png sous IE,
Il n'utilise aucune image ce que je trouve plutôt pas mal, il se charge asser rapidement ce qui est un bon point aussi..
par contre il ne fonctionne que pour la balise img, ce qui fait que toutes les images qui sont mis en css avec la commande 'background' ne sont pas pris en compte, c'est là qu'est l'os
peut on corriger ce problème sans trop augmenter le volume du script?
est ce que c'est possible sans utiliser d'image et est-ce la meilleur méthode?
Merci d'avance
<script language="JavaScript" type="text/JavaScript">
function correctPNG() // correctly handle PNG transparency in Win IE 5.5 or higher.
{
for(var i=0; i<document.images.length; i++)
{
var img = document.images[i]
var imgName = img.src.toUpperCase()
if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
{
var imgID = (img.id) ? "id='" + img.id + "' " : ""
var imgClass = (img.className) ? "class='" + img.className + "' " : ""
var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
var imgStyle = "display:inline-block;" + img.style.cssText
if (img.align == "left") imgStyle = "float:left;" + imgStyle
if (img.align == "right") imgStyle = "float:right;" + imgStyle
if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
var strNewHTML = "<span " + imgID + imgClass + imgTitle
+ " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
+ "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
+ "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
img.outerHTML = strNewHTML
i = i-1
}
}
}
window.attachEvent("onload", correctPNG);
</script>[/i]