簡體   English   中英

JavaScript 似乎無法在控制台中工作

[英]JavaScript seemingly not working in console

我對 JavaScript 很陌生,但我正在嘗試自動化網頁上的一系列點擊。 我已經通過 Selenium 和 Python 成功地做到了這一點,這是我的首選語言,但是,我了解到這可以通過 JS 在“檢查元素”的控制台中完成。

到目前為止,我已經通過 document.GetElementByClassName 找到了該元素,但是當我簡單地標記 the.click() 並按 Enter 鍵時,實際上什么也沒發生。 我一直在觀看多個教學視頻,一旦完成,就會在每個視頻中執行點擊。 出於某種原因,這不會發生在我身上。

我試圖點擊的按鈕有 HTML:

<button class="btn-standard call-to-action">Search</button>

當我然后輸入以下內容時,

document.getElementsByClassName("btn-standard call-to-action");

控制台返回一個 HTML 集合,其中包含按鈕。 使用 click() 方法只會在控制台中返回 undefined,對按鈕沒有可見的操作。

我知道這是一個措辭尷尬的問題,它的解決方案對這里的用戶來說可能是顯而易見的,但我不知道為什么什么也沒發生。 我還在 getElement 上使用索引 [0] 執行了單擊,但仍然無濟於事。 如果重要的話,我正在使用 safari(啟用了 JS)。

非常感謝您提前。

編輯:

我試圖訪問的頁面位於登錄屏幕后面,因此需要用戶名和密碼。 但是,登錄按鈕也存在同樣的問題。 鏈接為: https://www.easports.com/fifa/ultimate-team/web-app/

在以下位置找到答案: 單擊 function 按鈕不起作用

var targetNode = document.getElementsByTagName("button")[0];
if (targetNode) {
    //--- Simulate a natural mouse-click sequence.
    triggerMouseEvent (targetNode, "mouseover");
    triggerMouseEvent (targetNode, "mousedown");
    triggerMouseEvent (targetNode, "mouseup");
    triggerMouseEvent (targetNode, "click");
}
else
    console.log ("*** Target node not found!");

function triggerMouseEvent (node, eventType) {
    var clickEvent = document.createEvent ('MouseEvents');
    clickEvent.initEvent (eventType, true, true);
    node.dispatchEvent (clickEvent);
}

@SMAKSS 是正確的,但他忘記刪除額外的 css class 選擇器。 這應該有效。

document.getElementsByClassName("call-to-action")[0].click();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM