首頁 >web前端 >js教程 >如何在 PhantomJS 中模擬點擊?

如何在 PhantomJS 中模擬點擊?

Susan Sarandon
Susan Sarandon原創
2024-12-05 09:52:091012瀏覽

How to Simulate a Click in PhantomJS?

在 PhantomJS 中按一下元素

要在 PhantomJS 中點選元素,不支援標準 .click() 方法。相反,必須創建並調度一個事件。

請考慮以下程式碼:

page.evaluate(function() {
    document.getElementById('idButtonSpan').click();  
});

此程式碼會導致錯誤,因為 .click() 不是函數。要解決此問題,請建立事件並調度它:

function click(el){
    var ev = document.createEvent("MouseEvent");
    ev.initMouseEvent(
        "click",
        true /* bubble */, true /* cancelable */,
        window, null,
        0, 0, 0, 0, /* coordinates */
        false, false, false, false, /* modifier keys */
        0 /*left*/, null
    );
    el.dispatchEvent(ev);
}

然後,您可以使用此函數點擊一個元素:

page.evaluate(function() {
    click(document.getElementById('idButtonSpan'));  
});

以上是如何在 PhantomJS 中模擬點擊?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn