在Java项目中,我使用JxBrowser
。
我有页面
<!DOCTYPE html>
<html>
<body>
Start: <input type="text" id="startTimeField"> ms
<hr>
<button id="buttonToClick" onclick="myFunction()">Start</button>
<script>
function myFunction() {
document.getElementById('startTimeField').value = new Date().getMilliseconds();
}
</script>
</body>
</html>
我使用JxBrowser加载页面正确。
单击“开始”按钮时,将设置文本输入的值。
我想使用Java中的JxBrowser对象添加侦听器,以侦听
startTimeField
文本输入更改。例如:
startTimeField
设置为0,单击Start
按钮后,字段更改值(按实际ms时间),我想检测Java代码中的此更改并获取更改的值。 最佳答案
由于该问题主要询问如何在Java中监听DOM中的事件,因此我认为这是您要寻找的内容:
JxBrowser - DOM Events
您将必须执行与此类似的操作(在Java代码中):
DOMElement element = browser.getDocument().findElement(By.id("startTimeField"));
element.addEventListener(DOMEventType.OnChange, new DOMEventListener() {
public void handleEvent(DOMEvent event) {
// your code for reacting to the change here
}
}, false);
我没有测试此代码,而是从文档中对其进行了改编,因此它可能无法立即编译和运行,但这应该可以带您进入正确的轨道。
关于javascript - 使用JxBrowser监听页面上的更改,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42391142/