国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - 這個事件代碼怎么理解?

瀏覽:121日期:2023-04-28 18:54:18

問題描述

<input type='text' placeholder='輸入要添加的文本' /> <button id='btn'>加 </button> <ul id='ul'><li>11111</li><li>22</li><li>3333</li><li>4444</li> </ul> <script type='text/javascript'>var ul = document.getElementById('ul');var lis = ul.getElementsByTagName(’li’);var btn = document.getElementById('btn');btn.onclick = function() { //動態(tài)添加li var txt = document.getElementById('txt'),txtValue = txt.value,ali = document.createElement('li');console.log(txt.value); ali.innerHTML = txtValue;ul.appendChild(ali);}ul.onmouseover = function(ev) { var ev = ev || window.event; //獲取發(fā)生事件 event 兼容 =====1 var target = ev.target || ev.srcElement; //獲取真正被觸發(fā)的元素 =====2 if (target.nodeName.toLocaleLowerCase() == ’li’) {//判斷target是否是所需要的元素 正是因?yàn)檫@個判斷 我們可以得到任何想要的元素 a li td 等等target.style.background = 'red'; }}ul.onmouseout = function(ev) { var ev = ev || window.event; var target = ev.target || ev.srcElement; if (target.nodeName.toLocaleLowerCase() == ’li’) {target.style.background = ''; }} </script>

標(biāo)注的1和2兩處的代碼的寫法怎么理解?看不懂= =哪來的api

問題解答

回答1:

ev是事件的參數(shù),在ev中包含了事件觸發(fā)時的參數(shù),比如click事件的ev中包含ev.pageX,ev.pageY,keydown事件中包ev.keyCode等,在ie中,ev是全局的可以通過window.event來獲取,在其他瀏覽器中都是作為參數(shù)傳入的。

回答2:

function 中ev是event的縮寫,即事件。而事件的接口屬于瀏覽器端實(shí)現(xiàn)。

簡單來說:window/event屬于全局變量,只要在瀏覽器中執(zhí)行,默認(rèn)存在此變量。

回答3:

主要是處理瀏覽器兼容性比如2舊的ie瀏覽器,或者事件對應(yīng)的元素需要用 ev.srcElement,而現(xiàn)在瀏覽器只需要使用 ev.target 就可以了

回答4:

1和2都是為了兼容IE事件的寫法。javascript - 這個事件代碼怎么理解?javascript - 這個事件代碼怎么理解?

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 什邡市| 尚志市| 芒康县| 江川县| 宁化县| 米易县| 章丘市| 黄梅县| 永丰县| 老河口市| 赞皇县| 张家港市| 巨鹿县| 新竹县| 茶陵县| 永仁县| 宁乡县| 同心县| 上蔡县| 山阳县| 蚌埠市| 武宁县| 永福县| 申扎县| 荃湾区| 寻甸| 阿勒泰市| 大化| 芷江| 铜梁县| 临武县| 巴彦淖尔市| 临夏市| 台前县| 手游| 谷城县| 曲周县| 沅陵县| 石泉县| 桃园市| 庆安县|