使用JQuery从包含A href值中设置*all*IMG-src值

Set *all* IMG src values from containing A href values using JQuery

本文关键字:设置 all IMG-src href JQuery 包含 使用      更新时间:2023-09-26

所以我在几个网页上有很多这样的东西:

<td> <a href="http://www.colincooke.com/coin_images/colincookecol/1587.jpg" target="_blank" class="coinpic"><img src="../site_images/image.png" alt="image" /></a> </td>

我想使用jQuery将img标记的所有src值设置(更改)为与包含标记(在页面加载时)上的href值相同。

到目前为止,我已经搜索过了,并根据我发现的(可能很明显)不起作用的内容将其聚合在一起(设置在$(document).ready(function(brackets)内):

$('td').children('img')
.each(function(){
   url = $('img').attr('href');
    $('img').attr('src',url);
 });

解决上述问题的最佳方法是什么?

如果需要,可以进一步指定选择器。

$('a img').each(function (i, el) {
  el.src = el.parentNode.getAttribute('href');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="sample"><img src="foo" /></a>
<a href="sample2"><img src="bar" /></a>

这将所有图像上的src设置为与其父a的href:匹配

$('a img').attr('src', function() {
  return $(this).parent('a').attr('href');
});

工作Fiddle