@C_21

Как сделать что бы расширение для хрома не давало браузеру замораживать вкладку и вкладка была всегда активной?

Есть самописное расширение для одного сайта. Что бы браузер не замораживал вкладку, был написан костыль который крутит видео в фоне и не дает браузеру усыпить вкладку.
Но все равно нужно сделать хоть один клик на странице, что бы вкладка не замораживалась. Можно ли как то обойти это, что бы вкладка после открытия или обновления по F5 была активной и что бы браузер не смог ее заморозить, что бы скрипты расширения могли выполняться без первого клика пользователя?

Самая главное что я не могу решить, как заставить расширения сразу после открытия страницы выполнять произвольный код.
//<editor-fold desc="Вкладки - пинаем спящие">
	const video = document.createElement('video');
	video.setAttribute('width', '10');
	video.setAttribute('height', '10');
	video.style.position = 'absolute';
	video.style.top = '-10px';
	video.style.left = '-10px';
	document.body.appendChild(video);

	const video_mp4 = document.createElement('source');
	video_mp4.setAttribute('src', `chrome-extension://${document.head.dataset.extension}/video/dummy.mp4`);
	video_mp4.setAttribute('type', 'video/mp4');
	video.appendChild(video_mp4);

	const video_ogg = document.createElement('source');
	video_ogg.setAttribute('src', `chrome-extension://${document.head.dataset.extension}/video/dummy.ogv`);
	video_ogg.setAttribute('type', 'video/ogg');
	video.appendChild(video_ogg);

	addEventListener(`click`, () => {
		video.setAttribute('loop', 'loop');
		video.play().catch(e => console.error(e));
		setInterval(() => {
			document.title = new Date(server_time()).toLocaleTimeString();
			if (parent) parent.document.title = document.title;
		}, 500)
	}, {once: true});
	//</editor-fold>
  • Вопрос задан
  • 33 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы