搜尋

首頁  >  問答  >  主體

javascript - a.click()在火狐與Google的差別

程式碼如下

<!-- test.html -->
<button>Click</button>
//test.js
var btn = document.querySelector('button')
btn.onclick = () => {
    var a = document.createElement('a')
    a.href = 'https://www.baidu.com'
    a.target = '_blank'
    a.click()
}

問題如下:

在火狐中點選按鈕沒有反應,在Google中點選按鈕可以建立新的標籤頁;
test.js加上一條語句

var btn = document.querySelector('button')
btn.onclick = () => {
    var a = document.createElement('a')
    a.href = 'https://www.baidu.com'
    a.target = '_blank'
    
    document.body.appendChild(a)
    
    a.click()
}

改寫後的程式碼都能在兩個瀏覽器中正常運作。所以請問各位朋友這是什麼原因,謝謝?

巴扎黑巴扎黑2708 天前870

全部回覆(2)我來回復

  • 过去多啦不再A梦

    过去多啦不再A梦2017-07-05 11:03:11

    樓主,你之前這不是剛創建好還沒添加到頁面中就要執行click事件?

    回覆
    0
  • phpcn_u1582

    phpcn_u15822017-07-05 11:03:11

    瀏覽器解析差異吧
    但是如果想點擊按鈕訪問網頁直接用window.open或者location.assign不就可以實現了 為啥要創建dom呢

    回覆
    0
  • 取消回覆