程式碼如下
<!-- 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()
}
改寫後的程式碼都能在兩個瀏覽器中正常運作。所以請問各位朋友這是什麼原因,謝謝?
樓主,你之前這不是剛創建好還沒添加到頁面中就要執行click事件?
瀏覽器解析差異吧
但是如果想點擊按鈕訪問網頁直接用window.open或者location.assign不就可以實現了 為啥要創建dom呢