Lol. You write a lot of text to mask the fact there’s no good reason why getElementById should be bad. It’s the same groupthink as with the jQuery, you’re told it’s bad, so you just follow the crowd.
jQuery was created as a way to account for browser support challenges
That was one of the reasons. The other was that DOM API was and still is crap. There were many such libraries to abstract away browser differences back in late 00s (Dojo, script.aculo.us, Prototype.js, MooTools), and the main reason jQuery “won” was that it provided the nicest API.
Which is why I think it’s opinionated in a bad way to arbitrarily pick one of them as the defacto.
You’re missing the fact that jQuery does not prevent you from hiding the element in other ways. It’s just optimizing for the most common case, which is one of the principles of good API.
What you’re missing is that the hidden class can contain anything you want. Animations or whatever else.
Sure, and when I just want to … hide it, without any animations? Then this hidden class is boilerplate only.