Bonjour à tous,
Avant tout je tiens à dire que mon besoin s'applique à un fichier hta
(HTML Application) du coup : Pas de PHP (Niette la pseudo-frame et les variable PHP...)
donc j'en reviens à l'utilisation des Iframes.
mon projet est relativement simple, je construit un générateur CSS, du coup une fois que j'ai sélectionné les parametres de mon generateur,
j'appuis sur un bouton qui est censé creer un fichier CSS (ça pas de prob.) et afficher un exemple dans une I-frame. (c'est là que ça coince)
là problème, j'arrive bien à rafraichir la partie HTML du fichier mais le rafraichissement CSS ne se fait pas.
methode utilisée :
j'ai essayer d'inclure dans le <head> du fichier result.htm ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part document.getElementById("exemple").src="./result.htm";
rien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <meta http-Equiv="Cache-Control" Content="no-cache"> <meta http-Equiv="Pragma" Content="no-cache"> <meta http-Equiv="Expires" Content="0">
j'ai essayer d'inclure dans le <head> du fichier result.htm ça :
là ça passe mais le rechargement fait remonter l'assenceur(de l'iframe) à chaque rafraichissement... franchement pas pratique...
Code : Sélectionner tout - Visualiser dans une fenêtre à part <META http-equiv="Refresh" content="10">
je suis partis sur une autre piste qui consiste à créer une balise nouvelle <link> là encore, début de résultat mais ça ne marche qu'une fois si on re-clique plus rien.
(puisse qu'il se retrouve avec plusieurs balise <link> seule la derniere s'applique soit la premiere creer !)
problème j'arrive pas à détruire la balise <link> dans mon Iframe !!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 var cssLink = document.createElement("link"); cssLink.href = "./css/custom.css"; cssLink.rel = "stylesheet"; cssLink.type = "text/css"; document.getElementById("exemple").appendChild(cssLink);
j'ai essayer ça :
mais il me met une erreur style "impossible d'afficher la valeur de la propriété ParentNode"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 var d=document.getElementById("exemple").getElementsByTagName('link')[0]; d.parentNode.removeChild(d);
Du coup ma question :
1 - auriez vous plus simple que la suppression/création de balises pour faire le boulot ?
2 - Sinon, auriez vous un moyen de détruire cette balise link dans l'iframe ?
bon j’espère que j'ai été suffisamment clair...
merci d'avance...
Partager