用完整的url替换根相对链接

Replacing root relative links with full URLs

本文关键字:相对 链接 替换 url      更新时间:2023-09-26

我有一个插件,将在一个页面中多次使用。每个都包含在一个具有唯一id的div中。

div的内容将与图像一起接收,这些图像的路径需要加上不同的域。如

<div id="mydiv"><img src="/images/somepic.jpg"></div>

我当前的函数可以正确定位图像并修改它们:

jQuery("#mydiv img[src^='/']" ).prop('src',
  function( _idx, oldHref ) {
    return 'http://example.com'+oldHref;
  }
);

但是,它将它们的src设置为http://example.comhttp://thecurrentsite/images/somepic.jpg,即使源以/开头并且不包含当前站点。

当前站点URL如何进入prop()传递的oldHref ?

prop返回SRC作为完整路径使用attr来获取原始路径

检查这个,它提醒两个版本:

<img src='test.html'>
$("img").prop("src") => full path
$("img").attr("src") => original relative path

如果您使用attr而不是prop,它可以工作。小提琴