このアプローチは役職Chrome で HTML ヘッダーを自動的に削除するとうまく機能します。ただし、バナーを処理する場合は失敗します。
バナーのHTMLコードはこちらです
<div id="js-gdpr-consent-banner">
以下は TamperMonkey で実行されるコードです。
// ==UserScript==
// @name New Userscript
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @grant none
// @include http://*
// @include https://*
// ==/UserScript==
(function() {
'use strict';
var elems = document.getElementsByTagName('header');
elems[0].parentNode.removeChild(elems[0]);
var elems1 = document.getElementsById('js-gdpr-consent-banner');
elems1[0].parentNode.removeChild(elems1[0]);
})();
何が足りないのでしょうか?
答え1
その ID を持つ要素は 1 つだけであるはずなので、getElementById を使用する必要があります (複数形ではなく、存在しません)
https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementById
ブラウザ/JavaScriptのバージョンに応じて、elems1.remove()を実行するだけで削除できます。
https://developer.mozilla.org/en-US/docs/Web/API/ChildNode/削除
完全なコードは次のようになります
// ==UserScript==
// @name New Userscript
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @grant none
// @include http://*
// @include https://*
// ==/UserScript==
(function() {
'use strict';
var elems = document.getElementsByTagName('header');
elems.item(0).remove();
var elems1 = document.getElementById('js-gdpr-consent-banner');
elems1.remove();
})();