onerror niet xhtml valid

Status
Niet open voor verdere reacties.

monkey25

Gebruiker
Lid geworden
30 mrt 2008
Berichten
5
ik wil met een afbeelding op mijn site als hij niet geladen kan worden -omdat de plaats niet klopt ofzoiets- een ander plaatje laten zien, maar als ik de onerror functie gebruik is dat niet XHTML valid, is er een andere optie die wel valid is?
 
Het is wel toegestaan om door middel van javascript het onerror attribute toe te voegen.

Het gemakkelijkst vind ik zelf om een javascript library te gebruiken hiervoor, omdat je dan weinig last hebt van het gebruik van verschillende browsers. voorbeelden hiervan zijn Jquery, Mootools en prototype.

Ik denk alleen niet de het onerror event geschikt is voor dat wat jij wil. Deze is namelijk oorspronkelijk bedoeld om script errors op een pagina op te vangen als ik me niet vergis, en dat is niet wat je wilt als ik het goed begrijp.

op deze pagina http://www.daniweb.com/forums/thread66187.html vind je (in het engels) een script wat na het laden van de pagina kijkt of plaatjes wel een hoogte hebben en anders de url aanpast (2e gegeven script). Ik denk dat je hier wel wat aan hebt. Deze kun je dan aanroepen met window.onload = functie; op deze wijze blijft je pagina xhtml valid. Het is niet toegestaan om deze in het onload atribuut van de body tag te plaatsen, omdat dit ook niet xhtml valid is.
 
Laatst bewerkt:
ik ben een beginner met javasript hoor maar; ik snap het nog steeds niet, als ik beide scripts in de head tag staat gebeurt er nog steeds niks als de URL van een plaatje fout is.
 
Ok, de url geeft nu een 404 dus ik kan het zelf ook niet meer proberen. Had zelf wat in elkaar geknutseld met de height property, maar dat werkte niet. Onderstaande stukje werkt bij mij in ff2, ie7 en safari voor windows. Maar alleen op een webserver en niet lokaal.
Code:
<html>
<head>
<script type="text/javascript">
window.onload = checkImages;

function checkImages(){
	if(document.images){
		for(i = 0; i<document.images.length; i++){
			var img = new Image();
			img.src=document.images[i].src;
			if(!img.complete){
				document.images[i].src="default.gif";
			}
		}
	}
}
</script> 
</head>
<body>
<img src="plaatje.gif" />
</body>
</html>

een nadeel is het gebruik van de complete property van de image, deze is niet W3C compatible.
 
Laatst bewerkt:
die 404 komt omdat je de L was vergeten bij de link, deze zijn .html en niet .htm
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan