2014-09-01 103 views
0

如上所述,一旦用户单击了某些更改页面的内容,使用JavaFX的脚本就不再起作用。更改页面后JavaFX脚本无法正常工作

hello.html的

<div onclick="app.byeBye()">bye</div> 

byebye.html

<div onclick="app.hello()">hello</div> 

JavaApp.class

public class JavaApp{ 

    public void hello(){ 
     //process some stuff here 
     setURL("/hello.html"); 
    } 

    public void byeBye(){ 
     //process some stuff here 
     setURL("/byebye.html"); 
    } 

    private void setURL(final String uriString){ 
     Platform.runLater(new Runnable(){ 

      public void run(){ 
       JSObject win = (JSObject) webViewPanel.getWebEngine().executeScript("window"); 
       win.setMember("app", new JavaApp()); 
       webViewPanel.loadURL(Browser.class.getResource(uriString).toExternalForm()); 
      } 
     }); 
    } 
} 

我应该做些什么来解决这个问题?

+1

试图让窗口对象和web视图的引擎后置“应用”成功加载的URL。即当引擎的状态是State.SUCCEEDED时。请参阅WebEngine的javadoc。 – 2014-09-01 07:10:58

回答

0

通过回答Uluk Biy是正确的(但我不能作出评论的答案)。如果这有帮助,一定要大拇指。

尝试获取窗口对象并在webview的引擎成功加载url之后设置“app”。即当引擎的状态是State.SUCCEEDED时。请参阅WebEngine的javadoc。

的WebEngine API页面是在这里:http://docs.oracle.com/javafx/2/api/javafx/scene/web/WebEngine.html

相关问题