我正在尝试使用点击'每个'项目.toggleDiv
来分别切换,而不是一次性切换。
现在点击的.toggleDiv只需点击一下即可展开.fullSaintDesc
内的所有元素,这就是我不希望它做的事情 - 我想要的是具有类{的每个元素{1}}展开.toggleDiv
但不是全部展开。
如果您觉得我的问题标题不清楚我要问的内容,请随时编辑。
.fullSaintDesc
HTML
这些类正在整个页面中使用 - 我希望每个.toggleDiv都可以自行扩展而不是一次点击。
$(document).ready(function() {
$(".toggleDiv").click(function(){
$(".fullSaintDesc").toggle();return false;
});
});
答案 0 :(得分:6)
将其更改为:
$(".toggleDiv .fullSaintDesc").click(function(){
$(this).toggle();
});
没有看到html结构,我只能猜测,但这应该有效:
$(".toggleDiv").click(function(){
$(this).find('.fullSaintDesc').toggle();
});
编辑3:反映最后一次更新:(如果一致)
$(".toggleDiv").click(function(){
$(this).parent().next('.fullSaintDesc').toggle();
});
答案 1 :(得分:2)
$(".toggleDiv").click(function(event){
$(this).parent().next('.fullSaintDesc').toggle();
event.preventDefault();
});
答案 2 :(得分:1)
您必须为点击提供上下文。
如果您只是尝试切换单击内容的子元素,那么这应该可以正常工作。
$(".toggleDiv").click(function(){
$(this).find('.fullSaintDesc').toggle();
});
如果点击的元素是<a>
,那么您不一定需要return false
,更好的方法是使用e.preventDefault();`
$(".toggleDiv").click(function(e){
$(this).parent().next(".fullSaintDesc").toggle();
e.preventDefault();
});
答案 3 :(得分:1)
根据修订后的问题,您需要:
$(document).ready(function() {
$(".toggleDiv").click(function(){
$(this).parent().next(".fullSaintDesc").toggle();
});
});
它告诉它从单击的锚开始,向上移动一个级别,然后找到下一个fullSaintDesc,然后切换它。