WebExtension API: включение / выключение замены DOM
Я только начинаю работать с API WebExtension (в Safari, а не в Chrome), и я дошел до того, что расширение показывает кнопку в всплывающем пользовательском интерфейсе, и при нажатии на нее скрипт content.js заменяет любой заданный слово на странице с другим заданным словом.
Это отлично работает, но я хотел бы иметь еще одну кнопку в пользовательском интерфейсе всплывающего окна, которая легко отменяет этот вызов замены. В настоящее время у меня просто выполняется та же функция замены, но в обратном порядке, но мне интересно, есть ли способ отменить все действия расширения, выполняемые без необходимости определять их во второй раз, и без простого обновления страницы, чтобы отменить все изменения.
Надеюсь, это имеет смысл, буду признателен за любые указатели, которые кто-либо может дать!
1 ответ
Вы не показали нам код, с помощью которого вы производите замену, но если вы хотите повернуть процесс, возможное решение может заключаться в том, чтобы заключить каждое слово \ предложение, которое вы хотите заменить, в тег (например, span) и добавить к нему свойство, которое «запоминает» установленную стоимость. Обычно я делаю что-то вроде этого:
<span class="myExtensionId_className" data-previuosValue="foo">bar</span>