salut ,,
je veux construire l'arbre Dom d'une page HTML sans passer par le validateur Tidy-HTML alors j'ai penser a utiliser un script que je vais l'appliquer a la page web lorsque celle ci est chargé,
pour cela j'ai utiliser evaluateJavaScript (); ou en le donne un QString comme paramettre ce string correspond au code juavascript et retourne le resultat dans Qvariant pour cela j'ai commancer a faire ce petit test qui va afficher la date sur ma page web:

lorsque la page web est chargé (loadFinshed) j'ai fait la recuperation de code javascript et j'ai donné comme paramettre a evaluateJavaScript
voila le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
void Dom::loadFinished(bool ok) {
if (!ok){
        printf("failed laodin page ");
	fflush(stdout);}
QVariant vr;
 
QFile filejs ("date.html");
 
           if (!filejs.open(QIODevice::ReadOnly | QIODevice::Text))
 
                       { qDebug()<< "le fichier xml valide n'existe pas " ; return;}
 
 
 
            QTextStream outjs(&filejs);
 
            QString outputjs = outjs.readAll();
 
            filejs.close();
 
 
 
            vr =v.page()->mainFrame()->evaluateJavaScript (outputjs);//(v de type WebView)
 
}
ou date.html contient script qui affiche la date .

code de date.html:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
 
<HTML><HEAD>
 
<TITLE> Derni&egrave;re mise &agrave; jour</TITLE>
 
<SCRIPT LANGUAGE="JavaScript">
 
function Tableau(n){this.lenght=n; return this; }
 
function DateModif() {
 
NomMois=new Tableau(12);
 
NomMois[1]="janvier";
 
NomMois[2]="f&eacute;vrier";
 
NomMois[3]="mars";
 
NomMois[4]="avril";
 
NomMois[5]="mai";
 
NomMois[6]="juin";
 
NomMois[7]="juillet";
 
NomMois[8]="ao&ucirc;t";
 
NomMois[9]="septembre";
 
NomMois[10]="octobre";
 
NomMois[11]="novembre";
 
NomMois[12]="d&eacute;cembre";
 
 
 
Date=new Date(document.lastModified)
 
 
 
var Mois=NomMois[Date.getMonth()+1]
 
var Annee=Date.getFullYear()
 
 
 
return Date.getDate()+""+Mois+""+Annee }
 
</SCRIPT>
 
</HEAD>
 
<BODY>
 
Document modifi&eacute; le 
 
<SCRIPT> document.write(DateModif()) </SCRIPT>
 
</BODY></HTML>
mais j'ai aucune idee comment je peux voir le resultat de ce script sur ma page web,??
j'ai pencer a addToJavaScriptWindowObject ( const QString & name, QObject * object )????,

merci pour tout aide ,,