javascript - Jika elemen induk terikat untuk mengklik, bagaimanakah elemen anak dapat mengelak daripada mencetuskan klik elemen induk tanpa klik yang mengikat?
扔个三星炸死你
扔个三星炸死你 2017-06-12 09:22:56
0
3
745

HTML:

JS:

document.getElementById('container').addEventListener('click',function () { document.getElementById('inner').style.display = "none"; });

Apabila saya klik pada elemen kanak-kanak, ia akan hilang. Bagaimana untuk mengelakkan situasi ini? Saya tidak mahu mengikat acara klik pada elemen kanak-kanak juga.

扔个三星炸死你
扔个三星炸死你

membalas semua (3)
曾经蜡笔没有小新
document.getElementById('container').addEventListener('click',function (e) { document.getElementById('inner').style.display = "none"; e.stopPropagation(); }, true);
  1. ialahaddEventListener传递第三个参数true. Gunakan tangkapan peristiwa.

    • https://developer.mozilla.org...

  2. e.stopPropagation()Hentikan penyebaran insiden.

    • https://developer.mozilla.org...

    仅有的幸福

    https://jsfiddle.net/g5u7qrrd/6/

    document.getElementById('container') .addEventListener('click',function (e) { if (e.target.id !== 'inner') document.getElementById('inner').style.display = "none"; });
      仅有的幸福

      Tambahkanpointer-events: none;pada gaya elemen kanak-kanak dan abaikan acara tetikus secara langsung. IE mungkin perlu serasi.

        Muat turun terkini
        Lagi>
        kesan web
        Kod sumber laman web
        Bahan laman web
        Templat hujung hadapan
        Tentang kita Penafian Sitemap
        Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!