What is jQuery and how to start using jQuery?

SheoNarayan
Posted by in jQuery category on for Beginner level | Points: 250 | Views : 50916 red flag
Rating: 4.75 out of 5  
 4 vote(s)

jQuery is not a language but it is a well written JavaScript code, As quoted on official jQuery website “it is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development“.

What is jQuery

jQuery is not a language but it is a well written JavaScript code, As quoted on official jQuery website “it is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development.“

In order to work with jQuery you should be aware of basics of JavaScript, HTML and CSS.

It was released in January 2006 at BarCamp NYC by John Resig.

Licensing: It is free, open source software Dual-licensed under the MIT License and the GNU General Public License. Microsoft has integrated jQuery officially into its IDE Visual Studio 2010 and jQuery intellisense is available in Visual Studio 2010 now.

This is the first chapter of my jQuery ebook.

Why jQuery

jQuery is very compact and well written JavaScript code that increases the productivity of the developer by enabling them to achieve critical UI functionality by writing very less amount of code.

It helps to

•  Improve the performance of the application
•  Develop most browser compatible web page
•  Implement UI related critical functionality without writing hundreds of lines of codes
•  Fast
•  Extensible – jQuery can be extended to implement customized behavior

Other advantages of jQuery are

•  No need to learn fresh new syntaxes to use jQuery, knowing simple JavaScript syntax is enough
•  Simple and Cleaner code, no need to write several lines of codes to achieve complex functionality.

Where to download jQuery from

jQuery javascript file can be downloaded from jQuery Official website http://www.jquery.com/

How to use jQuery

jQuery usually comes as a single JavaScript file containing everything comes out of the box with jQuery. It can be included within a web page using the following mark-up:

To load local jQuery file
<script type="text/javascript" src="jQuery-1.4.1-min.js"></script>

Ideally this markup is kept in under <head></head> tag of your web page, however you are free to keep anywhere you want.

Do I need to refer jQuery file both in Master page/base page/template page and content page

No, master page/base page/ template page basically helps to create consistent layout for the page in the application. In case you have referred the jQuery file in master page/base page/ template page that cause rendering the file in the browser, you do not need to refer jQuery file the content page again.

In summary, there should not be more than one <script> tag with jQuery file reference in the source code of the rendered web page in the browser.

What is the difference between jQuery-x.x.x.js and jQuery.x.x.x-min.js

In terms of functionality, there is no difference between the jQuery-x.x.x.js and jQuery-x.x.x-min.js (also called minified version). However this can play a vital role in the performance of the web page.

How it affects the performance?
jQuery-1.4.4.js file size is 178 KB as against its minified version jQuery-1.4.4-min.js that is only 76.7 KB in size. So when your page loads in the client’s browser if you are not using minified version, it loads 178 KB file that takes more time to load than 76.7 KB.

Which version of jQuery file should be used

In most of the recent releases so far, the core functionality of jQuery remains same however some more cool and better features are added.  Ideally you should use the latest jQuery files available on the jQuery.com website. By doing this you ensure that your earlier functionality will still work and you can use new features available as part of the new release.

Loading jQuery from CDN (Content Distribution Network)

 
What is CDN?

CDN Stands for Content Distribution Network or also called Content Delivery Network is a group of computers placed at various points connected with network containing copies of data files to maximize bandwidth in accessing the data. In CDN a client access a copy of data nearer to the client location rather than all clients accessing from the one particular server. This helps to achieve better performance of data retrieval by client.

There are two leading CDNs available that hosts jQuery files.

Microsoft - To load jQuery from Microsoft AJAX CDN

jQuery file can be loaded from Microsoft AJAX CDN. For more details, go to http://www.asp.net/ajaxlibrary/cdn.ashx.  You will need to keep following tags in your page.

 <script type="text/javascript" language="Javascript" src="http://ajax.microsoft.com/ajax/jQuery/jquery-1.4.1.min.js"></script>

OR

 <script src=http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.4.min.js type="text/javascript"></script>

Google - To load jQuery from Google Libraries API

jQuery file can be loaded from Google CDN for more details, go to http://code.google.com/apis/libraries/devguide.html. You will need to keep following tag in your page.

 <script type="text/javascript" language="Javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>

Why to load jQuery file from CDN

You may ask that if we can load the jQuery file from our own server why to load it from the CDNs. The answer is logical and very simple. The browser behavior is that whenever it loads any webpage, it keeps related files (eg. Javascript file, CSS file and Images) used for that page into its cache (also called history). When next time the user browses any web page, browser loads only those files that are new or modified and is not available in the browser cache or history. In this way, browser improves its performance and loads the page.

The possibility is that if more and more websites are using CDNs, the user might have already browsed some other web pages that is using CDNs jQuery file and that file may have into browser cache; so when user browse your page and you are also using CDNs file, the older cached version of jQuery file will be used. In this way your page will load faster as browser will not have to load the jQuery file for your page again.

