2017-10-10 95 views
-1

下面是我的Grease猴子腳本/ Tam猴點擊按鈕(多個按鈕),其名稱包含'attach'。該腳本工作完美,但是Chrome和Firefox有所不同。javascript在Chrome和Firefox中的不同行爲

在Firefox中,點擊發生在'attach'(名稱包含)按鈕的頂部到底部。 在Chrome中,每次頁面加載時,它都會從下到上點擊。

  1. 爲什麼這是不同的行爲
  2. 我應該使用 '===' 而不是 '=='?

下面是我的Greasemonkey/tampermonkey腳本

var inputs = document.getElementsByTagName('input'); 
for (x = 0; x < inputs.length; x++) { 
myname = inputs[x].getAttribute('name'); 
if (myname.indexOf('attach') == 0) { 
document.getElementsByName(myname) [0].click(); 
} 
} 

回答

0

嘗試在這裏和那裏解決一些小錯誤 - 因爲一個瀏覽器可能會自動糾正語法錯誤,而別人不會(這是經常發生案例我已經注意到)

var inputs = document.getElementsByTagName('input'); 

// Add var to keep scope in the for loop 
for (var x = 0; x < inputs.length; x++) { 

    // Add var here or else it will be global 
    var myname = inputs[x].getAttribute('name'); 

    if (myname.indexOf('attach') == 0) { 

     // Syntax error: remove ' ' after (myname) 
     document.getElementsByName(myname)[0].click(); 
    } 
} 
相關問題