Rumah > hujung hadapan web > tutorial js > Analisis ringkas tentang penggunaan dan faedah kemahiran delegation_javascript acara javascript

Analisis ringkas tentang penggunaan dan faedah kemahiran delegation_javascript acara javascript

WBOY
Lepaskan: 2016-05-16 15:06:47
asal
1291 orang telah melayarinya

Artikel ini memperkenalkan secara ringkas penggunaan dan faedah delegasi acara JavaScript untuk rujukan anda Kandungan khusus adalah seperti berikut

Delegasi acara: Menggunakan prinsip menggelegak, tambahkan acara pada induk untuk mencetuskan kesan pelaksanaan,
Faedah: Prestasi yang lebih baik, elemen yang baru ditambah juga akan mempunyai acara sebelumnya.
objek acara: sumber acara, tidak kira dalam acara mana pun, asalkan elemen yang anda kendalikan ialah sumber acara

Dapatkan sumber acara:
IE:window.event.srcElement

Di bawah standard : event.target target.nodeName untuk menentukan tag mana

Kod digunakan seperti berikut:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>

</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script type="text/javascript">
window.onload=function ()
{
  var oUl=document.getElementById('ul1');
  var oBtn=document.getElementById('btn1');
  var iNow=5;
  //事件源的方法依然保留父级事件!
  oUl.onmouseover=function(ev)
  {
    var ev=ev||window.event;
    var target=ev.target||ev.srcElement;
    if(target.nodeName.toLowerCase()=='li')
    {
      target.style.background='red';
    }
  }
  oUl.onmouseout=function(ev)
  {
    var ev=ev||window.event;
    var target=ev.target||ev.srcElement;
    if(target.nodeName.toLowerCase()=='li')
    {
      target.style.background='';
    }
  }
  oBtn.onclick=function()
  {
    iNow++;
    var oLi=document.createElement('li');
    oLi.innerHTML=111*iNow;
    oUl.appendChild(oLi);
  }
}
</script>
</head>
<body >
<input type="button" value="添加" id='btn1'>
<ul id='ul1'>
  <li>11111</li>
  <li>22222</li>
  <li>3333333</li>
  <li>44444444</li>
  <li>66666666</li>
</ul>
</body>
</html>
Salin selepas log masuk

Di atas adalah keseluruhan kandungan artikel ini, saya harap ia akan membantu kajian semua orang.

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan