我正在开发一个 WordPress 主题并将Fancybox 灯箱插件构建到我的代码中。这工作正常,除了一个小问题。
但我会先给你看代码,这样更容易解释。
<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-tags 中的描述附加到灯箱图像标题(此时正在显示 a-tag 的标题,这是一个字母数字字符串 - 不是很用户友好)。
为了给灯箱标题分配一些东西,必须在灯箱的初始化函数中调用以下 javascript。(此代码实际上将第一个.wp-caption-text元素的内容分配给每个图像标题。)
$(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-caption-text类的第一个元素将分配给灯箱和每个图像。但我只想获取已在灯箱中打开的图像的相应wp-caption-text 。所以我将不得不使用类似$(this)的东西,然后导航到相应的wp-caption-text并将文本分配给标题变量。
我正在努力解决最后一点,希望你能帮助我。这应该不会太难,但我目前没有任何线索。
谢谢
卢卡斯