jQuery in 2013 - of Hoe IE op de juiste manier neer te zetten

Het is een bekend feit dat de mensen bij Microsoft al lang hun staart tussen hun benen hebben, vanwege IE. De spreekwoordelijke vijand van elke front-end ontwikkelaar en de go-to-come van de mop op conferenties en chatrooms (en zelfs in klantvergaderingen) is IE8 en lager geweest.

Laten we voorbij de IE bashing stappen, en praten over het plan van jQuery om ondersteuning voor oude IE te laten vallen.

Laat oude IE niet volledig vallen totdat het gebruik minuscuul is.

Zeker, er zijn tal van web-ontwikkeling bedrijven die al ondersteuning hebben laten vallen. De meesten van ons hebben IE6 al lang geleden laten vallen, en veel doen hetzelfde voor IE7. Maar er is nog steeds een grote druk om het IE8-publiek vast te houden.

Het jQuery-team is al jaren geplaagd door IE. JavaScript in oude IE (hun verzamelnaam voor alles onder IE9) is verouderd, traag en mist de nieuwe functies die aan de taal zijn toegevoegd sinds hun respectievelijke lanceringen. Dientengevolge moet de codebase van jQuery oplossingen bevatten om specifieke IE-problemen aan te pakken. Dit maakt de bibliotheek aanzienlijk groter, waardoor het veel langer duurt om te laden. Dus als onderdeel van versie 2.0 zal jQuery de ondersteuning voor oude IE laten vallen.

Soort van

jQuery laat eigenlijk de oudere versies van IE op een zeer sierlijke manier vallen.

In plaats van het oude IE in 2.0 volledig te laten vallen, blijven ze ondersteuning voor 1.9 behouden. Door dit te doen, doet jQuery twee belangrijke dingen:

Begrijp de normen en waarom u oude IE niet zult ondersteunen.

  • Nieuwe, op standaarden gebaseerde browsentechnologieën mogelijk maken en bevestigen
  • Ondersteuning van een oude standaard (terwijl deze oud blijft)

Met andere woorden, ze publiceren voor iedereen dat, ja inderdaad, er is nog steeds een gebruikersbestand in het oude IE. Dit is het belangrijkste argument dat naar boven komt als mensen het hebben over het laten vallen van ondersteuning hiervoor. Zeker, we willen de ondersteuning voor een aanzienlijk percentage gebruikers niet volledig laten vallen, nietwaar? Natuurlijk niet! Maar we zijn ook transparant door te zeggen dat de mogelijkheden (en de resulterende gebruikerservaring) van IE relatief verouderd zijn en zo snel mogelijk moeten worden verwijderd.

Laten we Microsoft echter enige eer geven bij het realiseren van hun eigen fouten. Zoals Paul Irish onlangs opmerkte, pusht Windows updates naar IE als "belangrijk", wat betekent dat iedereen die XP en hoger is op zijn minst IE8 zal hebben. Dat is niet het beste geval, maar het is zeker veel beter dan dat het grootste deel van China vastzit aan IE6. Misschien is deze aankondiging gedeeltelijk verantwoordelijk voor de langverwachte en zeer gevraagde beslissing van jQuery om de IE-specifieke code-bloat te verwijderen.


De impact op de profs

Dus hoe speelt dit uit voor ontwikkelingsbedrijven? Hier zijn een paar dingen die dit voor ontwikkelaars en freelancers betekent:

Vanaf versie 2.0 zal jQuery de ondersteuning voor oude IE laten vallen.

  1. Laat oude IE niet volledig vallen totdat het gebruik minuscuul is. Let hier op het woord "volledig". Deze suggestie is dat er simpelweg een weg moet zijn die de klant kan nemen om ondersteuning te krijgen voor IE-gebruikers. IE8 is nog geen IE5.
  2. Ondersteun IE niet standaard. Maak IE-ondersteuning een aparte service. De manier waarop jQuery het doet is door te zeggen: "hier is een niet-zo-goed alternatief." Zoals je het misschien zegt: "IE zal niet beschikken over een aantal van de esthetische of functionele kenmerken die andere browsers zullen hebben," of "we kunnen een optimalisatie specifiek voor IE doen, als je het absoluut nodig hebt, voor een bepaalde prijs."
  3. Begrijp de normen en waarom u oude IE niet zult ondersteunen. Dit is een grote. Wanneer u een klantbijeenkomst bezoekt, moet u weten waarom het ondersteunen van oude IE geen standaard is voor u of uw bedrijf. De redenen om oude IE te ondersteunen hebben niets te doen met de extra inspanning die wordt besteed door de ontwikkelaar. Als u oude IE niet wilt ondersteunen omdat het u langer duurt om code voor meerdere browsers te ontwikkelen, moet u ook geen ondersteuning bieden voor mobiel.

In plaats daarvan, de juiste redenen gaan over de gebruikers! Old IE presteert slecht. Het heeft gebroken en buggy-implementaties van bijna alles, het is traag en het voldoet niet aan de normen. Sommige versies zijn onveilig en de meeste versies lopen ver achter bij het implementeren van nieuwe taalfuncties die de gebruikerservaring verbeteren.

Een vuistregel: de redenen om oude IE niet te ondersteunen, kunnen niet worden omzeild door code die compatibel is met andere browsers.

Zeker, we willen de ondersteuning voor een aanzienlijk percentage gebruikers niet volledig laten vallen, nietwaar? Natuurlijk niet!

Zie oude IE als een oude auto. Je zou een oude kapotte auto niet aan iemand verkopen of repareren als je dat weet, voor dezelfde prijs, kunnen ze een geheel nieuwe hebben. De oude auto voldoet niet aan de veiligheids- of efficiëntieregels en heeft een aantal vreemde, beschermde onderdelen die niet meer worden geproduceerd. Natuurlijk kun je extra betalen om die specifieke onderdelen naar de monteur te laten verzenden vanuit een speciaalzaak en de monteur kan de auto repareren om een ​​paar extra mijlen te gaan. Maar zou de monteur je niet in de gunst moeten brengen en je zo snel mogelijk in de nieuwe auto moeten krijgen??

Voordat we een stortvloed van opmerkingen krijgen, schreeuwend "sommige gebruikers hebben geen controle over welke browser ze gebruiken!", Gebruikt dit artikel een brede streek met een brede borstel. Misschien heeft de gebruiker geen keus, maar iemand heeft een keuze die de gebruikers zou kunnen beïnvloeden.


Samenvatting

In 2013 maakt jQuery een gewaagde stap richting publiekelijke handhaving van webstandaarden en het laten vallen van standaardondersteuning voor verouderde technologie. In 2014 is het waarschijnlijk dat jQuery de ondersteuning voor oude IE volledig zal laten vallen, hoewel ze dat nog niet hebben aangekondigd. De manier waarop jQuery dit einddoel bereikt, is een belangrijk stappenplan voor ontwikkelaars om te volgen.