Try using "Template" action and construct your text with hyerlinks than paste it to page.
Other option is to create simple LOCAL html page somewhere on your hard disk with
desired text and links, than open that local html page in another tab in BAS and than copy
from that tab to the tab where you are working.
Изменить js-код в теле страницы?
-
Подскажите как можно изменить js-код который находится в теле страницы (Не подключаемый файл)?
К примеру удалить вызов функции, Изменить переменную. -
Смотря какой код, если там просто задефайнена функция и она существует в текущем скопе страницы, то её можно просто переопределить своей до вызова через блок яваскрипта. Всё становится сложнее если функция является анонимной самовызывающейся, в таком случае скорее всего придётся использовать своё расширение, т.к апи хрома позволяет работать с кучей контекстов, позволяя изменить всё тело страницы до её рендеринга. Существует ещё блок "выполнять при каждой загрузке страницы в браузере", в некоторых моментах может помочь переопределить код
-
@EzVortex Проблем с вызовом функции нет. Они вызываются через консоль.
Мне хотелось бы изменять переменные\удалять вызов функции в самой функции. Короче полностью редактировать js-код как редактируют html-код с помощью Xpath.Хотел получить весь тег <script>, заменить в нем токены\ключи\id на свои, и вставить на страницу в замен родной. Но в басе не нашел такую функцию.
Да и в обычном хроме не получается изменять js-код на лету как html
Можешь поподробнее рассказать про кубик "Выполнять при каждой загрузке страницы в браузере"? Не понимаю как с ним работать.
-
@mansory333 said in Изменить js-код в теле страницы?:
@EzVortex Проблем с вызовом функции нет. Они вызываются через консоль.
Мне хотелось бы изменять переменные\удалять вызов функции в самой функции. Короче полностью редактировать js-код как редактируют html-код с помощью Xpath.Хотел получить весь тег <script>, заменить в нем токены\ключи\id на свои, и вставить на страницу в замен родной. Но в басе не нашел такую функцию.
Да и в обычном хроме не получается изменять js-код на лету как html
Можешь поподробнее рассказать про кубик "Выполнять при каждой загрузке страницы в браузере"? Не понимаю как с ним работать.
Тогда просто переопредели функцию. Действие "яваскрипт":
function НАЗВАНИЕ_ФУНКЦИИ (){} -
@Fox Подскажи,
Я в "Яваскрипт создаю новую функцию
function my_test_func(){ console.log("Тест 777") }Затем хочу вызвать ее, в "Яваскрипт" пищу,
my_test_func()Но получаю ошибку
ReferenceError: my_test_func is not definedЕсли через BAS открыть DevTools и в консоле создать эту же функцию,
то ее могу Вызвать и через "Яваскрипт" и через консоль.На сколько я понял, почему то, в "Яваскрипт" не могу создать новую функцию.
Почему так?если надо могу прикрепить тестовый скрипт.
Так все работает и в обычном браузере
-
@mansory333 потому что код в этом действии оборачивается в IIFE, и ваша функция определяется именно там, как вариант, можно сделать так:
window.my_func = function () {} -
@Oyasumi-Punpun Спасибо, Большое) Получилось
-
@Oyasumi-Punpun
Не подскажешь еще 1 момент
Вызов функции в кубике "Яваскрипт"В кубик "Яваскрипт" Создаю функцию
window.open_tab = function () { window.open("https://google.com"); }Так же в кубике хочу ее вызвать
open_tab()Ошибки в логе бас нет, но вкладка не открывается.
Если в консоли DevTools вызвать ее
open_tab()Вкладка в бас открывается.
Подскажи как правильно вызвать функцию через "Яваскрипт"?