jQuery Alternatives Flashcards
hide/show an element
el.style.display = ‘none’ or ‘’ or ‘block’
$el.addClass( ‘someclass’ )
if (el.classList)
el.classList.add(className);
else
el.className += ‘ ‘ + className;
$(el).after(htmlString);
el.insertAdjacentHTML(‘afterend’, htmlString);
$(parent).append(el);
someParent.appendChild(el);
$(el).children();
el.children;
$(selector).each(function(i, el){ …
var els = document.querySelectorAll( selector ); Array.prototype.forEach.call( els, function( el, i ) {...
$(el).html();
el.innerHTML or el.innerHTML = ‘some content’
$(el).text();
el.textContent or el.textContent = ‘something’;
$(el).next();
el.nextElementSibling;
$(el).prev();
el.previousElementSibling;
$(el).parent();
el.parentNode;
$(parent).prepend(el);
parent.insertBefore(el, parent.firstChild);
$(el).toggleClass(className);
if (el.classList) {
el.classList.toggle(className);
} else { // use className
$(el).on(eventName, eventHandler);
el.addEventListener(eventName, eventHandler);
$(document).append(“<div class="hello">Hi There!</div>
var d = document.createElement("div"); d.classList.add("one"); var t = document.createTextNode("Hi There!"); d.appendChild(t); document.body.appendChild(d);
How could you create and insert some new text saying “Hi World” into a new div tag as the first element in the body, before all other elements?
var text = document.createTextNode("Hi World"); var el = document.createElement("div"); el.appendChild(text); document.body.insertBefore(el, body.firstChild); // insertBefore takes the element to be inserted and the location.
How can you get a copy of a node called myNode? What if you want all of that nodes children as well?
var clone = myNode.cloneNode(false); // just the top node var cloneDeep = myNode.cloneNode(true); // children as well.
var main = document.getElementById("main"); How could you access main's first child?
main.firstChild or main.childNodes[0];
Alternative for $(document).ready()
function ready(fn) { if (document.readyState != 'loading'){ fn(); } else { document.addEventListener('DOMContentLoaded', fn); } }