Objet en argument dans une fonction

1300371 Messages postés 2 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 2 juin 2006 - 2 juin 2006 à 11:16
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 2 juin 2006 à 12:48
Est il possible de passer un objet (par exemple une image) en parametre dans une fonction ??

Sachant que par la suite j'apelle recursivement ma fonction ...

3 réponses

nickadele Messages postés 1251 Date d'inscription mercredi 7 août 2002 Statut Modérateur Dernière intervention 10 avril 2013
2 juin 2006 à 11:39
Pourquoi pas ??
Biensur que oui, lorsque tu passes en paramètre un form, il s'agit d'un objet, même si c'est pas aussi concret qu'une image.
Maintenant quand au fait de l'utilité de passer systématiquement le même objet dans une récursivité c'est à voir !!!

Nickadele
0
1300371 Messages postés 2 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 2 juin 2006
2 juin 2006 à 11:47
function TrueSize(image,X,Y,Xmini,Ymini)
{
    image.style.position = "absolute";
    SetSize(image,X,Y,Xmini,Ymini,1);
}

function SetSize(image,X,Y,Xmini,Ymini,i)
{
    var vitesse = 15;
    
    //var image = document.getElementById('image');
    
    curX = Math.round(Xmini + (X-Xmini)*i/vitesse);
    curY = Math.round(Ymini + (Y-Ymini)*i/vitesse);
    image.style.height = curX;
    image.style.width = curY;
    
    if (X>Xmini)
    {
        var ecartX = Math.round(-(curX - Xmini)/2);
        var ecartY = Math.round(-(curY - Ymini)/2);
    }
    else
    {
        var ecartX = Math.round(-(curX - X)/2);
        var ecartY = Math.round(-(curY - Y)/2);
    }
    
    image.style.top = ecartX;
    image.style.left = ecartY;
    
    i=i+1;
    if (i<=vitesse)
        setTimeout("SetSize("+X+","+Y+","+Xmini+","+Ymini+","+i+")",1);
    
}

-> dans la fonction SetSize(), j'ai une erreur "'style' a la valeur null ou n'est pas un objet ..."
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
2 juin 2006 à 12:48
Hello,

ce qu'il faut voir, c'est ce que tu passes en argument à ta fonction.
un "objet" html ... là, tu parles d'une balise img je suppose. Or, tu dois passer à ta fonction l'objet complet document.getElementById () par exemple, ou l'objet créé via DOM, ou passer l'id (voire le nom mais bon...)  et dans ce cas, à charge à ta fonction de trouver l'élément qui s'y rapporte.
0
Rejoignez-nous