實現(xiàn)點擊列表彈出列表索引的兩種方式
更新時間:2013年03月08日 11:30:41 作者:
使用利用事件冒泡委托給列表的父節(jié)點去處理的方式第二種方式就是使用閉包了,感興趣的你可以參考下本文,或許對你學習js有所幫助
方式一,使用利用事件冒泡委托給列表的父節(jié)點去處理的方式:
var ulObj = document.getElementById("myUl");
ulObj.onclick = function (event) {
var tg = event.target;
var liArray = ulObj.getElementsByTagName("li");
for (var i = 0; i < liArray.length; i++) {
if (liArray[i] === tg) {
alert(i + 1);
}
}
}
方式二,使用閉包:
var liArray = document.getElementById("myUl").getElementsByTagName("li");
for (var i = 0; i < liArray.length; i++) {
(function () {
var n = i;
liArray[i].onclick = function () {
alert(n + 1);
}
})(i)
}
HTML代碼:
<ul id='myUl'>
<li>haha</li>
<li>heihei</li>
<li>hehe</li>
<li>gaga</li>
</ul>
復制代碼 代碼如下:
var ulObj = document.getElementById("myUl");
ulObj.onclick = function (event) {
var tg = event.target;
var liArray = ulObj.getElementsByTagName("li");
for (var i = 0; i < liArray.length; i++) {
if (liArray[i] === tg) {
alert(i + 1);
}
}
}
方式二,使用閉包:
復制代碼 代碼如下:
var liArray = document.getElementById("myUl").getElementsByTagName("li");
for (var i = 0; i < liArray.length; i++) {
(function () {
var n = i;
liArray[i].onclick = function () {
alert(n + 1);
}
})(i)
}
HTML代碼:
復制代碼 代碼如下:
<ul id='myUl'>
<li>haha</li>
<li>heihei</li>
<li>hehe</li>
<li>gaga</li>
</ul>
相關文章
web-view內(nèi)嵌H5與uniapp數(shù)據(jù)的實時傳遞解決方案
這篇文章主要介紹了web-view內(nèi)嵌H5與uniapp數(shù)據(jù)的實時傳遞,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07關于javascript document.createDocumentFragment()
documentFragment 是一個無父對象的document對象.2009-04-04