2012-08-15 77 views
1

我试图避免必须使用slimbox创建重复图像(一个缩略图一个完整大小)。更改图像的src属性

我有'缩略图'图像缩放到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); 
    }); 
}); 

显然不起作用,语法不正确。任何人都可以提出一个好方法来做到这一点? thx!

回答

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) 
    }); 
}); 

DEMO

+0

对不起,在我的文章白痴。是的,图像没有href,我指的是你的意思。这看起来应该可以工作,但是当我尝试它时,的“href”缺失,它仅仅是“href”no“href =”something“” – 2012-08-15 20:50:02

+0

再次道歉。我想用图像的src属性“填充”锚点href值。 – 2012-08-15 20:54:13