Internet Explorer ma wiele zastrzeżonych funkcji, których nie ma w innych przeglądarkach, a także szereg niezgodności ze standardami. Czy ktoś ma pojęcie, co jest przyczyną tych niezgodności?
Na przykład: Tworzę rozszerzenie przeglądarki przy użyciu frameworka Crossrider . Rozszerzenie działa dobrze ze wszystkimi kombinacjami [Windows | Mac OS | Linux] i [Chrome | Firefox], ale nie działa z IE, ponieważ IE obsługuje $(window).height()
i $(window).scrollTop()
trochę inaczej.
Czy jest znana dokładna analiza tej sytuacji lub wywiad z osobą z wewnątrz, która wyjaśniłaby przyczynę? Czy to kultura korporacyjna, proces projektowania, wada kontroli jakości czy jakieś okropne, nieznane dziedzictwo?
microsoft
internet-explorer
Jakub M.
źródło
źródło
Odpowiedzi:
Dlaczego Microsoft® Internet Explorer® jest niezgodny z innymi przeglądarkami i opublikowanymi standardami?
Intranety korporacyjne są szczególnie narażone na tę strategię, ponieważ zapewniają środowisko, w którym wszyscy użytkownicy korzystają z tej samej przeglądarki (do czasu pojawienia się nowej wersji). Ponadto, jeśli witryna nie jest skierowana do klientów, nie będzie budżetu nawet na niewielki koszt obsługi wielu przeglądarek. Z czasem starsze witryny intranetowe w firmie uniemożliwiają tej firmie porzucenie IE (lub nawet konkretnej wersji IE) dla innej przeglądarki.
Podejście Microsoftu jest obosiecznym mieczem. Z jednej strony stworzyła funkcję asynchronicznego żądania XML / HTTP, która umożliwiła AJAX (i inne pozytywne innowacje), które inne przeglądarki szybko skopiowały. Ale Microsoft również produkuje wersje IE, które są ze sobą niezgodne, w ten sposób gryząc samych deweloperów, którzy grali najwięcej w plany Microsoftu.
Moim ulubionym przykładem niezgodności między wersjami IE jest własna kampania odliczania IE6 firmy Micrsoft, w której zachęcają ludzi do nieużywania własnej przeglądarki. Teoria jest taka, że Microsoft może zachęcać ludzi do uaktualnienia do nowszej wersji IE, podczas gdy inni, którzy krzyczą „IE6 Must Die”, częściej zachęcają użytkowników do korzystania z przeglądarki innej marki zamiast IE.
Krótko mówiąc, jest to dość udana strategia dominacji rynkowej firmy Microsoft, która czasami boli, a czasem pomaga reszcie branży. Dla siebie staram się tworzyć tylko sprawdzony, zgodny ze standardami HTML, który jest testowany w najnowszej wersji dowolnej przeglądarki z 2% lub większym udziałem w rynku (plus najnowsze 3 wersje IE).
Microsoft i Internet Explorer są zastrzeżonymi znakami towarowymi firmy Microsoft w Stanach Zjednoczonych i / lub innych krajach.
źródło
Jak zwykle chodzi o zachęty. Jeśli chcesz wiedzieć, dlaczego coś rzeczywiście się dzieje (w przeciwieństwie do tego, co twierdzą, lub chcieliby wierzyć), wykonaj pieniądze.
Wyobraź sobie sytuację, w której masz wygodną pozycję na rynku w kluczowej technologii (komputery osobiste). Wartość sieci ma duży rozmiar, więc chcesz mieć dostęp do jak największej liczby użytkowników za pomocą swoich produktów. Ponieważ najprawdopodobniej już korzystają z twojego systemu, warto wprowadzić nowe funkcje i poświęcić wysiłek tylko na kompatybilność wsteczną z własnymi produktami. Zgodność z produktami konkurencji jest niższa na liście priorytetów, ponieważ nie tworzy dla ciebie tak dużego potencjału wartościowego; w rzeczywistości może kosztować cię wartość, jeśli produkty konkurencji staną się na tyle interoperacyjne, że ktoś mógłby się obejść bez twojego systemu.
Pamiętaj, że nie musisz nawet stawiać tutaj świadomej złośliwości ze strony programistów lub kierownictwa. Robienie własnych rzeczy i promowanie własnych protokołów, standardów itp. Zamiast przyczyniania się do ogólnych jest po prostu naturalnym zachowaniem dominującego gracza i prawdopodobnie nieuniknione bez bardzo rygorystycznych środków prawnych, na które ogół społeczeństwa nie jest skłonny zezwolić. W rzeczywistości większość tego, co słyszałem i czytałem o sposobie myślenia w firmie Microsoft, prowadzi mnie do przekonania, że większość ich ludzi naprawdę , szczerze uważają, że ich produkty są tak wspaniałe i lepsze, że tylko nieprzyjemni malkontenci chcieliby w pierwszej kolejności użyć czegokolwiek innego, i że zrobiliby swoim lojalnym klientom wielką niedogodność, gdyby poświęcili wysiłek na interoperacyjność, zamiast „wprowadzać innowacje” na fajne nowe rzeczy.
Powodując ból programistów, którzy nie muszą obsługiwać różne produkty są po prostu efektem ubocznym tej postawy. Wydaje się to bardzo bezduszne, a nawet złe dla nas poza praktykami, ale podejrzewam, że wielu z nas zajęłoby to samo stanowisko, gdyby tabele zostały magicznie odwrócone.
źródło
Problem powodowany przez IE to 2-częściowy problem, oba naprawdę wynikają z faktu, że IE wygrał pierwszą wojnę w przeglądarce. Kiedyś była to najlepsza i najbardziej zaawansowana przeglądarka, ale przez długi czas siedzieli bezczynnie i grają w catchup, ale mają ogromne dziedzictwo, teraz inne przeglądarki, ponieważ wiele firm zainwestowało miliony w wewnętrzne witryny, które działają tylko na konkretna wersja IE. Stwardnienie rozsiane popełniłoby samobójstwo, gdyby przejście między wersjami nie powodowało bólu, jak to możliwe. Po drugie, ponieważ wygrali pierwszą wojnę przeglądarek i zbliżali się do całkowitego monopolu, W3C aktywnie napisała standardy, które były sprzeczne z istniejącą funkcjonalnością IE, starając się pozostać istotnymi jako organ normalizacyjny w zakresie przeglądarek, a dzięki nowszym przeglądarkom, które spełniały te standardy, pracował
źródło