J'ai essayé du code HTML DOM sur plusieurs sites, mais cela ne fonctionne pas. Cela n'ajoute rien. Quelqu'un at-il un exemple de travail à ce sujet?
this.img = document.createElement("img");
this.img.src = "img/eqp/"+this.apparel+"/"+this.facing+"_idle.png";
src = getElementById("gamediv");
src.appendChild(this.img)
Mais cela n'ajoute rien au div. (gamediv) J'ai aussi essayé document.body, sans résultat.
Merci d'avance.
Vous devez utiliser document.getElementById()
à la ligne 3.
Si vous essayez cela maintenant dans la console Firebug:
var img = document.createElement("img");
img.src = "http://www.google.com/intl/en_com/images/logo_plain.png";
var src = document.getElementById("header");
src.appendChild(img);
... vous obtiendrez ceci:
Ajout d'images au HTML avec JavaScript http://img94.imageshack.us/img94/3769/googso2.png
Cela marche:
var img = document.createElement('img');
img.src = 'img/eqp/' + this.apparel + '/' + this.facing + '_idle.png';
document.getElementById('gamediv').appendChild(img)
Ou en utilisant jQuery:
$('<img/>')
.attr('src','img/eqp/' + this.apparel + '/' + this.facing + '_idle.png')
.appendTo('#gamediv');
Avec un peu de recherche, j'ai trouvé que javascript ne sait pas qu'un objet de document existe sauf si l'objet a déjà été chargé avant le code de script (comme javascript lit une page).
<head>
<script type="text/javascript">
function insert(){
var src = document.getElementById("gamediv");
var img = document.createElement("img");
img.src = "img/eqp/"+this.apparel+"/"+this.facing+"_idle.png";
src.appendChild(img);
}
</script>
</head>
<body>
<div id="gamediv">
<script type="text/javascript">
insert();
</script>
</div>
</body>
ou vous pouvez simplement
<script>
document.write('<img src="/*picture_location_(you can just copy the picture and paste it into the the script)*\"')
document.getElementById('pic')
</script>
<div id="pic">
</div>
Débarrassez-vous aussi des instructions this
var img = document.createElement("img");
img.src = "img/eqp/"+this.apparel+"/"+this.facing+"_idle.png";
src = document.getElementById("gamediv");
src.appendChild(this.img)