等待SWT浏览器上的javascript响应

时间:2015-10-26 16:26:54

标签: javascript java swt openlayers-3

我不知道该怎么做。我使用swt浏览器运行openlayers,我有一些基本的功能。所以我想捕捉我点击地图的坐标。

我尝试在浏览器小部件中添加一个监听器,因此它调用javascript上的函数返回鼠标的坐标,但是我可以告诉浏览器上的点击监听器先执行,然后在javascript上执行clik事件被执行,所以在第一次尝试它返回undefined然后它返回预览点击,而不是当前的。

所以问题的一部分是为了获得坐标我使用ol3函数来获取位置

我正在使用ol3函数来设置鼠标点击

alert();

我有一个返回位置的功能,但需要一段时间来改变位置。 有没有办法创建类似回调的东西,当javascript中的函数完成时,它将调用java上的函数,以便它可以更新我的窗口?

1 个答案:

答案 0 :(得分:1)

您可以在代码中定义一个函数,该函数可以使用从BrowserFunction派生的类从JavaScript调用:

class MyFunction extends BrowserFunction {
  MyFunction(Browser browser, String name) {
    super (browser, name);
  }

  @Override
  public Object function(Object[] arguments) {
    // Your code
  } 
}

name是该函数的JavaScript名称。

更多详情here