Вы должны использовать таймер для перемещения букв одну за другой.
var blurPageTitle = ''; // Variable to save the page title. Otherwise it removes the spaces from the title.
changeTitle = function(){
var letter = blurPageTitle.charAt(0);
blurPageTitle = blurPageTitle.substr(1) + letter;
document.title = blurPageTitle;
changeTitleTimer = setTimeout(changeTitle, 500);
};
Просто вызовите функцию, когда вы хотите ее запустить. Чтобы двигаться быстрее, уменьшите время в функции setTimeout, чтобы двигаться медленнее, увеличьте его.
stopChangingTitle = function(){
clearTimeout(changeTitleTimer);
}
Чтобы отменить перемещение, просто вызовите эту функцию, и она остановится.
Если вам нужно ее реализовать в вашем коде это будет выглядеть так:
<script>
jQuery(document).ready(function( $ ){
// Get page title
var pageTitle = $("title").text();
var blurPageTitle = ''; // Variable to save the web title.
// Change page title on blur
$(window).blur(function() {
$("title").text("Hej! Wracaj do nauki! 🙂");
blurPageTitle = document.title+' '; // Update title with the default title * Space required in the end not to mix the first with last word.
changeTitle(); // Start moving the title
});
// Change page title back on focus
$(window).focus(function() {
$("title").text(pageTitle);
stopChangingTitle(); // Stop moving the title
});
changeTitle = function(){
var letter = blurPageTitle.charAt(0);
blurPageTitle = blurPageTitle.substr(1) + letter;
document.title = blurPageTitle;
changeTitleTimer = setTimeout(changeTitle, 500);
};
stopChangingTitle = function(){
clearTimeout(changeTitleTimer);
}
});
</script>