jQuery next()函数没有按预期工作

时间:2015-08-03 17:09:53

标签: jquery

请查看我的源代码

        $(this).next(".article").toggle();

或请在这里查看我的整个源代码

http://jsfiddle.net/7va7jeu8/

我想要实现的效果是当我点击一个标题时,它的内容(标题下的即时.article元素)会切换状态(显示或隐藏),但是我的代码似乎有问题,请帮忙调试,还请帮助澄清它不起作用的原因。非常感谢你的帮助。

2 个答案:

答案 0 :(得分:1)

由于hr紧跟h1元素而不是article

使用

$(this).next() //Points to hr
       .next(".article") //
       .toggle();

DEMO

答案 1 :(得分:1)

如jQuery API文档https://api.jquery.com/next/中所述;获取匹配元素集中每个元素的紧随其后的兄弟。如果提供了选择器,则仅当它与该选择器匹配时,它才会检索下一个兄弟。

你在h1之后立刻得到了小时,所以" .article"不是在h1之后立即

您可以删除hr节点或使用

$(this).next().next(".article").toggle();