Jump to content
php.lv forumi

Javascript PNG transparency fix


mach1ne^

Recommended Posts

Tātad onmouseout un onmouseover maina bildes:

onmouseout="document.vertiba.src='bildes_links'" onmouseover="document.vertiba.src='bildes_links1'"

un tiek nolasīta vērtība no bildes:

img src="bildes_links" name="vertiba" alt=""

 

Bildes ir PNG formātā un ir vajadzīgs transparency, tāpēc, lai ietu uz IE (vecāku par 7), tad tiek izmantots PNG transparency fix.

Transparency fix strādā, bet sākas problēma tad, kad tiek veiktas darbības onmouseout un onmouseover uz IE, jo tad darbojas png fix, kurā nav nodefinētā name="vertiba".

Manuprāt kļūda ir PNG fixā, kurā nav nodefinēta name vērtība.

PNG fixs

 

Provēju pats pierakstīt klāt rindiņu, lai tiek atrasta arī name vērtība, bet kkas nešancēja.

Edited by mach1ne^
Link to comment
Share on other sites

var imgName = (img.name) ? "name='" + img.name + "' " : ""; 

var strNewHTML = "<span " + imgID + imgName + imgClass + imgTitle
	 + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
	 + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
	 + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>";

Link to comment
Share on other sites

kāda jēga mainīt elementu img uz span, ja var atstāt to pašu img ar visiem parametriem http://blog.termi.lv/blog/png-caurspidigums-ie-parlukos/. Ja izmantosi manu, tad img tagam jānorāda width un height.

tavā vietā es ielādētu visas bildes un pēc tam onmouseout="document.vertiba.style='display:none;'" onmouseover="document.vertiba.style='display:block;'".

Jo src tev mainīt bildēm nesanāks, jo tos tu esi samainījis uz span (par ie6 runa)

Link to comment
Share on other sites

yuppio: Man ir šādi:

<td onmouseout="document.sakums.src='bildes/pogas/sakums_u.png'" onmouseover="document.sakums.src='bildes/pogas/sakums_u.png'"><a href="?id=sakums"><img src="bildes/pogas/sakums_u.png" name="sakums" alt="" width="163" height="66"></a></td>

nemec: Tavs variants strādā līdz nenotiek onmousover.

Ielādē otro bildi, kas ir onmousoverā ietverta un čuš, bg transparency pazūd.

To kaut kā var labot?

Edited by mach1ne^
Link to comment
Share on other sites

Šādai lietai es izmantoju jQuery ar http://jquery.khurshid.com

 

<head>
<script type="text/javascript">
function fixPng()
{
$.ifixpng('/img/1x1.gif');
$('img[@src$=.png]').ifixpng();
} // fixPng

$(document).ready(function(){
	fixPng();
});
</script>
</head>

<body>
<img
src="/img/bilde.png"
onmouseover="this.src='/img/bilde-over.png'; $(this).ifixpng();"
onmouseout="this.src='/img/bilde.png'; $(this).ifixpng();"
>
</body>

 

Līdz vēmienam ērti.

Link to comment
Share on other sites

×
×
  • Create New...