Publicité
+ Répondre à la discussion Actualité déjà publiée
Affichage des résultats 1 à 7 sur 7
  1. #1
    Rédacteur
    Avatar de danielhagnoul
    Homme Profil pro Daniel Hagnoul
    Étudiant perpétuel
    Inscrit en
    février 2009
    Messages
    4 659
    Détails du profil
    Informations personnelles :
    Nom : Homme Daniel Hagnoul
    Âge : 64
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : février 2009
    Messages : 4 659
    Points : 17 592
    Points
    17 592

    Par défaut jQuery 1.9.1 est disponible

    jQuery 1.9.1 est disponible
    Correction de bogues

    N'oubliez pas de lire le guide de mise à niveau et d'utiliser le plugin jQuery Migrate pendant la phase d'adaptation de vos anciens codes. Le plugin vous signalera tous les problèmes dans la console de votre navigateur.

    Code :
    1
    2
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script src="http://code.jquery.com/jquery-migrate-1.1.0.js"></script
    Les nouveaux fichiers ont été envoyés aux serveurs de code de Google et de Microsoft, ils devraient être disponibles.

    Liste des modifications

    Source

    Référence

    Avalanche de nouveautés jQuery

    Propositions de Q/R pour la FAQ jQuery

    plugin dialogModal

    Si un message vous a aidé ou vous semble pertinent, votez pour lui !

  2. #2
    Membre Expert
    Inscrit en
    décembre 2003
    Messages
    991
    Détails du profil
    Informations forums :
    Inscription : décembre 2003
    Messages : 991
    Points : 1 765
    Points
    1 765

    Par défaut

    Bonjour

    Merci beaucoup Daniel pour le lien vers JQuery Migrate, ça va m'être fort utile
    Stop hitting yourself! We created this plugin to make things easy on you



    Pourrais je poser une question dans ce post ? et si je suis HS, j'imagine que tu n'hésiteras pas à me virer.

    je ne suis pas sur de bien comprendre ce qu'il est signifié sous ce chapitre :
    http://jquery.com/upgrade-guide/1.9/...e-html-content

    Loading and running scripts inside HTML content

    Prior to 1.9, any HTML-accepting method (e.g., $(), .append(), or .wrap()) executed any scripts in the HTML and removed them from the document to prevent them from being executed again. This still broke in situations where a script might be removed and reinserted into the document using methods such as .wrap(). As of 1.9, scripts inserted into a document are executed, but left in the document and tagged as already executed so they won't be executed again even if they are removed and reinserted.

    Despite this change, it is very poor practice to mix executable JavaScript into HTML markup; it has design, security, reliability, and performance implications. For example, external script tags included in HTML are fetched synchronously and then evaluated, which can take a significant amount of time. There is no interface to notify when or whether those scripts load, or to take corrective actions when there is an error.

    Code that attempts to load a script by cloning an existing script tag and injecting that clone into the document will no longer work, because the cloned script tag has already been marked as executed. To load a new script, use jQuery.getScript() instead.
    Quelqu'un saurait il en dire plus sur la partie en gras ?
    Doit on comprendre que l'on charge de nouveaux scripts ou instructions javascript dans le contenu HTML d'une page déja formée, c'est plutôt une très mauvaise pratique ?

    Est ce que cela concerne des méthodes type load() que j'utilise pour certaines parties de mes apps ? et qui chargent à la fois du html et du javascript qui s'exécute sans que je ne me sois jusqu'alors posé la question.
    Cela dit cela pourrait peut-être expliquer certains soucis de toggle() que je rencontre.

  3. #3
    Rédacteur
    Avatar de danielhagnoul
    Homme Profil pro Daniel Hagnoul
    Étudiant perpétuel
    Inscrit en
    février 2009
    Messages
    4 659
    Détails du profil
    Informations personnelles :
    Nom : Homme Daniel Hagnoul
    Âge : 64
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : février 2009
    Messages : 4 659
    Points : 17 592
    Points
    17 592

    Par défaut

    Bonsoir

    Vous devez retenir qu'il ne faut jamais mélanger vos scripts et votre HTML.

    Qu'un script doit se trouver dans un fichier ".js" et qu'il se charge uniquement avec $.getScript() et jamais avec load().

    Sur le forum, dans la FAQ et dans la plupart des tutoriels on trouve un seul fichier contenant HTML, CSS et JS par paresse et par facilité.

    En production, comme le CSS, les scripts doivent toujours être dans des fichiers séparés et compressés (minified, abbréviation min).

    Pour la compression (n'oubliez pas de garder une copie non compressée pour le développement), j'utilise régulièrement : http://closure-compiler.appspot.com/home (option "simple" pour jQuery).

    Propositions de Q/R pour la FAQ jQuery

    plugin dialogModal

    Si un message vous a aidé ou vous semble pertinent, votez pour lui !

  4. #4
    Membre Expert
    Inscrit en
    décembre 2003
    Messages
    991
    Détails du profil
    Informations forums :
    Inscription : décembre 2003
    Messages : 991
    Points : 1 765
    Points
    1 765

    Par défaut

    Salut
    merci
    je me doutais un peu que c'est ce qu'il faut en comprendre

    du coup je relisais la FAQ jquery
    http://javascript.developpez.com/faq...oduction#Where
    et (désolé si je suis lourd... hum ) ton exemple est bien un bon exemple de ce qu'il faut faire ?
    Il n'y a pas d'importance majeure à cantonner les inclusions de scripts à la partie head d'un fichier HTML, ce qui m'arrangerait bien ?
    Et cela va au delà du simple aspect ""maintenance du code" à lire les implications de l'upgrade guide

    précision, je ne charge pas de script à proprement parler, je charge avec load() des htmls formés incluant des instructions de script.

    Je vais changer mon approche, j'ai pu lire par ailleurs qu'à partir de jquery 2.0 cette façon de faire ne devrait plus fonctionner.

  5. #5
    Expert Confirmé Sénior

    Homme Profil pro Alain Bontemps
    Développeur Web
    Inscrit en
    septembre 2010
    Messages
    2 648
    Détails du profil
    Informations personnelles :
    Nom : Homme Alain Bontemps
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : septembre 2010
    Messages : 2 648
    Points : 4 529
    Points
    4 529

    Par défaut

    Salut,

    Faites attention avec jquery-migrate.

    Je viens de passer deux heures en me demandant pourquoi la console me renvoyait l'erreur :
    Code :
    1
    2
    NS_ERROR_XPC_BAD_CONVERT_JS: Could not convert JavaScript argument arg 0 [nsIDOMWindow.getComputedStyle]
    jquery-1.9.1.js (ligne 6898)
    En cherchant un peu ce serait peut-être un bug spécifique sous Firefox, mais si j'utilise une lib c'est aussi pour ne pas avoir à me préoccuper de la compatibilité du code entre les différents navigateurs... Et là je ne savais même pas comment chercher dans mon code l'origine de ce pb, ni même s'il était judicieux de le faire.
    Jusqu'à ce que je supprime la ligne qui inclue jquery-migrate et là par miracle tout est rentré dans l'ordre. J'ai mis deux heures avant d'avoir l'idée de supprimer jquery-migrate, évidemment puisque c'était sensé m'aider


    Bon pour le reste ma migration vers 1.9.1 (depuis v1.8.2) se passe bien.

    Evidemment n'oubliez pas d'utiliser conjointement la dernière version de jquery ui : la version 1.10.2 (sinon jquery 1.9 n'est pas compatible avec ui 1.9).
    - Réalisations
    - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.

  6. #6
    Rédacteur
    Avatar de danielhagnoul
    Homme Profil pro Daniel Hagnoul
    Étudiant perpétuel
    Inscrit en
    février 2009
    Messages
    4 659
    Détails du profil
    Informations personnelles :
    Nom : Homme Daniel Hagnoul
    Âge : 64
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : février 2009
    Messages : 4 659
    Points : 17 592
    Points
    17 592

    Par défaut

    Bonsoir

    Le plugin Migrate n'est pas exempt de bogues, la dernière version disponible : <script src="http://code.jquery.com/jquery-migrate-1.1.1.js"></script>.

    Source

    Propositions de Q/R pour la FAQ jQuery

    plugin dialogModal

    Si un message vous a aidé ou vous semble pertinent, votez pour lui !

  7. #7
    Expert Confirmé Sénior

    Homme Profil pro Alain Bontemps
    Développeur Web
    Inscrit en
    septembre 2010
    Messages
    2 648
    Détails du profil
    Informations personnelles :
    Nom : Homme Alain Bontemps
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : septembre 2010
    Messages : 2 648
    Points : 4 529
    Points
    4 529

    Par défaut

    Merci, mais la nouvelle version ne corrige pas le problème...

    J'espère que je n'aurai pas de pb en ayant supprimé "jquery-migrate". J'ai vérifié la doc jquery et mes fonctionnalités dans "chrome" et "firefox" sont ok mais je n'ai pas les moyens de tester avec tous les navigateurs et j'ai plus de 100ko de code (une fois compressé) sans compter les lib externes...

    Pour l'instant j'ai juste dû changer quelques ".attr" pour des".prop". et modifier un peu la lib "flot" qui utilisait "$.browser". Je croise les doigts pour que ça s'arrête là
    - Réalisations
    - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •