Программный запуск действия из контекстного меню браузера (chrome)
Пытаюсь реализовать автоматический перевод субтитров на сайте Udemy.com. Вот скрипт который необходимо загрузить в консоль или в идеале сохранить в расширении User JavaScript and CSS для сайта Udemy.com.
// переменная для сохранения нового текста субтитров
let newText = '';
// переменная для отслеживания состояния кнопки "перевод"
let transTrigger = false
// функция вставляющая перевод в субтитры
function translate() {
let target = $('.well--container--2edq4 span');
let source = document.querySelectorAll('p[data-purpose="transcript-cue-active"] span')[1];
let currentText = source.innerHTML;
if (newText !== currentText) {
target.html(currentText)
}
newText = source.innerHTML;
}
// 10 раз в секунду отслеживаем изменение субтитров и меняем на переведенный текст
window.i = setInterval(() => {
if(transTrigger){
translate()
}
}, 100);
// ждем 5 секунд для полной загрузки страницы и вставляем кнопку "перевод"
setTimeout(function () {
let menu = document.getElementById('scroll-port--4')
const button = document.createElement("button");
button.style.padding = '1rem'
button.style.width = '200px'
button.style.borderRadius = '7px'
button.innerHTML = 'Перовод';
button.onclick = function () {
if (transTrigger === false) {
transTrigger = true
} else {
transTrigger = false
}
if (button.innerHTML === 'Перовод') {
button.innerHTML = 'Остановить перовод';
} else {
button.innerHTML = 'Перовод'
}
}
menu.appendChild(button)
}, 5000);
Для активации перевода субтитров необходимо сначала вызвать окно "расшифровка аудио", затем нажать на кнопку "перевод", но предварительно вызвать контекстное меню кликнув правой кнопкой мыши на странице и выбрать действие "перевести на русский".
В принципе скрипт работает и в таком виде, но для полного счастья не хватает знания как активировать действие "перевести на русский" программно в скрипте. Потому, что перед каждым следующим роликом приходится это делать руками.
Заранее всем спасибо.