Appliquer un script sur une page web
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:
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:
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ère mise à 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évrier";
NomMois[3]="mars";
NomMois[4]="avril";
NomMois[5]="mai";
NomMois[6]="juin";
NomMois[7]="juillet";
NomMois[8]="août";
NomMois[9]="septembre";
NomMois[10]="octobre";
NomMois[11]="novembre";
NomMois[12]="dé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é 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 ,,