Jquery 获取高度值并使用具有不同高度的多个元素定位在中心

Jquery 获取高度值并使用具有不同高度的多个元素定位在中心,jquery,Jquery,我正在创建一个新闻页面,文章放在覆盖框中的图像上。我有多个新闻项目带打印在一个页面上,这是一个scoller工作 我对定心感兴趣的是figcaption <section> <h2>{title}</h2> <figure> <img src="{news_image}" alt="{title}" width="718" />

我正在创建一个新闻页面,文章放在覆盖框中的图像上。我有多个新闻项目带打印在一个页面上,这是一个scoller工作

我对定心感兴趣的是figcaption

        <section>
            <h2>{title}</h2>
            <figure>
                <img src="{news_image}" alt="{title}" width="718" />
                <figcaption>
                    {article}
                    <a href="#close" class="btn-close">X</a>
                </figcaption>
            </figure>
        </section> 
        <section>
            <h2>{title}</h2>
            <figure>
                <img src="{news_image}" alt="{title}" width="718" />
                <figcaption>
                    {article}
                    <a href="#close" class="btn-close">X</a>
                </figcaption>
            </figure>
        </section> e.t.c

{title}
{第条}
{title}
{第条}
e、 t.c
我想得到图形中每个img的高度以及每个figcaption的高度,这样我就可以将它完美地置于图像的中心

对于一个元素,我可以想象它是非常简单的,但是对于我来说,困惑在于如何让Jquery为每个元素添加正确的值


有什么想法吗?

您应该能够通过迭代每个部分来实现这一点:

$('section').each(function(){
    var imgHeight = $(this).find('img').height();
    var captionHeight = $(this).find('figcaption').height();
    {position caption here}
});
这将允许您获取每个部分中每个图像和每个标题的高度


jsFiddle这里:

你能发布一个jsFiddle吗?我不确定这个页面应该是什么样子。迭代$()不会有帮助吗?当然,请稍候,谢谢您的帮助。这是添加CSS的最佳方式吗$(此).find('figcaption').css(“颜色”、“红色”);我想如果需要的话,我会改变文本的颜色。如果您多次使用
$(this)
,最好将其存储到变量中。安迪:是的,没错。请注意,您可以通过
.css({option:'value',option2:'value'})
在单个调用中添加更多css值。此外,如果您在整个站点中使用红色,则最好在css中定义
.red
,并在jQuery中使用
.addClass('red')