Код JavaScript
🔗 Оригинальная страница — Источник данного материала
Код JavaScript
Описание
Данный экшен позволяет выполнять пользовательский JavaScript код на страницах сайтов. Так же с помощью данн ого экшена можно проводить арифметические операции с переменными проекта:
Как добавить действие в проект?
Через контекстное меню Добавить действие → Свой код → JavaScript
Либо воспользуйтесь ❗→ умным поиском.
Для чего это используется?
- Арифметические операции с переменными
- Взаимодействие с элементами страницы по средствам JavaScript
Как работать с экшеном?
У экшена существует несколько режимов работы:
Не зависимо от выбранного режима работы в настройках экшена обязательно должна быть указана переменная, в которую сохранится результат работы (даже если логика Вашего кода не подразумевает возврат значения)
Локально
Код будет выполнен в изолированном окружении (независимо от браузера, за его пределами). Этот способ можно использова ть для работы с переменными. Работать с числами и строками. Выполнять любые действия с данными которые позволяет JS.
Протестировать такой код можно с помощью Тестера JavaScript .
При работе в данном режиме не надо указывать ключевое слово return, если Вы хотите вернуть какое-то значение. Результатом работы данного экшена будет значение, вычисленное в последней строке экшена. На примере ниже в переменную проекта { -Variable.result- }
попадёт значение “6”, результат выражения 2+2*2.
На текущей странице
Код будет выполнен в браузере (текущем инстансе). Этот способ стоит использовать для работы с DOM деревом страницы, для взаимодействия с элементами страницы.
При работе в данном режиме у Вас есть доступ ко все объектам текущей страницы, в том числе Вы можете использовать подключенные на сайте библиотеки и фреймворки (например jQuery).
На странице расширения
Код будет выполнен в контексте активированного расширения.
При создании окна страницы
Скрипт выполнится во время события DOMWindowCreated. С помощью данного режима можно переопределять любые JavaScript объекты, до первого обращения к ним сайта. У данного режиме есть несколько вариантов исполнения:
- один раз - код выполнится единожды;
- на домене - код будет исполняться каждый раз при создании окна для указанного домена (если отмечена настройка Во всех вкладках, то код исполняется во всех вкладках инстанса)
- все время - код исполняется при каждом создании окна независимо от домена (если отмечена настройка Во всех вкладках, то код исполняется во всех вкладках инстанса)
При загрузке страницы
В таком варианте скрипт выполняется во время события DOMContentLoaded. Один из вариантов применения: отключать отображение ненужных или мешающих элементов на странице
Как и в предыдущем режиме существует несколько вариантов исполнения:
- один раз - код выполнится единожды;
- на домене - код будет исполняться каждый раз при создании окна для указанного домена (если отмечена настройка Во всех вкладках, то код исполняется во всех вкладках инстанса)
- все время - код исполняется при каждом создании окна независимо от домена (если отмечена настройка Во всех вкладках, то код исполняется во всех вкладках инстанса)
Пример использования
Арифметические операции
![]() |
---|
В результате выполнения этого экшена в переменную проекта result сохранится результат деления переменной проекта height на 2 |
Подключение JavaScript библиотек
С помощью данного экшена можно встроить на страницу библиотеку, которой изначально не было. Например, можно с помощью такого кода добавить jQuery
var s = document.createElement('script');
s.type = 'text/javascript';
s.src = 'https://code.jquery.com/jquery-1.10.2.min.js';
document.body.appendChild(s);
Пример проекта: