Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Récupérer des variables à partir de la page affichée

2 réponses
Avatar
Joe le Bonka
Bonjour !

Toujours dans mes aléas avec le javascript :

Voilà une page html est crée dynamiquement en y ajoutant du texte.
Un code javascript est ajouté à cette page.
L'objectif est que au prochain lancement dans un navigateur de cette page,
le javascript doit pouvoir analyser le contenu textuel qui a été inséré en
HTML dans la phase précédente.

Est-ce possible d'assigner des variables en javascript à partir du texte
contenu dans cette page ?

Imaginons par exemple que la page contienne une phrase du genre "Mon titre
de page".
Est ce que je peux récupérer cette phrase dans une variable ?
Si oui, pouvez-vous m'expliquer vite fait le cheminement ?

Merci !

2 réponses

Avatar
YD

Voilà une page html est crée dynamiquement en y ajoutant du texte.
Un code javascript est ajouté à cette page.
L'objectif est que au prochain lancement dans un navigateur de cette page,
le javascript doit pouvoir analyser le contenu textuel qui a été inséré en
HTML dans la phase précédente.

Est-ce possible d'assigner des variables en javascript à partir du texte
contenu dans cette page ?


Oui !

Imaginons par exemple que la page contienne une phrase du genre "Mon titre
de page".
Est ce que je peux récupérer cette phrase dans une variable ?
Si oui, pouvez-vous m'expliquer vite fait le cheminement ?


Plusieurs possibilités -- qui ne fonctionnent qu'avec des navigateurs récents .

- Utiliser innerHTML : avec document.body.innerHTML on récupère le contenu
textuel du corps du document (balisage compris) qu'on peut ensuite analyser
à coup d'expressions régulières en Javascript. Laborieux...

- Utiliser la collection childNodes : avec des boucles, éventuellement des
fonctions récursives, parcourir document.documentElement.childNodes (ou se
servir de firstChild et nextSibling pour arriver au même résultat).

- Si on connaît les éléments que l'on veut atteindre, on peut utiliser
document.getElementsByTagName().

Dans tous les cas ce n'est pas simple et suppose une bonne connaissance des
navigateurs et de leurs modèles de document. Donc aller traîner sur :
<http://www.mozilla.org/docs> pour les navigateurs Gecko et sur MSDN pour IE.

--
Y.D.

Avatar
Joe le Bonka
YD wrote:

snip [...]


Est-ce possible d'assigner des variables en javascript à partir du
texte contenu dans cette page ?


Oui !

Imaginons par exemple que la page contienne une phrase du genre "Mon
titre de page".
Est ce que je peux récupérer cette phrase dans une variable ?
Si oui, pouvez-vous m'expliquer vite fait le cheminement ?


Plusieurs possibilités -- qui ne fonctionnent qu'avec des navigateurs
récents .

- Utiliser innerHTML : avec document.body.innerHTML on récupère le
contenu textuel du corps du document (balisage compris) qu'on peut
ensuite analyser
à coup d'expressions régulières en Javascript. Laborieux...

- Utiliser la collection childNodes : avec des boucles,
éventuellement des fonctions récursives, parcourir
document.documentElement.childNodes (ou se servir de firstChild et
nextSibling pour arriver au même résultat).

- Si on connaît les éléments que l'on veut atteindre, on peut utiliser
document.getElementsByTagName().

Dans tous les cas ce n'est pas simple et suppose une bonne
connaissance des navigateurs et de leurs modèles de document. Donc
aller traîner sur : <http://www.mozilla.org/docs> pour les
navigateurs Gecko et sur MSDN pour IE.


Grand merci pour les infos.

Là je réflechissais à une autre technique en utilisant la capture par
sélection :
var capture=document.selection.createRange().text;

Mais mon nouveau soucis est donc dorénavant d'exécuter une sélection ligne
par ligne par le javascript pour la capturer (en plus de chercher du coté
des infos que vous venez de me donner !).
Merci encore.