【问题标题】:find image src that :contains?找到 :contains 的图像 src?
【发布时间】:2011-05-28 17:51:51
【问题描述】:

早上好,

我有一个像这样的图像列表:

<ul id="preload" style="display:none;">
<li><img src="afx4000z-navy-icon-1_thumb.jpg"/></li>
<li><img src="afx4000z-green-icon-1_thumb.jpg"/></li>
</ul>

使用 jQuery 如何在 ul#preload 中查找所有包含特定字符串的图像 src,例如“green”

类似...

var new_src = jQuery('#preload img').attr('src')*** that contains green ***;

【问题讨论】:

    标签: jquery contains src


    【解决方案1】:

    你需要使用the *= selector:

    jQuery('#preload img[src*="green"]')
    

    如果你想让它不区分大小写,那就有点困难了:

    var keyword = "green";
    $("#preload img").filter(function(keyword) {
        return $(this).attr("src").toLowerCase().indexOf(keyword.toLowerCase()) != -1;
    });
    

    【讨论】:

    • 非常感谢加比!完美运行!
    • 你的第二个例子会抛出一个错误,数字没有方法.toLowerCase()
    • 我如何使用这个逻辑找到所有没有绿色的图像?
    • 我相信function(keyword) 存在误导和语义错误。修复它的一种方法是将其更改为function()。我是对的吗? :P
    【解决方案2】:

    您可以使用attribute-contains selector ([attr*=value]),如下所示:

    jQuery('#preload img[src*=green]')
    

    【讨论】:

    • 错误。 green 应该用引号引起来。来自链接:“引号是强制性的。”
    • 可爱,区分大小写吗?猜猜它会是......我怎样才能不区分大小写?
    • @Gabi - 它们不是必需的,请自行测试...仅当值包含任何特殊字符时才需要它们。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-15
    • 2023-02-05
    • 1970-01-01
    • 1970-01-01
    • 2015-07-13
    • 2021-02-13
    • 1970-01-01
    相关资源
    最近更新 更多