7

So I know what this does:

$(document).ready(function(){
 // Your code here...
});

Now I have seen people doing this lately:

<script type="text/javascript"> 
$(function(){
 // Your code here...
});
</script>

Are these two ways of doing the same thing?

I see an anonymous function being declared inside a jquery selector here, but never actually being invoked, yet by the way the page runs it seems that this may just run on pageload.

James
2,4741 gold badge22 silver badges22 bronze badges
asked Feb 27, 2009 at 2:15
3
  • Lately? This has been available for the last 5 years.... Commented Jun 17, 2012 at 18:54
  • That's one of the things I dislike about jquery... in pursuit of brevity, it seriously sacrifices (re)discoverability. IIRC, $(...) can do at least three completely different things, depending on the type of the argument, and how do you look up such a thing? You can if you're familiar with the docs - and that's precisely the point. The language is designed for those who stay familiar with its details. </rant> Commented Aug 15, 2012 at 13:35
  • P.S. In this case, if you remember that $ is an alias for jQuery, you can look it up here: api.jquery.com/jQuery Commented Aug 15, 2012 at 13:42

2 Answers 2

7

yes, they're doing the same thing. the $() function wraps $(document).ready() when the parameter to the call is a single function object.

(Edited to reflect a question in comment)

answered Feb 27, 2009 at 2:18
Sign up to request clarification or add additional context in comments.

2 Comments

So whenever you use a jquery selector a quiet little document ready check is happening in the background?
No, jQuery checks the type of the object passed to it and if it is a function it is bound to the document's ready event; if it's passed a string, it will do something else (like select DOM elements).
5

Yes, they are doing exactly the same thing.

$(function(){
 // Your code here...
});

is a shortcut for

$(document).ready(function(){
 // Your code here...
});
answered Feb 27, 2009 at 2:21

Comments

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.