【问题标题】:Changing more than one element's data-src to src upon .load() in JQuery?在 JQuery 中将多个元素 data-src 更改为 .load() 上的 src?
【发布时间】:2021-03-30 06:40:04
【问题描述】:

我正在尝试找出一种方法,在从外部 PHP 文件加载内容时将多个元素的属性从 data-src 更改为 src。到目前为止,我对下面的代码仅部分成功,因为它确实执行了该功能,但仅在加载的 first img 元素上,而加载的另一个 img 元素不受影响。如何选择两个 img 元素并在.load() 上应用data-srcsrc 操作?

$(document).ready(function() {
    $(".imginset").load('PATHTOURL.php img:lt(1)' , function() {
        $("img").each(function() {
            $(this).attr("src",$(this).attr("data-src")).removeAttr("data-src");
        }); 
    });
});

HTML:

来自外部 PHP 文件:

<a href="LINK1">
    <img data-src="IMGURL1.jpg" alt="">
</a>
<a href="LINK2">
    <img data-src="IMGURL2.jpg" alt="">
</a>
<a href="LINK3">
    <img data-src="IMGURL3.jpg" alt="">
</a>

以及用于显示内容的 HTML:

<div class="imginset"></div>

【问题讨论】:

  • 你能显示你的html吗?这有帮助吗? stackoverflow.com/questions/1291481/…
  • @jqueryHtmlCSS,我添加了一些 HTML 供参考。我还调整了初始脚本中的一些内容。
  • img:lt(1) 只加载第一个 img 吗?
  • @Richard 不,它加载了两个img,但是从data-src到src的属性替换功能只适用于加载的第一张图片
  • 抱歉给您带来的困惑,我已经弄明白了。

标签: jquery image function attributes src


【解决方案1】:

想通了:

$(document).ready(function(){
    $(".imginset").load('PATHTOURL.php a>img:lt(2)',function(){
        $("img").each(function(){
            $(this).attr("src",$(this).attr("data-src")).removeAttr("data-src");
        }); 
    });
});

似乎通过为每个图像指定父元素(在本例中为&lt;a&gt;),它允许选择多个img

【讨论】:

    猜你喜欢
    • 2014-08-16
    • 2019-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多