Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Comment supprimer un CreateProcessingInstruction

Envoyé par : LeNewbie

Date : 13/05/2005 09:46

Que dire de plus que ce qui est deja dans le titre. Ah si voici mon bout de code :) :

var stylesheet=opener.document.createProcessingInstruction("xml-stylesheet",valeurdata);
opener.document.insertBefore(stylesheet, opener.document.documentElement);

# Re: Comment supprimer un CreateProcessingInstruction

Envoyé par : Lapinator

Date : 13/05/2005 10:53

j'ai regardé un peut "CreateProcessingInstruction", et j'ai déjà pas bien compris à quoi elle sert, sinon pour ton problème, je n'ai pas remarqué de commande pour supprimer les modification quelle entraine, et si j'ai bien compris à quoi elle sert, je ne pense pas que ce soit possible, par le simple fait que le scripts na pas connaissances des modifications exacte qui on été faits par la commande.

# Re: Comment supprimer un CreateProcessingInstruction

Envoyé par : laurentj

Date : 13/05/2005 11:50

T'entend quoi par supprimer un CreateProcessingInstruction ? Je ne comprend pas ta question.. Si tu appelles CreateProcessingInstruction, c'est que tu veux créer, et non pas supprimer.. C'est quoi le rapport entre ton bout de code et ta question ?

# Re: Comment supprimer un CreateProcessingInstruction

Envoyé par : LeNewbie

Date : 13/05/2005 12:16

Le rapport est simple. Avec l'instruction CreateProcessingInstruction je charge dynamiquement une feuille de style à mon application ce qui revient à génerer ceci:

<?xml-stylesheet href='./Css/Style.css' type='text/css'?>

Maintenant, je désire à un évènement donné supprimer cette feuille de style pour la remplacée par une autre. Est-ce plus clair?

# Re: Comment supprimer un CreateProcessingInstruction

Envoyé par : laurentj

Date : 13/05/2005 13:01

une processing instruction, c'est un noeud DOM comme tous les autres. Donc tu le détruis comme n'importe quel noeud DOM, avec la méthode removeChild du noeud père qui est ici le document. Donc dans ton cas

opener.document.removeChild(stylesheet);

et encore, surement que changer la propriété data de l'objet processingInstruction suffit à changer la feuille de style.

Ce que tu demandais est trivial. Je te conseille d'aller apprendre le DOM (c'est standardisé, donc tu trouveras tutoriel à ta convenance via notre ami google). C'est un prérequis pour se lancer dans le developpement XUL.

# Re: Comment supprimer un CreateProcessingInstruction

Envoyé par : LeNewbie

Date : 13/05/2005 15:45

Merci du coup de meme! Mon pb ct juste de savoir: "une processing instruction, c'est un noeud DOM comme tous les autres"

# Re: Comment supprimer un CreateProcessingInstruction

Envoyé par : Julien Appert

Date : 13/05/2005 17:11

Tu es sûr ? Dans l'inspecteur DOM, la feuille de style n'est pas considérée comme un noeud DOM mais comme une propriété du document, qu'on peut atteindre par :

document.styleSheets

=> qui donne une liste des noeuds

D'ailleurs je viens de voir qu'on pouvait désactiver une feuille de style avec :

document.styleSheets[0].disabled="true";

C'est fou ce qu'on peut apprendre avec cet inspecteur. C'est du pain béni.

# Re: Comment supprimer un CreateProcessingInstruction

Envoyé par : LeNewbie

Date : 16/05/2005 13:09

En effet, cela marche pas mal aussi!

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.