我的图片夹非常小巧,我想在单击该图片时显示文本(信息)。淡入淡出或滑动图像,并在单击div时显示“背后”文本。再次单击div时,隐藏文本并显示图像。
我做的这个小提琴可能会解决这个问题。http://jsfiddle.net/0sr26qf4/
如您所见,问题是所有div都响应脚本。只有单击的div才能显示文本。我已经尝试过使用jQuery .next(),但没有使其正常工作。
$(".text").hide();
$(".container").click(function(){
$("#image, #text").slideToggle("slow");
});
解决方案:
这就像一个魅力:)还将id更改为class,谢谢您!
$(".text").hide();
$(".container").click(function(){
$(this).find(".image, .text").slideToggle("slow");
});
不要在您的页面上多次使用Id。您必须将其更改为类。
更新的HTML:
<div class="container">
<div class="image">image 1</div>
<div class="text">
info image 1 <br><br>
<a href="www.google.se">link</a>
</div>
</div>
<div class="container">
<div class="image">image 2</div>
<div class="text">
info image 2 <br><br>
<a href="www.google.se">link</a>
</div>
</div>
<div class="container">
<div class="image">image 3</div>
<div class="text">
info image 3 <br><br>
<a href="www.google.se">link</a>
</div>
</div>
您必须使用$(this)字传递对单击对象的引用。
JavaScript:
$(".text").hide();
$(".container").click(function(){
$(this).find(".image, .text").slideToggle("slow");
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句