JQuery, innerHTML of DOM?
- maandag 28 september 2009
- 0 reacties
De webstandaarden brengt vele discussies met zich mee. Eén daarvan is het gebruik van innerHTML versus DOM benaderingen. Het grootste bezwaar tegen innerHTML is dat het geen onderdeel uitmaakt van de W3C specificatie. Hierdoor is er geen garantie dat het in de toekomst ondersteund zal worden, toch heeft het gebruik van innerHTML veel voorstanders.
Enkele feiten over innerHTML
- Het is geintroduceerd door Microsoft en wordt inmiddels ondersteund in vele webbrowsers;
- Door de brede ondersteuning wordt het door veel webontwikkelaars gebruikt;
- Het beperkt het schrijven van code bij het manipuleren van het HTML document, zie code vergelijkingen;
- innerHTML is gewoonweg sneller: DOM vs innerHTML benchmark.
Een andere kanttekening van innerHTML is dat een uniform gedrag in verschillende webbrowsers niet gegarandeerd kan worden, juist door gebrek aan specificatie van deze javascript-functie. Behalve voor schrijfdoeleinden, kan innerHTML ook gebruikt worden om hele teksten, inclusief html-elementen, als string op te halen. Dit kan, bijvoorbeeld in het geval van een webformulier, verschillende resultaten opleveren in bijvoorbeeld Internet Explorer (waar door de gebruiker ingevoerde waarden wel terug worden gegeven) en Mozilla FireFox (die de daadwerkelijke html teruggeeft en gebruikersinvoer buiten beschouwing laat).
jQuery en DOM
Bij de ontwikkeling van de caption-tool in het kader van mijn afstudeerstage, loop ik tegen deze discussie aan. Ik heb gebruik gemaakt van het javascript framework jQuery. Alhoewel het framework zelf poogt volgens de webstandaarden te functioneren, leent het zich ervoor om op onethische wijze html weg te schrijven in je html document. Om dit te voorkomen, heb ik voor bepaalde doelen Document Object Model benaderingen moeten schrijven. Het gevolg zal duidelijk zijn; het kost gewoonweg meer code. Een kijkje in het project om de code met elkaar te vergelijken volgt spoedig naarmate de afronding van de caption tool nadert.Geen reacties
Er is nog niet gereageerd op dit nieuwsbericht. U kunt de eerste zijn:
Reageren
Houd reacties relevant aan het onderwerp en wees redelijk en billijk naar anderen. Houd je bij het plaatsen van een reactie aan de Nederlandse wet.