Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите доработать скрипт (https://javascript.ru/forum/misc/65462-pomogite-dorabotat-skript.html)

mal4ishok 20.10.2016 15:53

Помогите доработать скрипт
 
как добавить 3 переменную что бы показывал 3 варианта заголовка


<script>

blinkTitle("Тект1","текст2","текст3" ,1000);
var hold = "";
function blinkTitle(msg1, msg2, msg3, delay, isFocus, timeout) {
if (isFocus == null) {
isFocus = false;
}
if (timeout == null) {
timeout = false
}
if(timeout){
setTimeout(blinkTitleStop, timeout);
}
document.title = msg1;
if (isFocus == false) {
hold = window.setInterval(function() {
if (document.title == msg1) {
document.title = msg2;
} else {
document.title = msg1;
}
}, delay);
}
if (isFocus == true) {
var onPage = false;
var testflag = true;
var initialTitle = document.title;
window.onfocus = function() {
onPage = true;
};
window.onblur = function() {
onPage = false;
testflag = false;
};
hold = window.setInterval(function() {
if (onPage == false) {
if (document.title == msg1) {
document.title = msg2;
} else {

document.title = msg1;
}
}
}, delay);
}
}
function blinkTitleStop() {
clearInterval(hold);
}
</script>

Aetae 20.10.2016 16:26

blinkTitle("Тект1","текст2","текст3" ,100);

function blinkTitle() { //количество аргументов не ограниченно
  var msg = [], i = 0;
  while(typeof arguments[i] === 'string') msg.push(arguments[i++]);
  var delay   = arguments[i++] || 1000,
      isFocus = arguments[i++] || false,
      timeout = arguments[i++] || false;
  
  i = 0;
  function nextTitle(){
    document.title = msg[ i++ % msg.length ]  
  }
  
  if(timeout){
    setTimeout(blinkTitleStop, timeout);
  }
  
  nextTitle();
  
  if (isFocus) {
    var onPage = false;
    var testflag = true;
    var initialTitle = document.title;
    window.onfocus = function() {
      onPage = true;
    };
    window.onblur = function() {
      onPage = false;
    };
    blinkTitle.hold = window.setInterval(function() {
      if (!onPage) nextTitle();
    }, delay);
  } else {    
    blinkTitle.hold = window.setInterval(nextTitle, delay);  
  }
}

function blinkTitleStop() {
  clearInterval(blinkTitle.hold);
}
Я бы вообще по-другому сделал, ну да ладно.

mal4ishok 20.10.2016 16:34

Спасибо большое))):thanks:


Часовой пояс GMT +3, время: 20:16.