Aide - Recherche - Membres - Calendrier
Version complète : Problèmes De Validation
La Communauté TitaXium > Service Communication > Espace Developpement
Nokilling
Bonsoir tous le monde smile.gif
Aujourd'hui j'ai décidé de refaire complètement le code d'un design que j'ai découpé pour le mettre aux normes, mais voila, j'ai des problèmes de validation avec le javascript :s

Par exemple, lorsque j'utilise le code suivant :
Code
<div class="picture"><img id="pic-10" src="gallery/wall1.jpg" style="height:93px;width:124px;display:none;" alt="picture" onload="new Effect.Appear('pic-10',1);"/></div>


Le validateur me dit comme erreur :
Citation
there is no attribute "onload".


Donc j'aurais voulu savoir ce qu'il fallait faire pour que ce bouts de code soit valide XHTML 1.0 Strict.

Merci d'avance smile.gif
ED
onload s'applique uniquement à l'élement body. cf HTML 4.01

Sinon tu peux faire un script du type:
Code
window.onload = function() {
// le corps de la fonction
}


Et la fonction s'exécutera au chargement de la page.
Jete un coup d'oeil la
Nokilling
Citation (ED @ samedi 04 août 2007 à 10h46) *
onload s'applique uniquement à l'élement body. cf HTML 4.01

Sinon tu peux faire un script du type:
Code
window.onload = function() {
// le corps de la fonction
}


Et la fonction s'exécutera au chargement de la page.
Jete un coup d'oeil la



Oui ça je savais, mais sur certain site ils disaient que sa marchaient aussi pour les images ( d'ailleur sa marche sauf sous Opera :pinch: ), car mon problème est que le résultat est fait en AJAX, donc il se peut que ma réponse du serveur soit arrivé, mais pas mon image alors que mon Body lui est déjà chargé smile.gif
ED
Bah tu peux très bien gérer ca de facon synchrone ou asynchrone.
Nokilling
Là j'ai pas tous comprit à la réponse tongue.gif

Car même si l'objet que j'ai envoyé au serveur, et qu'il m'est revenue, ba mes images ne sont pas forcément complètement chargé :devil: et c'est pour ça que j'utilisais la fonction onload, car elle ne se mettait en route que lorsque j'avais mon image de chargé smile.gif

Sinon voila le code que j'utilise en Javascript :
Code
function indexGallery(id){
    request();
    var url = "ajax/gallery.php";
    req.open("POST",url,true);
    req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    req.send("index=i&id="+id);
    req.onreadystatechange = function()
    {
        if(req.readyState == 4){
            if(req.status == 200){
                var text = req.responseText;
                getElement("index_gallery").innerHTML = text;
            }
            else
            {
                getElement("index_gallery").innerHTML = "La page recherché n'existe pas ";
            }
        }
        else
        {
            getElement("index_gallery").innerHTML = "Preload";
        }
    }
}


Et là, même quand il m'affiche mon texte, et ba défois mes images ne sont pas encore chargé, donc sa fait des blancs dans la liste d'image smile.gif
ED
cf Wikipedia

C'est ce que tu fais avec le:
Code
f(xhr_object.readyState == 4)

else

Tant que la requête n'est pas terminé de s'exécuter ( readyState != 4 ) tu affiches "preload".

Le porblème c'est que les images ne sont pas traités par javascript mais par ton navigateur.

readyState == 4 pour Javascript dès qu'il a recu le "code texte" ensuite ton navigateur charge l'image ce qui peut etre lent pour différentes raisons certaines indépendantes du site:
  • Problème de bande passante
  • Cache navigateur saturé / manque de ram
  • serveur d'hébergement d'image trop long à répondre.
Nokilling
Citation (ED @ vendredi 10 août 2007 à 15h10) *
cf Wikipedia

C'est ce que tu fais avec le:
Code
f(xhr_object.readyState == 4)

else

Tant que la requête n'est pas terminé de s'exécuter ( readyState != 4 ) tu affiches "preload".

Le porblème c'est que les images ne sont pas traités par javascript mais par ton navigateur.

readyState == 4 pour Javascript dès qu'il a recu le "code texte" ensuite ton navigateur charge l'image ce qui peut etre lent pour différentes raisons certaines indépendantes du site:
  • Problème de bande passante
  • Cache navigateur saturé / manque de ram
  • serveur d'hébergement d'image trop long à répondre.



Oui voila, c'est pour ça que je trouvais bien intéréssant le onload sur les images car sa fait un semblant de préload pour chacune des images, même si au finale l'effet ne se charge que lorsque l'image est chargé tongue.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2010 Invision Power Services, Inc.