1、java调用browser页面里的js
final Browser browser = new Browser(shell, SWT.FILL_WINDING);
browser.evaluate("fun()");//fun是一个定义好的js函数2、js中调用java函数
写一个类继承BrowserFunction类
import org.eclipse.swt.browser.Browser;
import org.eclipse.swt.browser.BrowserFunction;
public class CallJava extends BrowserFunction {
public CallJava(Browser browser, String name) {
super(browser, name);
}
@Override
public Object function(Object[] arguments) {
System.err.println(arguments);
return super.function(arguments);
}
}将这个类注册为一个回调方法:
new CallJava (browser, "myCallJava");//注意注册的回调方法名字,不要与类名相同,否则将无法正常调用(不要将名字设置为callJava)
在页面js中调用这个myCallJava方法
function fun(){
var arguments = 'abc';
myCallJava('abc');//此时执行CallJava类中的function方法,arguments为传入参数
}
本文介绍了如何在Java应用中使用SWT的Browser控件,并实现与JavaScript的交互。通过创建一个继承自BrowserFunction的类,可以在Java代码中调用浏览器页面内的JavaScript方法,反之亦然。
570

被折叠的 条评论
为什么被折叠?



