html - 使用 GreaseMonkey 从网站隐藏 DIV 的问题
问题描述
有一个网站,如果没有广告,您将无法查看内容。我已经尝试过 Anti-Ad Blocker,但脚本使所有链接都无法使用。
我尝试编写 Greasemonkey 脚本来手动隐藏这几个广告,但到目前为止它不起作用(我不知道为什么)。
// ==UserScript==
// @name Hide annoying shinden ads
// @include https://shinden.pl/*
// @grant GM_addStyle
// ==/UserScript==
var div = document.getElementById("banner-outer");
if (div) {
div.style.display = "none";
}
我要删除的元素:
<div id="banner-inner" style="transform: matrix(0.99999, 0.00087, -0.00087, 0.99999, 0, 0);">
...
</div>
有时也会随机出现不同的 div,从而阻止整个站点:
<div style="position: fixed; display: block; width: 100%; height: 100%; inset: 0px; background-color: rgba(0, 0, 0, 0); z-index: 300000;"></div>
我不知道如何删除它,因为它没有 ID。
PS网站如下:https ://shinden.pl/
解决方案
您可以使用以下代码从网页中删除 Div。
如果随机 Div 在“banner-inner Div”内创建,则上述解决方案有助于创建此类 Div。
如果它在外部创建,则必须通过可用属性(如 width、hieght、z-index)以及 Div 的祖父(具有 ID)来查找和删除创建的 div。
// ==UserScript==
// @name RemoveDiv
// @version 1.0
// @grant none
// ==/UserScript==
var toBeRemoved = document.getElementById('banner-inner');
if (toBeRemoved) {
toBeRemoved.parentNode.removeChild(toBeRemoved);
}
推荐阅读
- hyperledger-fabric - 在 JavaScript 中的一个链码中部署和调用多个智能合约
- c - 为结构指针成员的地址赋值
- python - 为什么我在方法外遇到继承属性的 NameError?
- python-3.x - 根据另一列中的日期过滤列中的值
- javascript - 我想叠加在图像 css 上
- plsql - 如何解决 PL/Sql 函数编译错误
- visual-studio-2019 - 我们可以通过 SSDT 包创建数据库吗?
- c++ - 为什么将音频流添加到 ffmpeg 的 libavcodec 输出容器会导致崩溃?
- java - 在 BroadCastReceiver android 8 中启动服务
- amazon-web-services - 为什么选择查询在 Athena 中返回所有带有文件数据的表数据