cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Mengapa peristiwa itu dicetuskan apabila memberikan null kepada objek?

Sebagai contoh, kod berikut

var box = document.getElementById("box");
box.onclick = function(){
    console.log(111);
};
box = null;

Mengapa saya masih boleh mencetuskan peristiwa klik pada kotak apabila saya menetapkan nilai kotak kepada null? Apa yang saya fikir ialah walaupun kotak ditugaskan kepada batal kemudian, memandangkan acara telah ditambah, pemprosesan acara tidak ada kaitan dengan kotak itu sendiri? Saya tidak tahu sama ada ini betul Mengapa saya hanya boleh menetapkan box.onclick kepada null Adakah onclick tidak termasuk dalam kotak? , saya harap anda semua dapat memberi saya jawapan yang munasabah, terima kasih.

滿天的星座滿天的星座2753 hari yang lalu585

membalas semua(4)saya akan balas

  • phpcn_u1582

    phpcn_u15822017-05-19 10:35:15

    Kotak di sini hanyalah pembolehubah

    var box = document.getElementById("box");

    Berikut adalah memberikan rujukan elemen "kotak" kepada kotak box = null是把nullAnda memberikan nilai kepada kotak di bawah tidak memberi kesan kepada elemen "kotak" Adalah disyorkan untuk membaca artikel ini
    Mungkin apa yang saya katakan tidak begitu jelas, maafkan saya.

    balas
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-19 10:35:15

    var box = document.getElementById("box");//生成一个box指针, 指向element
    box.onclick //element绑定点击事件
    box = null; // 清空指针 与element无关

    balas
    0
  • PHPz

    PHPz2017-05-19 10:35:15

    Anda baru sahaja memberi nama panggilan "Xiao Ming" kepada orang lain, tetapi kerosakan yang anda sebabkan pada "Xiao Ming" asal masih ada...
    Sebagai pemandu berpengalaman, saya mesti membetulkan langkah pemutihan anda:
    1 , penutup pertama naikkan dosamu

    box.onclick = null;

    2 Terpulang pada keadaan sama ada nak hancurkan badan atau tidak

    box = null;
    或
    box.parentNode.removeChild(box);

    balas
    0
  • 阿神

    阿神2017-05-19 10:35:15

    Malah, kotak hanyalah "penunjuk" yang menunjuk kepada elemen DOM.

    Operasi anda pada atribut kotak akan mempengaruhi elemen DOM, tetapi apabila anda menetapkannya kepada null, anda hanya menukar penunjuk kotak, tetapi ini tidak bermakna elemen DOM dikosongkan.

    balas
    0
  • Batalbalas