如何使用jQuery更改图片元素srcset值

时间:2016-02-15 23:25:59

标签: jquery html5 image srcset picturefill

如何使用jQuery定位图片元素中的源标记的srcset属性?更改下面的xxxxxxxxxx.jpg和yyyyyyyyyy.jpg的值的正确jQuery代码是什么?

<picture>
    <!--[if IE 9]><video style="display: none;"><![endif]-->
    <source media="(min-width: 992px)" srcset="/images/bannerAds/xxxxxxxxxx.jpg">
    <source media="(min-width: 768px)" srcset="/images/bannerAds/yyyyyyyyyy.jpg">
    <source srcset="/images/bannerAds/zzzz_320x50.png">
    <!--[if IE 9]></video><![endif]-->
    <img src="data:image/gif;base64,R0lGODlhAQABAAAAADs=" alt="Clio">
</picture>

2 个答案:

答案 0 :(得分:3)

有很多方法可以完成它。老实说,由于种种原因,某人的正确方法对你来说可能不正确。

这是一种方法。

function replace_srcset(target, replacement)
{
    // Search for the target
    $('source[srcset="'+target+'"]').attr('srcset', replacement);
}

replace_srcset('/images/bannerAds/xxxxxxxxxx.jpg', '/images/bannerAds/somethingelse.jpg');

答案 1 :(得分:3)

如果您想更改src,则需要覆盖所有source。只是删除它们,因为你没有使用它们:

$('picture source').remove();

然后正常设置src

$('img').attr('src', 'your-new-image.jpg');

如果您想通过保持响应来使用多个src,请多次使用Stephanus的代码。