这是我的HTML,当点击标签时,我想知道它的<li>
兄弟姐妹号码是什么。请告诉我。
<div id="tabs">
<ul>
<li class="select" ><a href="#" id="tabHotel">Hotel</a></li>
<li ><a href="#" id="tabAirfare">Airfare</a></li>
<li ><a href="#" id="tabPackage">Package</a></li>
</ul>
</div>
这是我的javascript。
// I don't want to input 1 in the function tabSelector
// I want to get parent's sibling value automatic and
// change somthing in li class.
$('#tabHotel').click(function(){
tabSelector(1);
});
答案 0 :(得分:3)
您可以使用index()。
$("#tabs").on("click", "li", function(){
alert($(this).index());
});
在你的情况下:
tabSelector($(this).index() + 1 );
演示:
答案 1 :(得分:1)
我相信你可以使用jQuery的index()方法实现这一目标。
index() - 如果没有参数传递给.index()方法,则返回值为 一个整数,表示第一个元素在其中的位置 jQuery对象相对于它的兄弟元素。
如果在元素集合和DOM元素上调用.index()或 传入jQuery对象,.index()返回一个指示的整数 传递元素相对于原始集合的位置
对于技术编号(第一个等于0),您将使用:
$('li').on('click', function(){
console.log($(this).index());
});
对于文字数字(第一个元素等于1),您只需在索引中添加一个:
$('li').on('click', function(){
console.log($(this).index()+1);
});
答案 2 :(得分:0)
要获得确切的数字,您需要在索引中添加1。请尝试以下
$("#tabs").on("click", "li", function(){
alert($(this).index()+1)
})