IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[DOM] L'équivalent de innerHtml existe-t-il sans parser ?


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2003
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 24
    Points : 13
    Points
    13
    Par défaut [DOM] L'équivalent de innerHtml existe-t-il sans parser ?
    Bonjour à tous,

    j'ai lu différents POST concernant l'équivalent en DOM de la fonction innerHtml qui apparemment est ammenée à disparaître.

    Si j'ai bien compris aucune fonction ne remplace dans le modèle DOM la fonction innerHtml permettant de changer le contenu d'une balise DIV par exemple directement avec une chaine de caractère contenenant du HTML.

    Il faut pour ainsi dire parser le HTML et reconnaitre chaque balise pour créer un élement en DOM et affecter chacun de ses attributs avec les méthodes DOM adéquates.

    En fait le but de mon POST est de savoir si ce que je conclu est correct.

    Si oui n'existe-t-il pas des fonctions js existantes permettant de faire ce travail, rien ne sert de recréer la roue ?

    Si non comment faire en DOM pour écrire directement en DOM l'équivalent de code ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById('div_test').innerHTML = '<a href="#"><b>test</b></a>';
    Merci

  2. #2
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    salut

    en fait, moins tu utiliseras de balises inutiles, plus la création de contenu sera simple à écrire...;
    après, il te faut distinguer principalement "conteneurs" et "texte", pour les affecter correctement dans l'élément visé;


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var lien=document.createElement("a");
    lien.href="#";// setAttribute("href","#"), pour les puristes du DOM;
    lien.firstChild.data="text";
    document.getElementById('div_test').appendChild(lien);
    pour la mise en forme du lien, fais confiance à ta feuille de style, hein!


    ==> Plus long que la formule magique créée par Microsoft;
    ==> Evidemment, pas demain la veille qu'on arrêtera d'utiliser innerHTML sur le web;
    ==> Pas d'équivalent plus simple de ces 4 lignes de code;
    ==> Moins de codes html qui se baladent dans les scripts, c'est déjà une bonne chose! si seulement php pouvait aussi interdire echo 'moncodehtmlde10lignes'; on y verrait plus clair!

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2003
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    ok je crois avoir bien déduit alors.

    D'où peut être l'attirance des gens pour prototype.js et RICO (http://openrico.org/home.page mais il marche pas tout le temps), j'ai cru observer dans RICO des syntaxes de réponses en XML contenant des DIV complets de + de 10 lignes en HTML . Le framework se charge de faire le boulot de "parsing" à ta place, mais la licence de RICO me paraissait pas très claire. Ce pkoi j'ai essayer de mettre en place une petite biblio pour le site de ma boite en utilisant XMLHttprequest et des patterns en PHP.

    bref compliké si tu veux également rester W3C un max.

    Voilà c'est cool pour tes conseils.

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JavaScript] [SRC]HtmlXtDom Utiliser le DOM à la place de innerHTML
    Par sekaijin dans le forum Contribuez
    Réponses: 4
    Dernier message: 02/11/2009, 18h09
  2. [DOM] Petit soucis avec innerHTML et ie
    Par dervish dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 21/11/2008, 20h17
  3. [DOM] Split d'un innerHTML multilignes
    Par Amnesiak dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/09/2008, 20h52
  4. [DOM] Un équivalent de "OnClickOut"
    Par Emotion dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 06/11/2007, 08h44
  5. [Syntaxe SQL]Un équivalent de "IF EXISTS" ?
    Par Quentin dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 25/03/2005, 18h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo