Solved

is $(document).ready(function() the same as     $(function () {

Posted on 2014-07-23
9
559 Views
Last Modified: 2014-07-27
In JQuery,

is $(document).ready(function() the same as     $(function () {   }
0
Comment
Question by:brgdotnet
  • 4
  • 3
9 Comments
 
LVL 13

Expert Comment

by:duncanb7
Comment Utility
There is different between

At $(document).ready(function(),  
The function() will operate after the whole page is completely loaded and DOM is ready.
But
$(function () {   }
is self-start or self calling anonymous function that is just function, it will operate or start as soon as possible when the browser is interpreting your ecma-/javascript  regardless the page being loaded completely or not

Duncan
0
 
LVL 52

Accepted Solution

by:
Scott Fell,  EE MVE earned 160 total points
Comment Utility
These two sets of code below are the same http://api.jquery.com/ready/.  I personally use the later because it is faster to type out.
$( document ).ready(function() {
  // Handler for .ready() called.
});

Open in new window

$(function() {
  // Handler for .ready() called.
});

Open in new window

0
 
LVL 52

Expert Comment

by:Scott Fell, EE MVE
Comment Utility
@duncanb7, I'm just trying to double check because we seem to have different answers for the same thing.  

self calling anonymous function that is just function, it will operate or start as soon as possible when the browser is interpreting your ecma-/javascript

I may be confused, but are you talking about pure javascript? or jquery?
  <script>
    (function(){
 // do something
})();
  </script>

Open in new window

0
 
LVL 13

Expert Comment

by:duncanb7
Comment Utility
Scott, you are correct and I miss $
And the article mention $(function()) is shorthand for $( document ).ready() at this site. http://learn.jquery.com/using-jquery-core/document-ready/

And my previous post is shown the different between $(document.)ready() and (function()) , javascript self-start function only.

You can test from the following code , if the div tag change color means it work for the code. Finally, it showed only Self-javascript function can not change to green color.

Duncan
<html>
<meta http-equiv="Content-Type" content="text/html; charset=Big5">
<head>
<title>Title</title>
<style>
</style>
<script src="/js/jquery.min.js" type="text/javascript"></script>
<script src="/js/jquery-ui.min.js" type="text/javascript"></script>
<script type="text/javascript">
(function() {
  document.getElementsByClassName('tap')[0].style.color="Green";
});
$(function() {
  document.getElementsByClassName('tap')[1].style.color="Green";
});
$(document).ready(function() {
document.getElementsByClassName('tap')[2].style.color="Green";
});

</script>
<script type="text/javascript">
</script>
</head>
<body  >
<div class="tap">Self-javascript</div>
<div class="tap">$(function())</div>
<div class="tap">Ready-jquery</div>
</body>
</html>

Open in new window

0
Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

 
LVL 13

Expert Comment

by:duncanb7
Comment Utility
Scott, you agree ?
0
 
LVL 52

Expert Comment

by:Scott Fell, EE MVE
Comment Utility
Thank you Duncan.   Your description matched something for pure javascript.  If you add the $ or jquery in front, now you are talking about jquery as you suggest, but then the description you gave is incorrect.

The simple correct answer to the question,
is $(document).ready(function() the same as $(function () {
Yes, they are both the same.
0
 
LVL 13

Expert Comment

by:duncanb7
Comment Utility
Thanks for your reply , please review my post I didn't suggest anything  and I just verify  it by testing for all of you from your previous post to me.

The answer is Yes to the question and  mentioned at this site
http://learn.jquery.com/using-jquery-core/document-ready/

Duncan
0
 
LVL 42

Expert Comment

by:Rob Jurd, EE MVE
Comment Utility
To clarify,

$(document).ready(function() {}); is capturing the "ready" event when the document had loaded.

$(function() {}); is passing an anonymous function to the jQuery class. JQuery is configured such that the anonymous function is only called once the DOM has loaded.

More info on frameworks here:
http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/A_12264-Javascript-Frameworks-what-are-they.html
And JavaScript objects (that is all jQuery is)
http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/A_13138-Javascript-is-just-an-Object.html
0

Featured Post

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

Join & Write a Comment

Introduction HyperText Transfer Protocol (http://www.ietf.org/rfc/rfc2616.txt) or "HTTP" is the underpinning of internet communication.  As a teacher of web development I have heard many questions, mostly from my younger students who have come to t…
This article demonstrates how to create a simple responsive confirmation dialog with Ok and Cancel buttons using HTML, CSS, jQuery and Promises
The viewer will learn how to dynamically set the form action using jQuery.
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now