本文實例講述了jquery獲取當前元素索引值用法。分享給大家供大家參考。具體如下:
今天在做促銷頁面的圖片輪轉效果時,下方頁碼的左邊需要對應顯示圖片的說明訊息,效果如下:
思路:
頁面部分當為目前狀態的時候,會加上「active」樣式。
透過取得 li class="active" 的索引值,對應找到對應的圖片說明訊息,顯示出來。
解決:
透過jquery的 index() 可以很輕鬆的實現該效果。
程式碼如下:
HTML:
<div id="carousel"> <div id="carouselimg"> <div id="imgcontainer"> <a href="#" mce_href="#"><img src="" /></a> <a href="#" mce_href="#"><img src="" /></a> <a href="#" mce_href="#"><img src="" /></a> <a href="#" mce_href="#"><img src="" /></a> <a href="#" mce_href="#"><img src="" /></a> </div> </div> <div id="carouseltitle"> <div class="carouseltext"> <span> </span> <span> </span> <span> </span> <span> </span> <span> </span> </div> <ul> <li><span>1</span></li> <li><span>2</span></li> <li><span>3</span></li> <li><span>4</span></li> <li><span>5</span></li> </ul> </div> </div>
JavaScript:
<SCRIPT src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" mce_src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></SCRIPT> <SCRIPT type=text/javascript> var carousedata = [ {index:0,link:"http://www.dangdang.com",imgsrc:"1.jpg",text:"数千款名品手机6折起"}, {index:1,link:"http://www.baidu.com",imgsrc:"2.jpg",text:"测试文本2"}, {index:2,link:"http://www.google.com",imgsrc:"3.jpg",text:"测试文本3"}, {index:3,link:"http://www.soso.com",imgsrc:"xf.jpg",text:"测试文本4"}, {index:4,link:"http://www.jb51.net",imgsrc:"py.jpg",text:"测试文本5"} ]; $(document).ready(function(){ $("#imgcontainer a").each(function(i){ $(this).attr("href",carousedata[i].link); $(this).children("img").attr("src",carousedata[i].imgsrc); }); $(".carouseltext span").each(function(i){ $(this).text(carousedata[i].text); }) setInterval(function(){ var li_index = $("#carouseltitle ul li").index($("#carouseltitle ul li.active")[0]); $(".carouseltext span").hide(); $(".carouseltext span").eq(li_index).show(); },10); }); </script>
這裡,我使用setinterval ,沒10ms查找一次。
程式碼還有可以最佳化的地方。
希望本文所述對大家的jQuery程式設計有所幫助。