Skip to content

Instantly share code, notes, and snippets.

@jeffreypierce
Created February 2, 2017 15:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jeffreypierce/20084b574fefe831154466b3cc1cc4c8 to your computer and use it in GitHub Desktop.
Save jeffreypierce/20084b574fefe831154466b3cc1cc4c8 to your computer and use it in GitHub Desktop.
hasClass = (el, className) ->
new RegExp(" " + className + " ").test " " + el.className + " "
addClass = (el, className) ->
el.className += " " + className unless hasClass el, className
el
removeClass = (el, className) ->
if !className
el.className = ""
else
newClass = " " + el.className.replace(/[\t\r\n]/g, " ") + " "
if hasClass el, className
while newClass.indexOf(" " + className + " ") >= 0
newClass = newClass.replace(" " + className + " ", " ")
el.className = newClass.replace(/^\s+|\s+$/g, "")
el
find = (selector, scope) ->
el = document.querySelector selector
if scope?
el = scope.querySelector selector
el
findAll = (selector, scope) ->
el = document.querySelectorAll selector
if scope?
el = scope.querySelectorAll selector
el
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment