Javascript 使用链接隐藏/显示div
我试图在单击Javascript 使用链接隐藏/显示div,javascript,jquery,html,Javascript,Jquery,Html,我试图在单击ali标记中的链接时使用jQuery隐藏和显示div,但是我无法获取DOM元素。 放在ul>li脚本上,它运行良好 <a class="showSingle " >All Test </a> //Work Fine 下一步查看 我不认为有什么问题,你只是错过了目标:/ 更新:我已经更改了代码段 $(函数(){ $('.showSingle')。单击(函数(e){ e、 预防默认值(); $(此项)。家长(“ul”) .兄弟姐妹(“.targetD
ali
标记中的链接时使用jQuery隐藏和显示div,但是我无法获取DOM元素。
放在ul>li脚本上,它运行良好
<a class="showSingle " >All Test </a> //Work Fine
-
下一步查看
我不认为有什么问题,你只是错过了目标:/
更新:我已经更改了代码段
$(函数(){
$('.showSingle')。单击(函数(e){
e、 预防默认值();
$(此项)。家长(“ul”)
.兄弟姐妹(“.targetDiv”)
.滑动切换(“快速”);
});
});代码>
-
下一步查看
一些文本
-
下一步查看
一些文本
-
下一步查看
一些文本
-
下一步查看
一些文本
-
下一步查看
一些文本
如果目标在ul之外,那么它不是兄弟姐妹,更像是叔叔或其他什么;)所以$(这个)。兄弟姐妹不起作用
试试这个:
$('.showSingle').click(function(e){
e.preventDefault();
$('.targetDiv').slideToggle('fast')
})
根据您的标记更新答案
由于您有多个切换触发器,并且只希望在某个触发器之后直接切换目标,因此可以使用$(this)
但是您需要链接一些其他jQuery函数,以达到可以针对下一个目标的级别
$('this').parent().parent().next('targetDiv')
在这种情况下,.next()
优于.siblines()
,因为它返回与.targetDiv
选择器匹配的下一个同级
以下是完整的代码:
$(document).ready(function () {
$('.showSingle').click(function(e) {
e.preventDefault();
$('this').parent().parent().next('.targetDiv').slideToggle('fast');
});
});
更新了fiddle以避免为您重新加载页面,请参见,@Ploni Almoni如果您在控制台中尝试这一行,会发生什么<代码>$('.showSingle')
@ErcanPeker我的目标div在uli之外如果它在ul之外它不是sibling@Pixelomo控制台中没有错误如果是您的Q,这在ul>liso之外工作,它返回带有属性的div?谢谢,但在您的代码中,div在ul>li元素内。在我看来,这是个问题。@PloniAlmoni请检查我的answer@Pixelomo正如我所说的那样,我做到了。我使用的是多个div,它显示的是all,而不是eachIt,正如你所建议的那样,它工作得很好,问题是我必须使用兄弟姐妹,因为我有多个div(它是在foreach循环中运行的,所以我已经回答了您在这里发布的问题?但实际上问题有点复杂?请创建一个,这样我们就可以了解您的意思,谢谢,jsfiddler不起作用了。$('this')
应该是$(this)
哦,是的,derp…:)他正在制作网页just@PloniAlmoni,演示不起作用或与您想要的不一样?