【问题标题】:Change the img source based on a specific image根据特定图像更改img源
【发布时间】:2015-12-10 11:50:45
【问题描述】:

我有一个页面有几个需要更改的图标图像。我无法通过 ID 获取图像,因为它们是由服务器生成的,因此总是会更改,但我可以通过类名获取它们。

所以我想更改页面上几个图标图像中的 4 个,方法是获取图像源并检查它是否符合我要更改的图像的标准,然后换入新的图标图像。

我在 javascript 和 JQuery 中有一些笨拙的版本,但我真的在寻找一个功能强大且简单的精巧版本。

我确实发现这对于需要在多个位置更改的 4 个单独的图像效果很好:

 function changeArrow() {
            $('img[src="chevron-orange-round-down.jpg"]').attr('src', 'chevron-blue-round-down.jpg')
            $('img[src="chevron-orange-round-up.jpg"]').attr('src', 'chevron-blue-round-up.jpg') 
            $('img[src="chevron-orange-round-left.jpg"]').attr('src', 'chevron-blue-round-left.jpg') 
            $('img[src="chevron-orange-round-right.jpg"]').attr('src', 'chevron-blue-round-right.jpg') 
        }

我预计我需要一个如下所示的循环,例如 .each ,但这改变了所有符合条件的图像实例。

【问题讨论】:

    标签: javascript jquery html image tags


    【解决方案1】:

    你可以设置src attr $('.image').attr('src', 'val');

    或者通过一个简单的循环

    $('.image').each(function(i, obj) {
        if($(this).attr('src')=='some criteria')
        {
        $(this).attr('src', 'val');
        }
    });
    

    【讨论】:

    • 谢谢,我有这样的东西: $('img[src="red-arrow-up.jpg"]').attr('src', 'blue-arrow-up.jpg ') // 每张图片重复
    • 我很快就会试一试 - 看起来不错,完成后我会更新你,干杯
    • 我发现第一个示例稍作修改就可以正常工作,无需循环。感谢您的帮助
    • 已经完成,但它是新帐户,所以还没有显示upvote,不确定接受在哪里??
    • 你可以勾选ans旁边的复选框
    猜你喜欢
    • 2012-10-18
    • 2012-09-28
    • 1970-01-01
    • 1970-01-01
    • 2015-10-01
    • 1970-01-01
    • 2019-09-11
    • 2019-07-17
    • 2017-12-12
    相关资源
    最近更新 更多