> $(el).hide()
> el.style.display = 'none'
You meant something more like
document.querySelectorAll(el).forEach(function(e) { e.style.display = 'none'; }
and a polyfill for IE8 due to lack of native Array#forEach, right?This equivalency only works when el is a DOMElement, not a selector string.
Which one is likely to be more common?
Re:You might not need jQuery
by daleharvey on Thursday January 30, 2014 @03:00PM
(#7152983)
Its
el.hidden = true;
in modern browsersThe documented semantics of the hidden attribute say otherwise https://developer.mozilla.org/en-US/docs/Web/HTML/Global_att... http://www.w3.org/html/wg/drafts/html/master/editing.html#th...
" it is incorrect to use hidden to hide panels in a tabbed dialog, because the tabbed interface is merely a kind of overflow presentation — one could equally well just show all the form controls in one big page with a scrollbar"
Re:You might not need jQuery
by nostrademons on Thursday January 30, 2014 @03:40PM
(#7153220)
I'm curious - is this spec'd anywhere? I just tried it in Chrome and it works great, but I couldn't find it in any of the specs for Element or Node.
According to specs mentioned elsewhere, it seems to have reasons to exist other than just display hide/show purposes.
It's easily overridden by CSS.
el.style.display = 'none' pretty much works everywhere.
To me, it seems to depend upon what the purpose of hiding/showing the element is in specific cases.
For example,
is quite more readable than . And I'm not even talking about the other advantages.