Rumah >hujung hadapan web >tutorial css >Mengapa Fungsi `menghidupkan` Saya Berfungsi dalam IE Tetapi Bukan Chrome: Isu Bayangan JavaScript?
function animate() { var div = document.getElementById('demo'); div.style.left = "200px"; div.style.color = "red"; }
#demo { position: absolute; }
<p>
window.animate // global function Element.prototype.animate // element's own method<p>Mengikut spesifikasi DOM, persekitaran pengendali acara global membayangi skop elemen semasa pengendalian acara. Oleh itu, kaedah 'bernyawa' bagi unsur tersebut diutamakan daripada fungsi 'bernyawa' global.
10. Let the current event handler value be the result of the following steps: ... 4. Let the target environment be the lexical environment scope. ... 6. If the element is non-null, then a. Let the target environment be the result of NewObjectEnvironment(the element, the target environment).<p>Untuk membetulkannya, seseorang boleh menggunakan beberapa pendekatan:
function animate__() { var div = document.getElementById('demo'); div.style.left = "200px"; div.style.color = "red"; }
document.getElementById('demo').addEventListener('click', animate.bind(document.getElementById('demo')));
Atas ialah kandungan terperinci Mengapa Fungsi `menghidupkan` Saya Berfungsi dalam IE Tetapi Bukan Chrome: Isu Bayangan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!