Skip to content

Instantly share code, notes, and snippets.

@tobie
Created February 24, 2011 11:53
Show Gist options
  • Save tobie/842085 to your computer and use it in GitHub Desktop.
Save tobie/842085 to your computer and use it in GitHub Desktop.
Moar smallest DOMReady code, EVAR!
function r(f){setTimeout(/in/(document.readyState)?r:f,9,f)}
@tobie
Copy link
Author

tobie commented Feb 24, 2011

Fixed the inverted ternary expression.

@jed
Copy link

jed commented Feb 25, 2011

wait, now you're gonna make me wait nine whole milliseconds even if the document is already ready? COME ON, TOBIE!

@ded
Copy link

ded commented Feb 25, 2011

hahahaha! this never stops being entertaining. i gave up on the short war. the original hope was to make my general doc ready method smaller. and it still had to be x-browser. thus

  • the no arg thing does not work in IE (it requires 2)
  • the third arg in IE is not an arg list (it specifies language)

so, the ONLY way to use setTimeout (x-b) is with a function, and a required integer. (But I think we all knew that after a certain point)

@jed
Copy link

jed commented Feb 25, 2011

the third argument in IE is language? that is insanity.

the short war isn't fruitless though, since it's pretty instructive.

i'm curious, though; why do you use domContentLoaded to fix readyState in FF 3.6 instead of just using it as the domready function?

@ded
Copy link

ded commented Feb 25, 2011

i use it to fix FF <=3.5, because they had no proper readyState.

@jed
Copy link

jed commented Feb 25, 2011

right, but why fix it at all if all you need to know is when the document content is loaded? after all, the polling is only a fallback for a real domContentLoaded, right?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment