выполнение скрипта в неактивной вкладке
Для страницы написал скрипт который меняет содержимое текстового поля и вызиваю focus() и blur() после чево кнопка сохранения становится активной и сохраняю. Но проблема в том что скрипт работает только в активной вкладке. Как можна решить ету задачу для неактивной вкладки?
|
браузер смартфона?
|
браузер хром на пк
|
должон пахать, напишите примерчик
|
var elements = document.getElementsByClassName('description');
var keys=elements[0].textContent;
document.getElementsByTagName('textarea')[0].value='';
document.getElementsByTagName('textarea')[0].focus();
document.getElementsByTagName('textarea')[0].blur();
document.getElementsByTagName('textarea')[0].value=keys;
document.getElementsByTagName('textarea')[0].focus();
document.getElementsByTagName('textarea')[0].blur();
document.getElementById("save_page").click();
я так понял что фокус на елементе не срабатывает если вкладка фоновая, в следствие кнопка сохранить неактивная. |
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<script>
var inp = document.querySelectorAll('input');
var i = 0;
setInterval(function(){
i++;
inp[i].focus();
},1000);
</script>
в этом примере каждую секунду фокус переносится в следующий инпут, перейдите на другую вкладку, подождите посмотрите что будет. |
j0hnik,
Строго говоря, фокус не переносится. Для полноты добавьте inp[i].focus(); |
ой не тот пример кинул
|
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<script>
var i = 0;
document.querySelector('input').focus();
setInterval(function(){
document.activeElement.value = i++;
document.activeElement.nextElementSibling.focus();
},500);
</script>
Вот более наглядный пример |
Да фокус переносится. В моем случае проблема похоже в другому, если скрипт в активной вкладке работает то после изменения input и смещение фокуса срабатывает некое событие, которое проверяет изменились ли данные в поле если да то можна сохранять. А если в фоновой вкладке то такая проверка не происходит.
Можна както отследить которое собитие срабатыват в активной вкладке и запускать програмно в фоновой? |
ссылку в студию
|
К сожалению ета страница в личном кабинете.
Но елси вдруг Вы есть на етом сайте то вот ссылка, id нужно изменить на Ваш id работы. https://submit.shutterstock.com/edit...id=5654545 44 Прикреплю ссылки на js файлы, может через них можно чтото узнать https://submit.shutterstock.com/js/prototype_17.js https://ajax.googleapis.com/ajax/lib.../jquery.min.js https://submit.shutterstock.com/js/c...itor.js?rev=58 |
| Часовой пояс GMT +3, время: 07:43. |