Проверка домашней страницы пользователя в Internet Explorer

В Google отображается всплывающее окно с запросом, если вы хотите настроить домашнюю страницу как google.com. Это нормально, когда я говорю "ОК", он устанавливает его как google.com. После этого, однако, я больше не получаю всплывающее окно. Насколько я знаю, никто не сможет получить ценность моей домашней страницы, потому что это частная информация. Но почему-то Google отслеживает это. Я получаю всплывающее окно, когда я устанавливаю свою домашнюю страницу как другой сайт. Я удалил файлы cookie, но даже тогда он отображается только тогда, когда я установил домашнюю страницу как другой сайт.

Я тестировал это поведение на IE8 и IE9. Всплывающее окно никогда не появляется в Firefox и Chrome.

Ответ 1

Internet Explorer позволяет задать вопрос о том, является ли данный URL домашней страницей, он подробно описан на странице этой страницы MSDN. Это ссылка на эту страницу примера, демонстрирующую API.

Ответ 2

Код, используемый Google, можно посмотреть здесь:

google.promos.mgmhp.isGoogleHomepage = function (a) {
    var b = !1;
    try {
        b = window.external.isGoogleHomePage()
    } catch (d) {
        if (h(a)) return !0;
        var c = google.promos.gpd(a, "mgmhp_hp_url");
        c && g.push(c);
        for (c = 0; c < g.length; c++) {
            var k = g[c];
            if (b = b || a.isHomePage(k)) return !0
        }
    }
    return b
};

Они используют проприетарный метод isHomePage, чтобы проверить, является ли google.com вашей домашней страницей. Подробнее здесь.

Ответ 3

Следующий код css является виновником.

поведение: url (# default # homePage) url (# default # userData);

Вот почему мне не очень нравится IE. URL-адрес поведения (# default # userData) указывает браузеру сохранять это как информацию о сеансе на стороне клиента или в памяти браузера.

Дополнительная информация здесь: http://msdn.microsoft.com/en-us/library/ms533015(v=vs.85).aspx