本文實例講述了JS實現點擊li標簽彈出對應的索引功能。分享給大家供大家參考,具體如下:
需求:點擊li標簽,彈出對應的索引
先看效果:
html結構:
<ul id="ul1"> <li>我是li標簽1</li> <li>我是li標簽2</li> <li>我是li標簽3</li> <li>我是li標簽4</li> <li>我是li標簽5</li></ul>
方法一:直接往標簽里添加索引的方法
var list=document.getElementById('ul1').children;//獲取所有的li標簽for(var i=0;i<list.length;i++){//遍歷每一個li標簽 list[i].setAttribute('index',i+1); //給每一個li標簽添加索引 list[i].onclick=function ( ) { alert("您點擊了第"+this.getAttribute('index')+"個li標簽");//獲取添加的li標簽的元素值 }}
完整測試示例如下:
<!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><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>www.49028c.com JS點擊li標簽,彈出對應的索引</title></head><body><ul id="ul1"> <li>我是li標簽1</li> <li>我是li標簽2</li> <li>我是li標簽3</li> <li>我是li標簽4</li> <li>我是li標簽5</li></ul><script>var list=document.getElementById('ul1').children;//獲取所有的li標簽for(var i=0;i<list.length;i++){//遍歷每一個li標簽 list[i].setAttribute('index',i+1); //給每一個li標簽添加索引 list[i].onclick=function ( ) { alert("您點擊了第"+this.getAttribute('index')+"個li標簽");//獲取添加的li標簽的元素值 }}</script></body></html>
方法二:使用閉包的方法
var list=document.getElementById('ul1').children;//獲取所有的li標簽for(var i=0;i<list.length;i++) {//遍歷每一個li標簽 function outer ( ) { var num=i+1; function inner ( ) { alert("您點擊了第"+num+"個li標簽"); } return inner; } //給每一個li標簽注冊單擊事件 list[i].onclick=outer();}
測試上述代碼運行效果。
希望本文所述對大家JavaScript程序設計有所幫助。
新聞熱點
疑難解答