javascript - 无法使用 jQuery 访问通过 ajax 加载的元素

标签 javascript jquery ajax

我需要修改通过 ajax 加载的内容,但似乎无法访问它。我无权访问执行初始加载的 js 文件,因此我需要编写一个单独的函数来更改内容。

内容需要自动修改,无需用户点击或与页面上的任何内容交互。

在下面的示例中,“新闻”div 是硬编码的,“文章”div 通过 ajax 加载。

HTML

<div id="news">
<div class="article"><img src="headline1_small.jpg">
<div class="article"><img src="headline2_small.jpg">
<div class="article"><img src="headline3_small.jpg">
</div>

jQuery

$(document).ready(function() {
  console.log( $("#news").html() );
});

控制台

<div id="news">
</div>

如何访问文章?我想从 img src 中删除“_small”。

谢谢!

最佳答案

这应该有效:

$(document).ajaxStop(function() {
    $("#news").find('img').attr("src", function(_, src){
        return src.replace('_small', '');
    });
});

关于javascript - 无法使用 jQuery 访问通过 ajax 加载的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27336935/

相关文章:

javascript - 我的jQuery函数只能第一次运行

php - AJAX + PHP 数据搜索

javascript - 通过 javascript 向 REST API 发送 POST 请求

c# - 将中继器包装在更新面板中后页面仍然刷新

javascript - 你如何在 javascript 中选择父 div 的父级?

javascript - 如何更改 Angular.js 中 $resource 返回的数据?

javascript - 从函数的返回值创建全局变量

javascript - 是否可以使用 Object.create 模式来创建 CustomEvent 对象?

javascript substr 奇怪的行为?

javascript - 按顺序执行2个JavaScript函数