java + swt 设计的浏览器,如何获得网页中的元素坐标位置呢js文件代码范例:function getxy() { mydiv = document.getElementById('lk') // 获得mydiv里面的A元素
var mya = mydiv.getElementsByTagName('a') // var abc = mydiv.getAttributeNode() // 获得a元素中叫abc的连接
var n = 0
while (n < mya.length) {
if (mya.item(n).textContent == "百科") {
x = mya.item(n).offsetLeft
y = mya.item(n).offsetTop }
n++
}

document.write(" "+x+" "+ y)
}
getxy()</script>如果把上面的JS代码插入到百度首页中,可以获得元素“百科”的坐标。问题是,如果用SWT开发的浏览,希望JAVA调用JS代码来获得元素坐标,然后传回给JAVA。
类似下面的JAVA调用JS,但JAVA不能调用doucument方法,这就使得上面的JS文件无法正常运行。请问还有其他办法可以获得元素坐标吗?
import java.io.File;
import java.io.FileReader;
import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;public class T3 {
public static void main(String[] args) throws Exception {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("javascript");
engine.eval("print('你好')");
// java并不支持document方法,document是客户端浏览器的API
// engine.eval("document.getElementById('lk')");
}
}
swt坐标Java浏览器