jQuery:操作<img src=""/>路径后不会更新HTML

时间:2010-11-16 13:37:43

标签: jquery google-chrome image src

我正在通过jQuery方法加载加载外部内容,并操纵先前加载的 img 元素的 src 属性,如下所示:

<div id="content"></div>
<script>
  $("#content").load("additional_content.html #content table", function() {
    $("#content").find("img").each(function() {
      $(this).attr("src", "new_path/" + $(this).attr("src"));
    });
  });
</script>

在通过Firebug检查父HTML时,源代码已更改并反映新的图像路径。但是,浏览器中呈现的HTML未更新,并指向旧路径。

此外,我在Chrome中收到以下错误:

XMLHttpRequest cannot load file:///.../additional_content.html. Origin null is not allowed by Access-Control-Allow-Origin.

有人可以帮助我吗?

2 个答案:

答案 0 :(得分:3)

Access-Control-Allow-Origin不允许“原点为null”。正在发生,因为您在计算机上本地打开页面而不是通过网址。 Chrome正在检查您是否正在进行跨域通话,并且已决定无法验证您的通话,因为它们是本地通话。这可能是图像未加载的原因的线索 - 您给出的相对路径可能会导致问题。如果将jQuery中显示的HTML保存到新的平面HTML文件并在同一位置打开,图像是否会显示?

答案 1 :(得分:1)

检查XMLHTTPRequest跨域限制主题,例如here