![](/img/trans.png)
[英]Seemingly simple javascript if variable === 0 condition not working as expected
[英]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.