Perbezaan antara a.click() dalam Firefox dan Google
巴扎黑
巴扎黑 2017-07-05 11:01:11
0
2
866

Kod adalah seperti berikut

<!-- 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()
}

Soalannya adalah seperti berikut:

Tiada respons apabila mengklik butang dalam Firefox, tetapi mengklik butang dalam Google boleh membuat halaman tab baharu
Tambah ayat test.js dalam

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()
}

Kod yang ditulis semula boleh berjalan seperti biasa dalam kedua-dua penyemak imbas. Jadi saya ingin bertanya kepada rakan-rakan saya apa sebabnya ini, terima kasih?

巴扎黑
巴扎黑

membalas semua(2)
过去多啦不再A梦

Pemilik, bukankah anda melaksanakan acara klik selepas anda menciptanya sebelum menambahkannya pada halaman?

phpcn_u1582

Pelayar akan menghuraikan perbezaannya
Tetapi jika anda ingin mengklik butang untuk mengakses halaman web, anda hanya boleh menggunakan window.open atau location.assign Mengapa anda perlu membuat dom?

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan