1

我试图避免使用 slimbox 创建重复的图像(一个缩略图一个全尺寸)。

我将“缩略图”图像缩放为 100% 宽度和高度“自动”,因此它们都很好地适合其父容器,缩放为缩略图大小。单击会在灯箱中打开全尺寸图像。那部分很好。

我想改进的是两个图像之间的实际关系。目前我有

<a href="path/to/image.jpg" rel="lightbox" title="some title">
<img src="path/to/image.jpg">

由于他们使用相同的图像,我想以编程方式填充

<a href="XXX">

与图像源具有相同的路径。我想我可以使用兄弟选择器“.next”来执行此操作并向自身添加一个类。

$(function(){
    $('a.foo').each(function() {
        $(this).next('img').attr('href', this.href);
    });
});

显然这不起作用,语法不正确。谁能提出一个好的方法来做到这一点?谢谢!

4

1 回答 1

1

您在右侧并且代码中没有语法错误,但是图像没有href属性,您应该修改它们的src属性,试试这个:

$(function() {
    $('a.foo').each(function() {
        $(this).next().attr('src', this.href);
    });
});

$(function() {
    $('a.foo').each(function() {
      var src = $(this).find('img').attr('src');
      $(this).attr('href', src)  
    });
});

演示

于 2012-08-15T20:43:48.300 回答