要在 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中文網其他相關文章!