好的,让我们从另一个角度尝试这个,我不知道我是否足够清楚。
我有几个嵌套的div。在这些div中是两个特定的div(col50),其中第一个具有进一步嵌套的div(信息)。在第二个col50上,我只有用于查看更多信息,编辑信息和删除信息的链接。
我需要点击“更多”链接以从第一个col50中的嵌套div中向下滑动信息。两个col50都向左浮动,因此它们并排放置。我已经尝试了几种形式的兄弟,父母,这个,等等,但仍然没有提出解决方案(以及从其他网站和本网站尝试多种解决方案)。
这只是一个简单的切换功能,我无法弄清楚如何...什么,爬上dom到达包含的父/子/兄弟......也许......让它切换。
帮助?
的jsfiddle
在html和jquery的更新代码下面:
HTML
<div class="col-100 clientContainer">
<div class="col50">
<p>Arnold Greenburg</p>
<span class="info toggle">
<p>This is more information.</p>
</span>
</div>
<div class="col50">
<p> <a href="##" class="moreInfo">more</a>
|
<a href="##">edit</a>
|
<a href="##">delete</a>
</p>
</div>
</div>
<div class="col-100 clientContainer">
<div class="col50">
<p>Arnold Greenburg</p> <span class="info toggle">
<p>This is more information.</p>
</span>
</div>
<div class="col50">
<p> <a href="##" class="moreInfo">more</a> | <a href="##">edit</a> | <a href="##">delete</a>
</p>
</div>
</div>
的jQuery
$(document).ready(function () {
$('.moreInfo').click(function () {
$(this).parent('.clientContainer').child('.col50').find('.info').slideToggle();
});
});
答案 0 :(得分:0)
var $toggled = $(this).attr('href');
1st:它不是jquery对象,所以make name切换但不是$ toggled,以避免误导。
第二:它将使用值字符串“##”
设置$切换第3次:调用$($ toggled)尝试查找ID为“#”的所有元素,这里没有这样的元素。
如果要查找href =“##”的所有链接,请使用以下选择器:
$("a[href=##]")
检查此jsfiddle jsfiddle
答案 1 :(得分:0)
尝试使用数据属性添加,例如data-selector="info"
在示例中,我没有检查是否有任何可见的东西,我让jQuery确定要对我采取什么操作,这有缺点。希望它有所帮助。
答案 2 :(得分:0)
好的,我找到了一个解决方案。这有点令人费解,但功能齐全,效果很好。
$(document).ready(function(){
$(".col50 + .col50 > p > a:first-of-type").click(function () {
$(this).parent().parent().parent().find(".info").slideToggle();
});
});