jquery取得的index()为-1?

<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/... <!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=gb2312" />
<title>无标题文档</title>
<script type="text/javascript" src="../jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("b:first").addClass("active");
$("p:gt(0)").hide();
$("b").click(function(){
$(this).addClass("active");
$(this).siblings("b").removeClass();
$("p:eq("+$(this).index()+")").show();
$("p:eq("+$(this).index()+")").siblings("p").hide();
alert("p:eq("+$(this).index()+")");
});
});
</script>

<style type="text/css">
.active{
color:red;
}
</style>
</head>

<body>

<b>标题1</b><b>标题2</b><b>标题3</b>
<p>国务院。。。</p>
<p>复旦大学。。。 </p>
<p>李娜正做客。。。。</p>

</body>
</html>
展开
 我来答
klark0093
推荐于2018-03-14 · TA获得超过108个赞
知道答主
回答量:137
采纳率:100%
帮助的人:107万
展开全部
想必楼主做页签功能,修改了一下:
$(document).ready(function(){
$("b:first").addClass("active");
$("p:gt(0)").hide();

$("b").each(function(i){
$(this).click((function(k){
var _index = k;
return function(){
$("b.active").removeClass("active");
$(this).addClass("active");
$("p").hide();
$("p:eq(" + _index + ")").show();
}
})(i));
});
});
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Myduhao415
2011-07-14 · 超过43用户采纳过TA的回答
知道小有建树答主
回答量:116
采纳率:0%
帮助的人:140万
展开全部
$(this).index()你的这种取法有问题啊! $(this)这个代表的是你要操作的当前对象啊! 但是$("b")这样是取得b标签的所有是一个数组!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-07-17
展开全部
alert("p:eq("+$('b').index(this)+")");

这样,可以给分了吧?谢谢、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式