如何使用 javascript 阻止来自某些网站的图像?

发布于 2024-11-09 18:55:22 字数 248 浏览 1 评论 0 原文

我认为这可以用 js 来完成。

假设我想阻止从 example.com 加载图像,甚至使用单个图像路径?

我更喜欢第一个变体。我可以这样做吗?

示例:

如果图像以 http://example.com/filepath 显示在 html 中,则不允许显示来自该域甚至文件路径的图像。

I think this can be done with js..

Let's say i want to block loading images from example.com or even with a single image path?

I prefer the first variant. can i do this?

Example:

if a image is displayed in html with http://example.com/filepath, don't allow to display images from that domain or even the file path.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

七七 2024-11-16 18:55:22

可能不会。您可以在页面底部添加 JavaScript 或使用 onLoad 事件,但此时浏览器可能已经启动了加载图像的请求(它可以在读取时立即开始)图像 URL)。

只需保证您的 JavaScript 在浏览器的高度优化 URL 加载开始之前执行。

由于同源策略,您也无法在 iframe 中加载其他页面。

相反,您应该配置诸如 Privoxy 之类的代理或使用诸如 广告拦截

Probably not. You can add JavaScript at the bottom of the page or using the onLoad event but at that time, the browser might have already started the requests to load the images (it can start with that as soon as it reads the image URL).

There simply is guarantee that your JavaScript executes before the highly-optimized URL loading of the browser kicks in.

You also can't load the other page in an iframe thanks to Same Origin Policy.

Instead, you should configure a proxy like Privoxy or use something like AdBlock.

深巷少女 2024-11-16 18:55:22

使用 Firefox,您可以Greasemonkey 利用 Javascript 的所有功能来完成此操作。

With Firefox you can Greasemonkey to do exactly this with all the power of Javascript.

蓝眼睛不忧郁 2024-11-16 18:55:22

如果你不介意

在 body 标签上

<body onload="remove()">

使用 jquery javascript(jquery)

function remove()
{
    $('img').each(function() {
        if(this.src.search('somehostname') != -1)
            $(this).remove();
    });
}

不确定他们是否触发了图像请求,但他们肯定不会出现在你的视线中

If you don't mind using jquery

on body tag

<body onload="remove()">

javascript(jquery)

function remove()
{
    $('img').each(function() {
        if(this.src.search('somehostname') != -1)
            $(this).remove();
    });
}

Not sure if they fired image request or not ,but they won't come in your sight for sure

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文