我正在尝试使用 SlimerJS 单击页面上的按钮。
在 SlimerJS 文档中,我看到sendEvent(eventType, arg1, arg2, button, modifier)
它允许我们通过 X 和 Y 坐标单击给定位置。(文档在这里)
因此,我尝试通过以下方式获取按钮坐标的这些 X 和 Y:
var webpage = require("webpage").create();
function clickButton(button)
{
var rect = button.getBoundingClientRect();
webpage.sendEvent('click',rect.left,rect.top,'left',0);
}
webpage.open(url).then(function(){
var button = webpage.evaluate(function(){
signInButton = document.querySelector("#signIn");
return signInButton;
});
clickButton(button);
});
这样,不会引发错误,但按钮似乎没有被点击。这种做法有问题吗?有没有更好的办法?有没有办法点击一个按钮或一个链接,只提供它的 ID 或标签名称?