Как удалить div с изменяющимся идентификатором через Tampermonkey / Greasemonkey? - PullRequest
0 голосов
/ 18 декабря 2018

Я хотел бы иметь возможность удалить div с идентификатором, который меняется каждый раз, когда вы обновляете страницу.

Div выглядит следующим образом:

<div id="8474adblockinfo">
</div>

Таким образом, существует обычный идентификатор, называемый adblockinfo, и он всегда имеет набор из 4 чисел в идентификаторе перед adblockinfo (например, 1234adblockinfo)., 1235adblockinfo).Любая идея, как я могу удалить это с помощью сценария Tampermonkey?

Я пробовал код:

$("div[id$='adblockinfo']").remove
$("div[id$='adblockinfo']").css('display', 'none');

Кажется, ни один не работает.

Я также думаю, что веб-страницавставка div через AJAX после загрузки страницы или что-то, так что это может быть проблемой?Я пытался запустить скрипт по адресу: // @run-at document-idle, но этого не произошло.

Есть ли какие-либо советы по этому поводу?

1 Ответ

0 голосов
/ 18 декабря 2018

Следующее будет работать как на статических страницах, так и на страницах, управляемых AJAX:

// ==UserScript==
// @name     _delete Adblock blocking nodes
// @match    *://YOUR_SERVER.COM/YOUR_PATH/*
// @require  https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js
// @require  https://gist.github.com/raw/2625891/waitForKeyElements.js
// @grant    GM_addStyle
// @grant    GM.getValue
// ==/UserScript==
//- The @grant directives are needed to restore the proper sandbox.
/* global $, waitForKeyElements */

waitForKeyElements ("[id$='adblockinfo']", killNode);

function killNode (jNode) {
    jNode.remove ();
}
...