我在Vala应用程序中使用webkit2gtk-4.0来显示Google地图。我需要在按钮点击时获得标记坐标。我该如何管理?
我想出了如何使用run_javascript()
运行javascript,但是我无法理解它的结果。
答案 0 :(得分:0)
通常你需要使用Vala async functions这样做,我相信如下:
var result = yield webview.run_javascript(...);
这相当于C函数webkit_web_view_run_javascript_finish()
。
很遗憾,您无法在Vala中显示该链接所示的下一步,因为您需要使用JavaScriptCore API来获取返回值,并且该Vala中的API不可用。
在这种情况下,你可以采取一些肮脏的技巧。其中一个技巧就是在Javascript脚本的末尾设置窗口标题,并在Vala的webview的title
属性中查看通知。
但是,您可能最好在C中编写一小段代码,然后将其编译到Vala应用程序中。