<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script src="jquery-1.3.2.min.js" type="text/javascript"></script> <!--<script src="jquery-1.4.2.min.js" type="text/javascript"></script>--> <script type="text/javascript"> function test() { var v = []; var msg = ""; msg+="index()取得值:"+$("#sel option:selected").index()+"\n"; //jquery-1.3.2 : -1 存在bug //jquery-1.4.2 : 2 正确 v[0] = $("#sel option:selected").attr("index"); v[1] = $("#sel").attr("selectedIndex"); for (var i = 0; i < v.length; i++) { msg+="方法:"+i+", 取得值:" + v[0]+"\n"; } msg+="直接取法:" + $("#sel option:selected").prevAll().length+"\n"; msg += "插件取法:" + $("#sel option:selected").getSelfIndex() + "\n"; msg += "===============================================" + "\n"; msg += "下面divB的Index: " +$("#divB").getSelfIndex("div"); alert(msg); } (function($){ $.fn.getSelfIndex=function(type){ if(typeof(type)=="undefined"){ //在同辈元素均为同类型的元素时 return $(this).prevAll().length; }else { //在同辈元素有多种类型时 return $(this).prevAll().filter(type).length; } }; })(jQuery) </script> </head> <body> <select id="sel" style="height:100px;width:200px;" size="20" οnclick="test(this)"> <option>0</option> <option >1</option> <option selected="selected">2</option> <option >3</option> </select> <div id="divA">A</div> <div id="divB">B</div> <div id="divC">C</div> <input type="button" value="得到选中的index" οnclick="test()" /> </body> </html>
修改jquery1.3.2的index函数
最新推荐文章于 2024-10-10 09:56:47 发布