2013-04-04 13 views
94

Google wyświetla okienko z zapytaniem, czy chcesz ustawić swoją stronę główną jako google.com. To całkiem normalne, gdy mówię "OK", ustawia go jako google.com. Po tym jednak nie dostaję już wyskakującego okienka. O ile wiem, nikt nie powinien być w stanie odzyskać wartości mojej strony głównej, ponieważ jest to prywatna informacja. Ale jakoś Google to śledzi. Dostaję wyskakujące okienko, gdy ustawię moją stronę jako inną stronę. Usunąłem pliki cookie, ale nawet wtedy są wyświetlane tylko wtedy, gdy ustawię stronę główną jako inną witrynę.Sprawdzanie strony domowej użytkownika w Internet Explorerze

Przetestowałem to zachowanie na IE8 & IE9. Popup nigdy nie pojawia się w Firefoksie i Chrome.

+12

Czy masz zainstalowany pasek narzędzi Google? –

+17

tylko dlatego, że jesteś paranoikiem, nie oznacza, że ​​nie patrzą na ciebie – NimChimpsky

+0

@Birk Nie na IE9, sprawdzam IE8. –

Odpowiedz

63

Internet Explorer umożliwia zapytać go, czy dany adres jest na stronie głównej, to wyszczególnione na this MSDN page. Ten link do this example page demonstruje API.

+1

kiedy weryfikuję przykładową stronę, zawsze otrzymuję fałsz ... czy jestem jedyny? – DmitryK

+28

Mam również ten problem. Ale dzieje się tak, ponieważ mówi: "Metoda isHomePage zawsze zwróci wartość false, jeśli dokument wywołujący metodę isHomePage nie znajduje się w tej samej domenie. Jeśli na przykład witryna www.microsoft.com jest ustawiona jako strona główna i wywołujesz tę metodę ze strony w witrynie firmy Microsoft®, wówczas metoda isHomePage zwraca wartość true. Jeśli jednak twoja strona główna jest ustawiona na www.microsoft.com i wywołasz tę metodę ze strony w innej domenie, metoda zwróci false. "A przykładowa strona znajduje się na' http://samples.msdn.microsoft .com', a nie na 'http: // msdn.com'. –

10

Następujący kod css jest winowajcą.

Zachowanie: url (# default # homePage) url (# default # userData);

Dlatego tak naprawdę nie lubię IE. Adres URL zachowania (# default # userData) informuje przeglądarkę, aby zapisała to jako informacje o sesji po stronie klienta lub pamięci przeglądarki.

Więcej informacji tutaj: http://msdn.microsoft.com/en-us/library/ms533015(v=vs.85).aspx

26

Kod korzysta z Google można obejrzeć tu:

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 
}; 

Są one przy użyciu opatentowanej metody isHomePage aby sprawdzić, czy to jako swoją stronę google.com. More info here.

+4

Klasyczny przykład Web Development ... view-source to Twój przyjaciel ;-) – scunliffe

Powiązane problemy