【发布时间】:2013-03-14 08:44:25
【问题描述】:
我正在将一个 HTML 页面拉到一个包含各种标签(img、div 等)的服务器上。
在客户端,我将它插入到一个 div 中,以便它像 html 文件一样显示出来。它可能包含图像和文本。但有时也有 img 标签,其 src 有相对路径。
如何识别这些不引用完整 http/https(绝对路径)而是以“/”开头的 img 标签以识别它是相对的?
【问题讨论】:
我正在将一个 HTML 页面拉到一个包含各种标签(img、div 等)的服务器上。
在客户端,我将它插入到一个 div 中,以便它像 html 文件一样显示出来。它可能包含图像和文本。但有时也有 img 标签,其 src 有相对路径。
如何识别这些不引用完整 http/https(绝对路径)而是以“/”开头的 img 标签以识别它是相对的?
【问题讨论】:
如果您用来显示它的 DIV 有一个标识符,那么您可以尝试使用
$("#divID").children().find("img").each(function(){
if(($(this).attr("src")).indexOf("PATH")>0)
{ Do whatever.. }
});
【讨论】:
您可以使用字符串函数/正则表达式来检查src 属性是否以http、https 或/ 开头并相应地进行更改。
例子:
$("#div1").find("img").length // returns the number of images inside #div1
$("#div1").find("img").each(function () {
var src = $(this).attr("src"); // grab the src "attribute"
console.log(src);
console.log(src.indexOf("/") == 0); // true -> starts with /
console.log(src.indexOf("http://") == 0); // true -> starts with http://
console.log(src.indexOf("https://") == 0); // true -> starts with https://
});
【讨论】: