image = document.createElement("image");
image.src ="http://jsfiddle.net/img/logo.png";
e = document.getElementById('id');
$(image).load(function() {
    $(image).hide();
    e.appendChild(image);
    $(image).fadeIn(1000);
});     

Qu'est-ce qui fait que ce code ne fonctionne que dans Chrome? http://jsfiddle.net/QLFf3/1/

0
user669677 12 nov. 2011 à 16:15

3 réponses

Meilleure réponse

Vous devez créer un élément "img". Il n'y a pas d'élément natif appelé "image"

Modifier Puisqu'il semble que vous utilisez jQuery, vous pouvez simplement faire ceci:

$('<img/>')
    .attr('src', 'http://jsfiddle.net/img/logo.png')
    .css({display:'none'})
    .appendTo('body')
    .load(function(){
        $(this).fadeIn(1000);
    });

Bien sûr, le bit .appendTo () doit cibler l'endroit du DOM que vous visez.

5
Geuis 12 nov. 2011 à 12:38

Vous pouvez utiliser

image = new Image();

Au lieu de

image = document.createElement("image");

Voir http://bytes.com/topic/ javascript / answers / 775889-document-createelement-img-vs-new-image

0
Volkmar Rigo 12 nov. 2011 à 12:29

Vérifiez ceci.

Essayez, image = new Image();

0
user405398user405398 12 nov. 2011 à 12:29
8104385