| Autor | Zpráva | ||
|---|---|---|---|
| blast3r Profil |
#1 · Zasláno: 7. 6. 2012, 12:39:23
Zdravím,
Snažím sa pracovať s jedným elementom <div id="PixelFrame"> a stále mi to hádže error. JS Kód: <script language="javascript" type="text/javascript">
function Pixel(color) {
this.color = color;
this.drawPixel();
}
Pixel.prototype.drawPixel = function () {
var frame = document.getElementById("PixelFrame");
var pixel = document.createElement("div");
switch (this.color) {
case "white":
alert("white");
pixel.setAttribute("class", "WhitePixel");
break;
default:
alert("err");
break;
}
frame.appendChild(pixel);
}
window.onload = initPage();
function initPage() {
Pixel1 = new Pixel("white");
}
</script>HTML: <body> <form id="form1"> <div id="PixelFrame"> </div> </form> </body> Na zvýraznenom riadku mi to hádže error: Nelze načíst hodnotu vlastnosti appendChild: Objekt má hodnotu Null nebo není definován. |
||
| _es Profil |
#2 · Zasláno: 7. 6. 2012, 12:46:10
|
||
| Chamurappi Profil |
#3 · Zasláno: 7. 6. 2012, 12:51:40
Reaguji na blast3ra:
„pixel.setAttribute("class", "WhitePixel");“ Proč setAttribute? Proč ne pixel.className? Tohle ti nebude fungovat správně ve všech prohlížečích.
|
||
| blast3r Profil |
_es:
Čítal som to, pred tým, než som pridal príspevok a zdalo sa mi, že mám všetko tak ako má byť. Mohol by si mi to prosím ťa trošku rozpísať? :-) Chamurappi: No o tom som nevedel, ďakujem. |
||
| Chamurappi Profil |
#5 · Zasláno: 7. 6. 2012, 12:54:33
Reaguji na blast3ra:
V době, kdy voláš funkci initPage, ještě element s daným id neexistuje. Voláš ji na řádku 27, ne až při události onload.
|
||
| _es Profil |
#6 · Zasláno: 7. 6. 2012, 13:09:02
blast3r:
„Mohol by si mi to prosím ťa trošku rozpísať? :-)“ V tom odkazovanom odseku to je rozpísané dosť, stačí si to len pozorne prečítať. |
||
| blast3r Profil |
Aha, takže stačilo odstrániť ()
function initPage() {
Pixel1 = new Pixel("white");
}
window.onload = initPage; |
||
|
Časová prodleva: 13 let
|
|||
0