2014-12-03 28 views

回答

0

通常您需要使用瓦拉的async functions要做到这一点,我相信像这样:

var result = yield webview.run_javascript(...); 

这相当于C函数webkit_web_view_run_javascript_finish()

不幸的是,您不能在Vala中的该链接上显示下一步,因为您需要使用JavaScriptCore API获取返回值,并且该API在Vala中不可用。

在这种情况下,您可以诉诸几个肮脏的窍门。其中一个窍门是在JavaScript脚本的末尾设置窗口标题,并观察Vala中webview的title属性的通知。

但是,您最好在C编写一小段代码,然后编译到Vala应用程序中。

+0

你能展示如何在C中编写这部分代码(或链接到我可以了解它的页面)吗?或者如何使用这个“改变webview标题”?我完全不明白如何管理它。 – serge1peshcoff 2014-12-21 19:47:49

+1

在链接到的文档页面的C中有一个例子。另一个例子是[这里](http://stackoverflow.com/questions/16885242/vala-gui-and-logic-in-c)。要更改webview标题,请在Javascript脚本的末尾连接到'notify :: title'信号并运行'document.title =“Some result”;'。 – ptomato 2014-12-22 01:46:11

相关问题