The benefit

1.  Faster page load as jQuery file need not to be downloaded
2.  Saves your bandwidth as jQuery file is not loaded from your server
3.  Scalable - generally CDNs place these files on the servers located at different geographical locations of the world so that they load faster so irrespective of from where your user is browsing your page, your application runs well.

What if the latest jQuery version is available and I am still referring older version of jQuery file from CDNs

Do not worry about it, it’s a general promise made by CDNs that they will remain hosting the older version of the files on the same location where they had initially released; so even if newer version of the files are released, the older version remains there on the CDNs and your web page still works.

How to load local jQuery file in case CDN is not available

Sometimes, it may happen that the CDN you have used to load the jQuery file is not available (it rarely happens, however anything is possible, isn’t it?); in that case you should load your local jQuery file that is available on your server so that all jQuery related functionality still work on your page.

Write following lines of code

 <!-- START - jQuery Reference -->

    <script type="text/javascript" language="Javascript" src="http://ajax.microsoft.com/ajax/jQuery/jquery-1.4.1.min.js"></script>

 

    <script type='text/javascript'>//<![CDATA[

        if (typeof jQuery == 'undefined') {

            document.write(unescape("%3Cscript src='/Script/jquery-1.4.1.min.js' type='text/javascript' %3E%3C/script%3E"));

        }//]]>

    </script>

    <!-- END - jQuery Reference -->

Replace bolded path with your own jQuery file path on the server. In the above code, first line tries to load the jQuery file from CDN, if browser could load the file successfully, “jQuery” variable will not be undefined and next script will not run otherwise next script will run that will write the script tag to load the jQuery file from your server.

How to execute jQuery code

There are two ways you may want to execute jQuery codes.

1.  As and when page loads, execute the jQuery code

<script language="javascript" type="text/javascript">

        $(function () {

            $("#div1").css("border", "2px solid green");

        });

    </script>

OR

    <script language="javascript" type="text/javascript">

            $("#div1").css("border", "2px solid green");

    </script>

The benefit of executing jQuery code in this way is that it doesn’t wait the whole page to load completely, so in case you want user to see the effects as soon as the corresponding elements are loaded, you can use this.

However the disadvantage is that if the element on which jQuery has to execute has not loaded then it will error out or you will not get desired result; so while using this way of executing jQuery code, you will have to make sure that the element on which you want to work with jQuery is loaded first (you can place your jQuery code right after your HTML element).

2.  Execute jQuery only when the complete DOM objects (the complete page has been loaded). You will have to wrap your code in .ready function.

<script language="javascript" type="text/javascript">

        $(document).ready(function () {

                 $("#div1").css("border", "2px solid green");

        });

    </script>

This is the better and safer way to execute jQuery. This makes sure that jQuery code will execute only if complete page has been loaded in the browser so you are rest assured that user will not see any undesired behavior on the page.

As a developer, the decision of where and how to write jQuery code lies on you. I prefer to use 2nd method as it ensures that my complete page is loaded in the browser and I am ready to play with any element available on the page.

I have written hundreds of .NET How to's solution (ebook + source code + video) series based on real time project problems, click here to get it.

The video of this chapter is available at http://www.dotnetfunda.com/tutorials/videos/x89-101-jquery-how-to-methods-.aspx 

This is the first chapter of my jQuery ebook, to know more about it click here.

Page copy protected against web site content infringement by Copyscape

About the Author

SheoNarayan
Full Name: Sheo Narayan
Member Level: HonoraryPlatinum
Member Status: Administrator
Member Since: 7/8/2008 6:32:14 PM
Country: India
Regards, Sheo Narayan http://www.dotnetfunda.com
http://www.snarayan.com
Ex-Microsoft MVP, Author, Writer, Mentor & architecting applications since year 2001. Connect me on http://www.facebook.com/sheo.narayan | https://twitter.com/sheonarayan | http://www.linkedin.com/in/sheonarayan

Login to vote for this post.

Comments or Responses

Posted by: Karthikanbarasan on: 1/22/2011 | Points: 25
Good one for the beginners...
Posted by: Virendradugar on: 3/1/2011 | Points: 25
Good article..

Posted by: Hassan008 on: 4/4/2011 | Points: 25
kindly post more posts related to jquery . its very helful .
Posted by: Akiii on: 5/28/2011 | Points: 25
Excellent tutorial for a beginner....

Regards
Akiii
Posted by: Vuyiswamb on: 9/6/2011 | Points: 25
Sheo i am starting to learn JQuery , you know in Silverlight we don't need to do any client side scripting, but i am learning it now. :)

Thanks for sharing
Posted by: Vinay13mar on: 10/15/2012 | Points: 25

Login to post response

Comment using Facebook(Author doesn't get notification)