Есть ли способ отключить определенный JS-скрипт с определенного сайта?

14

Я хочу отключить определенный сценарий JS от определенного веб-сайта, не отключая полностью JavaScript. Есть способ сделать это ?

Прашант Баид
источник

Ответы:

7

(Ссылка: http://noscript.net/faq#qa8_10 )

После установки NoScript откройте его опцию (открыв контекстное меню на маленьком значке в строке состояния / панели надстроек или через менеджер дополнений)

Перейдите на вкладку «Дополнительно». На этой странице перейдите на вкладку ABE. Под Rulesets, нажмите на USER. Вот пример набора правил, поместите его в текстовое поле справа:

# User-defined rules. Feel free to experiment here.
Site http://res.nimg.jp/js/ads.js*
Deny

Я не уверен, как работает сопоставление URL, использует ли оно регулярное выражение или нет. Некоторые примеры в FAQ показывают использование регулярных выражений, но мой приведенный выше пример, похоже, тоже совпадает ads.js?foobarbaz.

syockit
источник
4

Если вы используете Firefox, вы также можете использовать AdBlock Plus, чтобы заблокировать все функции в определенном файле. (Инструкции ниже для Windows.)

  • На панели инструментов нажмите значок AdBlock Plus и выберите в меню «Открыть блокируемые элементы».
  • Появится окно со списком всего, что может заблокировать ABP. Вы можете прокрутить список, чтобы найти конкретный файл скрипта, или вы можете ввести в поле поиска, чтобы сузить список. Найдя файл, который нужно заблокировать, щелкните файл правой кнопкой мыши и выберите «Заблокировать этот элемент» ....
  • ABP создаст новый фильтр на основе этого файла и перечислит несколько вариантов для вас:
    1. Полный путь к файлу (www.domain.com/scripts/ascriptyoudontlike.js)
    2. Любой файл в этом поддомене (www.domain.com)
    3. Любой файл в этом домене (domain.com)
    4. Пользовательское правило, которое вы можете определить; по умолчанию начинается с 1.
  • Нажмите переключатель рядом с первой опцией и нажмите Добавить фильтр. Это закроет окно и добавит этот файл JavaScript в список заблокированных элементов.

Возможно, вам придется обновить страницу, чтобы убедиться, что файл заблокирован.

Дейв ДюПлантис
источник
3

В Chrome встроена эта функциональность, она включена в блокировку запросов в инструментах разработчика. Этот ответ на StackOverflow имеет отличное описание того, как его использовать.

Gavinvin
источник
Пожалуйста, процитируйте соответствующие разделы из связанного ответа.
Бурги
Я не видел смысла в ненужном дублировании. Я должен был бы опубликовать все содержание ответа, включая изображения, и если бы я это сделал, любой, кто ищет этот ответ, пропустил бы комментарии и другие ответы на вопрос в stackoverflow. На самом деле этот вопрос является дубликатом этого вопроса, но ответы на него гораздо лучше, чем те, которые размещены здесь.
Гэвинвин
3
но если что-то случится с SO-ответом, значительная часть полезности вашего ответа исчезнет. Определенное количество дублирования между сайтами в порядке
подмастерье - мастер
Это должен быть лучший ответ, вам не нужно ничего устанавливать. Благодарность!
Edenshaw
1

Если вы используете Firefox, плагин NoScript позволит вам сделать это.

http://noscript.net/

Iszi
источник
+1 - NoScript это именно то, что вы ищете. Насколько я знаю, вам понадобится браузер Firefox, чтобы использовать его. Отличное продолжение.
Boehj
0

AdBlock Plus делает это, но не относится ли это к угрозе безопасности? В реальной жизни отключение JS может вызвать проблемы в приложении (например, атака XSS с отключением .js, проверяющего проверку входных данных пользователя) или в любом случае любая проверка на стороне пользователя, а не на стороне сервера.

Лаброс кар
источник