使用 JavaFx WebView,我可以通过以下方式获取浏览器实例 [1] 的“窗口”:
// Java code
netscape.javascript.JSObject win = (JSObject) webengine.executeScript("window");
然后我可以将这个 JSObject 传递给另一个浏览器实例[2],并且在这个浏览器的 javascript 中,我可以像这样操作和访问第一个浏览器实例[1] 的 DOM、变量和函数:
// Javascript code
// get 'window' netscape.javascript.JSObject of 'browser1' webview
// control from the getWindow() method in my linked Java class
var window1 = javaObj.getWindow("browser1");
// get variables defined in 'browser1' javascript
var rString = window1.myString;
var rNum = window1.myNumber;
// execute the 'myAlert' function on 'browser1' and pass variables in
window1.myAlert(rString + " - " + rNum + "<br><br>" + Date());
// manipulate the DOM on 'browser1'
window1.document.getElementById("myLabel").style.backgroundColor = "red";
如何使用 jxBrowser 实现这一目标?