首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >导航到jQuery中的DOM元素并将其赋值给变量

导航到jQuery中的DOM元素并将其赋值给变量
EN

Stack Overflow用户
提问于 2012-09-21 22:39:27
回答 2查看 210关注 0票数 0

我正在开发一个WordPress主题并将Fancybox灯箱插件内置到我的代码中。这很好,除了一个小问题。

但我会先向您展示代码,这样就更容易解释了。

代码语言:javascript
运行
复制
<dl class='gallery-item'>
    <dt class='gallery-icon'>
        <a href='image.jpg' title='something'><img width="150" height="150" src="image.jpg" class="attachment-thumbnail" title="something" /></a>
    </dt>
    <dd class='wp-caption-text gallery-caption'>
        Description, that should be displayed as title...
    </dd>
</dl>

这是WordPress标准库的一个图库项的输出。我想要做的是,将dd-标记中的描述附加到lightbox图像标题(在ht emoment上显示a-tag的标题,这是一个字母数字字符串--不太适合用户使用)。

为了将某些内容分配给lightbox标题,必须在lightbox的初始化函数中调用以下javascript。(这段代码实际上将第一个..wp标题-text元素的内容分配给每个图像标题。)

代码语言:javascript
运行
复制
$(document).ready(function(){
    $("a[href$='.jpg'],a[href$='.png'],a[href$='.gif']").attr('rel', 'gallery').fancybox({

    beforeLoad: function(){
        var caption = $('.wp-caption-text').html();
        this.title = caption;
        }
    });
});

上面的代码按预期工作,但这意味着只有类wp标题文本的第一个元素才会分配给lightbox和每个图像。但我只想得到相应的wp标题文本的图像,已经打开了在照明箱。因此,我必须使用$(this)之类的内容,然后导航到相应的wp标题文本,并将文本分配给标题变量。

我正为最后一点和希望而挣扎,你可以帮我。这不应该太难,但我现在没有头绪。

谢谢

卢卡斯

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-21 22:59:02

如果标记发生变化,这将是稳定的。如果这不起作用,那就意味着this不是我们所期望的那样,我们需要弄清楚它是什么。还请注意,我使用的是.text()而不是.html()。如果您决定在.wp-capition-text中添加一些标记(例如,图标或其他东西),这仍然会捕获文本。

代码语言:javascript
运行
复制
var caption = $(this.element).closest('.gallery-item').find('.wp-caption-text').text();
票数 0
EN

Stack Overflow用户

发布于 2012-09-21 22:45:25

尝尝这个

代码语言:javascript
运行
复制
var caption =  $(this).parent().parent().find('.wp-caption-text').html();

这是如果这个对应于当前锚点

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12539043

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档