Javascript 选择上一个父jQuery的子项
最近我一直在尝试使用CSS和jQuery制作动画,效果很好,不过,现在我想做得更多。 也就是说,一旦用户单击,信息就会显示在图像的顶部 目前,我只有几个标签,我在上面执行动画和类切换 我的问题是,我考虑过做以下事情:Javascript 选择上一个父jQuery的子项,javascript,jquery,html,css,Javascript,Jquery,Html,Css,最近我一直在尝试使用CSS和jQuery制作动画,效果很好,不过,现在我想做得更多。 也就是说,一旦用户单击,信息就会显示在图像的顶部 目前,我只有几个标签,我在上面执行动画和类切换 我的问题是,我考虑过做以下事情: <div class= "singleImage"> <img src.... class="actualImage"> <p>text to put over the image</p> </div>
<div class= "singleImage">
<img src.... class="actualImage">
<p>text to put over the image</p>
</div>
要放置在图像上的文本
这将是每个图像,这意味着我将有5个不同的图像他们
但是,我不知道如何选择类“ActualMage”的前一个元素
有人有什么建议吗
谢谢您使用jQuery函数。示例:假设要选择第二个图像之前的图像:
var foo = $(".singleImage").eq(1);
var bar = $(foo).prev().find('.actualImage');
试试这个:
$('singleImage').children('.actualImage').prev();
我不确定您为什么要选择上一个元素,但您可以执行类似以下操作:
- 将函数绑定到包含图像和标题的元素的单击事件。
- 在此函数中,切换标题
- 另外,将click事件处理程序绑定到主体以检测“关闭”包含元素的单击
$('a.has-caption').on('click', function(e) {
e.preventDefault(); e.stopPropagation();
var self = $(this)
, tmpId = 'toggle-' + Date.now();
self.addClass(tmpId);
$('span.caption', self).toggle();
$('body').one('click', function(e) {
if (!$(event.target).closest('.' + tmpId).length) {
$('span.caption', '.' + tmpId).hide();
self.removeClass(tmpId);
};
});
});
我尝试了以下语法:$(this.prev(“.actualImage”);但它似乎不起作用,请检查jQuery的。
a.has-caption { position: relative; }
a.has-caption .caption {
background: rgba(0, 0, 0, .25);
bottom: 0;
color: #fff;
display: none;
height: 20px;
left: 0;
line-height: 20px;
position: absolute;
width: 100%;
}
a.has-caption img { vertical-align: bottom }
$('a.has-caption').on('click', function(e) {
e.preventDefault(); e.stopPropagation();
var self = $(this)
, tmpId = 'toggle-' + Date.now();
self.addClass(tmpId);
$('span.caption', self).toggle();
$('body').one('click', function(e) {
if (!$(event.target).closest('.' + tmpId).length) {
$('span.caption', '.' + tmpId).hide();
self.removeClass(tmpId);
};
});
});