Estoy tratando de escribir un visor de registro simple utilizando el puerto/implementación WebKit de Qt4. Mi código HTML es el siguiente:Qt4: ¿Cómo llamar funciones de JavaScript en una página de C++ a través de QtWebkit?
Más específicamente, estoy tratando de encontrar la manera de llamar a la función add_message() que se define en la sección <script>
en el documento HTML de mi código C++.
// Doesn't work:
QWebElement targetElement = chatView->page()->mainFrame()->findFirstElement("head").firstChild("script");
// Function is not included, either...
qDebug() << targetElement.tagName() << targetElement.functions();
// The ultimate attempt in calling the function anyway:
QVariant functionResult = targetElement.callFunction("add_message");
Gracias, lo intentaré de inmediato cuando llegue a casa. Aunque parece que tengo que escapar de los argumentos para utilizarlos como literales en la llamada a evaluateJavaScript(). ¿No es peligroso o algo así? – BastiBen
Sí, debe escapar de los argumentos, ya que JavaScript generará errores. No debería ser dañino, ya que se escapa solo para el analizador de JavaScript, en lugar del webkit, aparecerá igual que el parámetro no guardado –