probleem map tag
Ik heb ooit een script gekocht welke ik op mijn site gebruik waar een map element in zit om 5 sterren naast elkaar te krijgen welke je door te slepen met je muis kunt kleuren of niet. Het werkt prima maar het is niet xhtml w3 vallid. Het probleem zit op twee plaatsen. Ik zal hieronder het script en de 2 error's zetten. Ik weet in ieder geval al dat <map name> eigenlijk niet bestaat en het moet <map id> zijn. Als ik dit aanpas is het wel vallid maar werkt het niet meer. Ik heb al een hoop gezocht maar heb echt geen idee hoe ik deze twee fouten kan fixen. Ik hoop dat jullie me kunnen helpen !:
Code :
Fouten :
Fout1 :
Fout2 :
Code :
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
echo 'Rating: <img src="images/sterren'.$image.'.png" usemap="#sterren'.$video['id'].'" name="test'.$video['id'].'" border="0" alt="stars" /> ('.$video['aantal_rating'].' votes)
<map name="sterren'.$video['id'].'">
<area href="rate-'.$video['id'].'-1.html" shape="rect" coords="0,0,16,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren1.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
<area href="rate-'.$video['id'].'-2.html" shape="rect" coords="16,0,32,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren2.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
<area href="rate-'.$video['id'].'-3.html" shape="rect" coords="32,0,48,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren3.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
<area href="rate-'.$video['id'].'-4.html" shape="rect" coords="48,0,64,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren4.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
<area href="rate-'.$video['id'].'-5.html" shape="rect" coords="64,0,79,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren5.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
</map>';
<map name="sterren'.$video['id'].'">
<area href="rate-'.$video['id'].'-1.html" shape="rect" coords="0,0,16,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren1.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
<area href="rate-'.$video['id'].'-2.html" shape="rect" coords="16,0,32,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren2.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
<area href="rate-'.$video['id'].'-3.html" shape="rect" coords="32,0,48,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren3.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
<area href="rate-'.$video['id'].'-4.html" shape="rect" coords="48,0,64,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren4.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
<area href="rate-'.$video['id'].'-5.html" shape="rect" coords="64,0,79,14" onMouseOver="document.test'.$video['id'].'.src =\'images/sterren5.png\'" onMouseOut="document.test'.$video['id'].'.src = \'images/sterren'.$image.'.png\'" alt="stars"/>
</map>';
Fouten :
Fout1 :
Quote:
Error Line 78, Column 34: required attribute "id" not specified
<map name="sterren4237">
The attribute given above is required for an element that you've used, but you have omitted it. For instance, in most HTML and XHTML document types the "type" attribute is required on the "script" element and the "alt" attribute is required for the "img" element.
Typical values for type are type="text/css" for <style> and type="text/javascript" for <script>.
<map name="sterren4237">
The attribute given above is required for an element that you've used, but you have omitted it. For instance, in most HTML and XHTML document types the "type" attribute is required on the "script" element and the "alt" attribute is required for the "img" element.
Typical values for type are type="text/css" for <style> and type="text/javascript" for <script>.
Fout2 :
Quote:
Error Line 57, Column 85: there is no attribute "onMouseOver"
…"rect" coords="0,0,16,14" onMouseOver="document.test4238.src ='images/sterren1…
…"rect" coords="0,0,16,14" onMouseOver="document.test4238.src ='images/sterren1…
name="test'.$video['id'].'"
vervangen voor
id="test'.$video['id'].'"
en dan bij onMouseOver="document.test'.$video['id'].'.src
vervangen voor
onMouseOver="document.getElementById(test'.$video['id'].').src
Zoiets dan zou het moeten werken volgens mij (uit mijn hoofd en niet getest) en onmouseover moet in gewone kleine letters, volgens mij is het dan goed.
vervangen voor
id="test'.$video['id'].'"
en dan bij onMouseOver="document.test'.$video['id'].'.src
vervangen voor
onMouseOver="document.getElementById(test'.$video['id'].').src
Zoiets dan zou het moeten werken volgens mij (uit mijn hoofd en niet getest) en onmouseover moet in gewone kleine letters, volgens mij is het dan goed.
Helaas werkt beide niet. Als ik het eerste deel vervang werkt het nog wel maar blijft de xhtml error er gewoon. Als ik de onmouseover verander blijft de error ook en werkt het script ook niet meer helaas.
Edit:
Het probleem met de mouseover is opgelost. Heb alles als kleine letters gedaan en werkt nu. Het probleem met de map blijft wel bestaan !
Gewijzigd op 20/08/2010 00:29:04 door roy marijnissen
In mijn vorige post had ik niet vermeld dat je ook de mouseout moet veranderen. dat word dus ook document.getElementById(test'.$video['id'].').src
Was gister al laat, probeer het dan nog eens.
Volgens mij zo het nu ongeveer moeten werken
Was gister al laat, probeer het dan nog eens.
Volgens mij zo het nu ongeveer moeten werken
<map name="sterren'.$video['id'].'" id="sterren'.$video['id'].'">
je moet name & id hebben om het te laten werken
je moet name & id hebben om het te laten werken
Dat was het idd ! Bedankt voor jullie hulp.




