JQuery изменить заголовок страницы, когда пользователь на другой вкладке - PullRequest
4 голосов
/ 06 июля 2011

У меня есть чат на моей странице. Я хочу изменить заголовок (что-то движется, как на omegle.com) при получении нового сообщения, когда пользователь не находится на той же вкладке, что и чат. Когда пользователь вернется на вкладку, заголовок вернется к обычному.

Полагаю, это должно быть сделано jQuery. Знаете ли вы какие-либо плагины или как я могу это сделать?

Ответы [ 3 ]

13 голосов
/ 06 июля 2011

Заголовок можно редактировать только так:

document.title = "blah";

Таким образом, вы можете сделать:

var origTitle = document.title;
document.title = "You have ("+x+") new messages - "+origTitle;

Чтобы сделать его миганием, вам нужно будет что-то сделать с setTimeout();

var origTitle = document.title;
var isChatTab = false; // Set to true/false by separate DOM event.
var animStep = true;
var animateTitle = function() {
    if (isChatTab) {
        if (animStep) {
            document.title = "You have ("+x+") new messages - "+origTitle;
        } else {
            document.title = origTitle;
        }
        animStep = !animStep;
    } else {
            document.title = origTitle;
            animStep = false;
    }
    setTimeout(animateTitle, 5000);
};

animateTitle();
2 голосов
/ 06 июля 2011

try

$('title').text("some text");

Обновление

Очевидно, в IE $('title')[0].innerHTML возвращает содержимое тега <title>, но вы не можете установитьэто значение, кроме использования document.title.Я предполагаю, что это должно быть улучшением jQuery API, так как $('title')[0] возвращает DOMElement (nodeType = 1) ...

0 голосов
/ 06 июля 2011

$('title').text('your title') достаточно.

Чтобы увидеть, что вы выбрали правильный путь, просто используйте панель инструментов разработчика IE (F12), перейдите в консоль и напишите $('title'), вы должны увидеть [...] в консоли. Это означает, что $('title') является объектом, и он работает до сих пор. Затем напишите typeof $('title').text, и в результате вы увидите function. Если эти тесты в порядке, то ваш IE не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...