What are the drawbacks of accessing DOM elements directly by ID?
dom, javascript
Solution
It is propriety Microsoft gubbins. It doesn't work in lots of browsers — especially in standards mode (and you want standards mode to avoid quirks mode inconsistencies such as IE getting `width` wrong).
Problem
Today I stumbled upon the possibility to access a DOM element in Javascript simply by its id e.g. like this: ``` elementid.style.backgroundColor = "blue" ``` I tested with a very short snippet if this works in IE, Firefox and Chrome - and it does. Here is the snippet I used: ``` <html><head> <script> function highlight() { content.style.backgroundColor = "blue"; content.style.color = "white"; } </script> </head> <body> <div id="content">test content</div> <div onclick="highlight()">highlight content</div> </body></html> ``` So I wondered in which cases `document.getElementById('elementid')` should be used (or similar framework replacements like $()) and what are the drawbacks of the direct access. I was not able to find any useful documentation on this. Everywhere either `getElementById` or framework methods are used.