Sto lavorando su plug-in per client im che mostrerà chatlog in QWebView. Il plugin deve supportare i modelli html. Ora sto provando ad aggiungere nuovi messaggi chiamando QWebElement.appendInside ('nuovo messaggio') e se nel template c'è javascript source non funziona. Per esempio modello può essere tale tipo:Come far funzionare JavaScript in chiamata QWebElement.appendInside ('qualche codice html')?
<!--MessageIn-->
<div class="space"> </div>
<div class="in MessageIn" id="oneShot">
<div class="tr">
<div class="bl">
<div class="br">
<p class="head">
<span class="time" id="time">%time%</span>
<span class="name" id="name">%name%</span>
</p>
<p class="content">
<span class="text" id="text"><script>getitall('%text%','%name%','%cid%','%base%',meldungsart[0]);</script></span>
</p>
</div>
</div>
</div>
</div>
<script type="text/javascript">animation1();</script>
Funzioni getitall() e Animation1() non viene eseguita.
Non riesco a utilizzare QWebElement.evaluatejavascript() perché non conosco i nomi delle funzioni.
È possibile cercare i nodi nel modello, quindi leggerne il contenuto e valutarlo. –
C'è un altro problema con ** evaluatejavascript() **: se ** document.write() ** è usato nella funzione JavaScript (nel modello), il risultato di esso sostituirà l'intero DOM. – Sergey
è un mio errore. metodo ** document.write ** non dovrebbe essere usato nella pagina caricata. ** evaluateJavaScript ** è adatto. – Sergey