delay на смену заголовка

167
22 сентября 2018, 14:30

Пожалуй, это глупый вопрос, но почему-то не получается разобраться. Есть такая интересная маленькая и хрупкая библиотека i miss you: https://github.com/Bahlaouane-Hamza/I-Miss-You (github). Суть в том, что когда мы уходим со вкладки, заголовок меняется на какой мы захотим, например, на i miss you, а так же можно поменять иконку до тех пор, пока пользователь не вернеться.

Нахожу навязчивым ставить такое в обычный режим, поэтому хотел бы сделать delay хотя бы в 30 минут, но не получается это сделать таким образом, каким умею я.

<link rel="shortcut icon" href="favicon.ico"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="jquery.iMissYou.js"></script>
<script>
    jQuery(document).ready(function($){
        $.iMissYou({
            title: "I Miss you !",
            favicon: {
                enabled: true,
                src:'iMissYouFavicon.ico'
            }
        });
    });
</script>

Спасите неваляшку! Умоляю!

Answer 1

Судя по тому, что к этому плагину нет никакой документации, в нём нет возможность сделать то, что вы хотите. Единственный выход - открыть исходных код плагина и переписать его.

Поставить задержку на $.iMissYou(); не выйдет, т.к. слушатель на смену вкладки навешивается самим плагином...

Можно попробовать обойтись без плагина, смену тайтла можно сделать как-то так :

<script>
    window.onblur = function () {document.title='документ неактивен'}
    window.onfocus = function () {document.title='документ снова активен'}
</script>

А если с задержкой, то как-то так:

timerId = null;
function func1() {
   document.title='документ неактивен'
}
function func2() {
    document.title='документ снова активен'
}

window.onblur = function () {
    clearTimeout(timerId);
    timerId = setTimeout(func1, 30000);
}
window.onfocus = function () {
    clearTimeout(timerId);
    func2();
}

Сменить фавикон можно как-то так (не уверен что сработает, сам не пробовал):

<link id="favicon" rel="shortcut icon" type="image/png" href="icon1.png" />
$("#favicon").attr("href","icon2.png");

Фавиконки обычно жестко кешируются, нужно пробовать...

READ ALSO
Обращение к ползунку инпута range на js

Обращение к ползунку инпута range на js

Нужен был слайдер для выбора цветаНашёл решение и немного изменил: https://codepen

192
Сборка всех CSS файлов в один через Webpack

Сборка всех CSS файлов в один через Webpack

Начала изучать Webpack и первым делом решила переписать свою gulp-сборкуОдна из базовых задач в ней - рекурсивно идти по всем папкам проекта, собирая...

173
Сохраненное значение из prompt выводится как undefined

Сохраненное значение из prompt выводится как undefined

Как сделать чтобы выводилось то, что вписывается в prompt? Сейчас выводит undefined, и не пойму почему не видит name и nick

138