首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查Image是否有外部url

问检查Image是否有外部url
EN

Stack Overflow用户
提问于 2019-05-17 08:37:46
回答 2查看 117关注 0票数 1

我们已经为页面生成器创建了一个图片库插件,它将图像显示为图片库,如下所示:

<img class="sppb-img-responsive" src="'.JUri::base(true).'/'.$value->thumb.'" alt="' . $value->title . '">

但问题是,当它使用外部图像链接时,它会返回一个错误,如下例所示:

<img class="sppb-img-responsive" src="/dev/ibwintalldev/https://cdn.pixabay.com/photo/2015/05/15/14/38/computer-768608_1280.jpg" alt="test">

有没有办法检测这个问题来解决这个问题?

或者检查图像是否有外部链接?

谢谢Lahmar

EN

回答 2

Stack Overflow用户

发布于 2019-05-17 11:18:33

为什么src标记包含/dev/ibwintalldev/,因为该图像没有显示。将其移除并尝试。

代码语言:javascript
复制
<html>
    <body>
        <img class="sppb-img-responsive" 
            src="https://cdn.pixabay.com/photo/2015/05/15/14/38/computer-768608_1280.jpg" 
            alt="test">
    </body>
</html>
票数 0
EN

Stack Overflow用户

发布于 2019-05-17 13:19:37

您可以在https:之前删除不需要的文本,如下所示:

代码语言:javascript
复制
// returns all images on page
images = document.getElementsByTagName("img")

for (let img of images) {
    // replaces extra text from the src 
    img.src = img.src.replace(/(.+?)(?>http)/, "")
}

正则表达式解释:

(.+?)匹配所有内容(如果有),直到后面的内容(即http),并添加到匹配组

(?=http)预测模式http (但不包括在匹配组中,因此不会被替换)

下面显示了正则表达式的工作情况:

​

代码语言:javascript
复制
let img = new Image;
img.src="/dev/ibwintalldev/https://cdn.pixabay.com/photo/2015/05/15/14/38/computer-768608_1280.jpg";

// we apply the regex
img.src = img.src.replace(/(.+?)(?=http)/, "")

console.log(img.src);

​

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56178160

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档