Home Mobile Mastering jQuery Mobile

Mastering jQuery Mobile

By Chip Lambert , Chip Lambert , Shreerang Patwardhan
books-svg-icon Book
eBook $43.99 $29.99
Print $54.99
Subscription $15.99 $10 p/m for three months
$10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
BUY NOW $10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
eBook $43.99 $29.99
Print $54.99
Subscription $15.99 $10 p/m for three months
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
  1. Free Chapter
    Getting Started
About this book
Publication date:
July 2015
Publisher
Packt
Pages
262
ISBN
9781783559084

 

Chapter 1. Getting Started

Are you all excited, as we are, to get started? Well, before we start writing some code, we have a few things we need to do first. These first couple of chapters may be light on code, but are rich in concepts and ideas that you will need on your journey to master jQuery Mobile.

Before we begin, let's talk briefly about what jQuery Mobile is and, more importantly, what it isn't. It is an extension of jQuery that will allow you to create cross-browser web applications and websites that will look the same, regardless of the mobile browser used to view them and the underlying mobile OS. jQuery Mobile provides wide browser and device coverage using progressive enhancement, making your website accessible on the widest range of devices and browsers. It also enhances the form inputs and UI widgets to be touch-friendly. It is not a framework that will allow you to build native applications, but you can use this framework to build hybrid mobile applications. In one of the last chapters of this book, we will look at using one such framework—Apache's Cordova.

Now that we have got that out of the way, grab your drink of choice, fire up your computer, and let's rock 'n' roll.

 

Overview


In this chapter, we will look at installing the XAMPP server stack for both Windows and Mac OS X, installing the Aptana Studio integrated development environment (IDE), and then start looking at using jQuery Mobile and the various methods you can use in your project to include the framework. We will then create a small application to get our feet wet with jQuery Mobile. For some of you this could be a simple refresher, but for others this could be a crash course introduction.

You may be asking yourself, "Why am I installing a full server stack, and is jQuery Mobile usage tied to PHP or any of the technology in the XAMPP stack?" While this book is focused on development with jQuery Mobile, we will be doing a very small bit of PHP with MySQL, just to show the interaction between the two, and so we will be setting up our XAMPP stack. However, the usage of jQuery Mobile is completely independent of PHP and any other technology in the XAMPP stack, so developers should feel free to use any other server stack that they prefer for development. If you are not a PHP pro, don't worry; the code will be basic and we will explain it all. If you wish to enhance your PHP skills, check out any of the number of PHP titles Packt has published.

Also by no means are you bound to using your local machine. If you have a web server, feel free to use it; we just find it easier to develop on a local machine so we don't have to worry about making a change, uploading, testing, and repeating.

 

Installing XAMPP for Windows


XAMPP is a fully functional server stack by the folks at Apache Friends, which includes Apache, PHP, MySQL, Perl, Tomcat, phpMyAdmin, and much more in one installation package. By installing it, you don't have to worry about manually setting up each component of a WAMP stack, you simply execute the installer and choose the components you wish to install.

To get started, we will need to download the latest stable XAMPP installer from https://www.apachefriends.org/index.html. We recommend using the installer rather than the ZIP file method for this book.

After we have it downloaded, the installation is pretty straightforward:

  1. Double-click on the installation file and you will be asked to select a language. Make your choice and choose OK.

  2. If you are using Windows Vista or higher, and User Account Control (UAC) is enabled, you will see a warning that some functionality may be limited if installed to the Program Files directory. Click OK.

  3. Another warning may pop up prompting you to install the Microsoft Visual Studio 2008 redistributable package. Click Yes and you will be taken to a Microsoft downloads page where you can download this redistributable from. Download it and install it before continuing with the XAMPP installation.

  4. Click on Next and you will be shown all the components that make up the XAMPP package. Select the features you want but for this book, be sure to pick at least Apache, PHP, MySQL, and phpMyAdmin, as they will be utilized at some point in this book.

  5. The default directory should be fine, so leave it as is and click Next.

  6. This screen will ask you if you wish to learn more about Bitnami; this is your choice, so if you do not want to see more information, simply uncheck the checkbox and click Next.

  7. The installation itself will take several minutes to complete. Once it is finished, click on Finish from the screen that pops up.

  8. You will now see a screen that will inform you that all the services can be controlled through the XAMPP control panel. It will ask you if you want to open that screen now; click on Yes.

  9. In the control panel, you will be able to start, stop, and restart all the services that were installed with XAMPP. By default, some of these services may be turned off. For now, let's make sure that Apache and MySQL are both running by clicking on Start next to the service name.

 

Installing XAMPP for Mac OS X


XAMPP also has a package available for those running Mac OS X and it is a million times easier to install than its Windows counterpart.

Download XAMPP from the same page as the Windows binaries: https://www.apachefriends.org/index.html. Double-click on the .DMG file that you just downloaded, and drag the XAMPP folder into the Applications directory. After this is completed, open the XAMPP control panel found in Applications and start the Apache and MySQL services.

Regardless of what OS you installed XAMPP, we can verify the installation on both in the same way. Open up your browser and go to the address http://localhost/xampp. If all went well, you will see a screen similar to the following:

Congratulations! You now have a full-blown testing/development server ready for use to go with this book. If you don't see a screenshot like the preceding one, double check to make sure you did not miss a step.

Note

Important XAMPP Notes

There are a couple things you need to be aware of with regards to XAMPP. First off, it is a great product for situations like this when you need to set up a quick development environment, but it should be used for just that: a development environment. You should not use XAMPP as a production server. Instead, you should install and configure each component individually for various security reasons.

XAMPP for Mac is still listed as being in beta, therefore you could come across some bugs. If running beta software on your Mac scares you a bit, there are other alternatives such as MAMP, which is a very popular Mac stack available at http://www.mamp.info/en/index.html.

There is also a version of XAMPP for Linux, so if that is your OS of choice, feel free to download and install it for the purposes of this book.

 

Installing Aptana Studio


Aptana Studio is a free, open source IDE built off of Eclipse. We will be using Aptana Studio 3 for this book and you can download it from http://www.aptana.com/products/studio3/download.html.

To install Aptana Studio 3 on a Windows machine, follow these instructions:

  1. Double-click on the installer file and select Next to get the installation started.

  2. Choose I Agree to accept the license agreement.

  3. The default directory should be fine, as should the default programs group, so hit Next on these two steps.

  4. The installer will now prompt you to choose which file extensions Aptana should be the default editor for. Leave the default settings on this screen. You can change them later in the IDE settings if you need to. Click on Next.

  5. Click on Install to start the installation. Once the installation is finished, click on Next and then on Close.

Installing Aptana Studio on Mac is just as easy as it was for installing XAMPP. After you download the .DMG file, open it up and drag the indicated folder into your Applications folder.

Now that Aptana Studio is installed, open it up and you will be presented with a dialog box asking you to set up your default workspace directory. Go ahead and set this to be your htdocs folder of your XAMPP installation. For you folks on Windows, that directory will be c:\xampp\htdocs (provided you used the default directory). For the Mac users, this will be /Applications/XAMPP/htdocs. By setting this default workspace, any new projects we create will automatically be created and saved here, making it easier for us to test.

Also for you Mac users, there are some further steps that you may need to do for Apatana Studio to work correctly. By default, the XAMPP htdocs folder is owned by root, and because of this, it is set to read-only. In order for you to create and save to this directory, we will need to change those permissions.

  1. Click on the folder in Finder and then choose Get Info from the File menu.

  2. Click on the triangle next to Sharing and Permissions to display the permissions for the selected file or folder.

  3. Click on the lock and authenticate with an administrator account.

  4. Use the menus next to users and groups to change the permissions.

  5. Once you are finished, close the Info window.

Of course, if you need further assistance with Aptana Studio or even XAMPP, refer to their respective websites for support. If you happen to fall in love with Aptana Studio and wish to learn more about it, check out Aptana Studio Beginner's Guide, Thomas Deuling, Packt Publishing.

Tip

We chose to use Aptana Studio 3 as an IDE for this book, so that you can follow along without having to purchase the same IDE we use (we use Zend Studio). Aptana Studio is free so if you have never used an IDE before, you now have an option. If you have an IDE already that you use on a daily basis, use it for the book. Just adjust any steps listed for Aptana to fit your own IDE.

 

Downloading jQuery Mobile


Now we finally get to the meat and potatoes of what this book is about: jQuery Mobile. First thing we need to do is download the framework to use it in our projects. You have two ways of doing this. You can download a prebuilt ZIP file containing the latest stable release and everything you will need to use jQuery Mobile. The second option is that you can build a package that contains only the pieces you need, including earlier versions or unstable branches.

In this book, we will be using the complete package. There are couple reasons for this. First of all, we will be using and looking at so many different aspects of the framework that it would take a lot of space here for us to tell you which pieces to select in the builder. More importantly, as noted on the jQuery Mobile website, the builder is currently in alpha and is not recommended for production environments. Yes, we realize that we are not in a production environment here, but we don't want to try to master a framework by using code that could be unstable. We believe that's enough babbling, let's start downloading!

Go to http://jquerymobile.com. On the top right- hand side of the page, you will see the links to download the latest stable version (which at the time of writing this book is 1.4.5) and a link to the download builder. Click on the link for the latest stable. After the ZIP file is downloaded, go ahead and open it up and you should see the following:

That's quite daunting, isn't it! No worries at all though; we will only be referencing a few of the files here, but let's talk about the overall contents of the ZIP file so that you will have a better understanding of what you just downloaded:

  • demos: We highly recommend that you look at and play around with the contents of this folder. You will find numerous examples here of the different elements of jQuery Mobile. Go now, spend some time with it and then come back—we'll wait.

  • images: This directory contains all of the icons that jQuery Mobile uses throughout the framework. You won't have to reference these directly, rather jQuery Mobile does so through CSS and its core JavaScript files.

  • *.css files: These are several style sheets that make up the overall jQuery Mobile framework. They control the preceding icons, the theme (more on that later), structure, and more.

  • jquery.mobile-1.4.5.css: This is the main and most important CSS file of the download and the one that you will reference and use in your applications.

  • jquery.mobile-1.4.5.js: This is the core JavaScript of the framework.

    Note

    You may have noticed that there are two versions of each file. One that has .min appended to the filename and one that does not. Those with .min are compressed minified files. This means they do not have any white spaces, new line characters, and comments in them. They are the absolute smallest in size that they can be and are hard to read as they do not have any formatting. Uncompressed files, or those without .min, contain comments, spacing, and more things that make them easier to read.

    As a rule of thumb, you should develop with the uncompressed files; that way, if you have any questions or need to see how something works, you can easily read the file. When you deploy the application, use the .min files so that the application size is smaller.

    A smaller web application will load faster, uses less bandwidth, and any little bit helps in a time where we have metered bandwidth on mobile devices. Google checks for the page load time as part of SEO. Faster loading JavaScript and CSS files will help you score brownie points and hence minified (.min) files should be preferred in the production environment.

 

Using the framework via the CDN


There is a third way to acquire and use the framework. In the previous section, we looked at two different ways in which we can download and include the framework locally in our project. In addition to downloading jQuery Mobile, you can also use it via a content delivery network (CDN).

When using a CDN such as Google or even jQuery's own, you do not have the files stored on your local server. Instead, when the user loads your web application or site, it makes a connection to the CDN and uses it from there. This offers a few advantages over having it on the server. One of the biggest advantages is that it increases parallelism. Typically your browser can only download a couple of files at a time from the same server. So if you load the jQuery files, jQuery Mobile framework JavaScript and CSS files, a few custom CSS, and JavaScript files, this can cause a bottleneck as you will have to wait for all the files to download. If you use a CDN, your application makes a connection to Google's server, for example, and downloads a couple of files while your local ones load. This may not seem like a lot of benefit since the files are so small, but it can make a world of difference to your end user. Some other advantages are as follows:

  • If the user visits other sites that use the same CDN, the framework files could already be cached, thereby decreasing your load time even more.

  • It reduces the load on your web server. If you have a heavily used site or application, this could decrease the use of your own server resources.

  • Using a CDN can also allow the user to download the framework files even faster since there may be a CDN mirror closer to the user location than your web server.

So with all these cool advantages, why in the world would we ever want to use it locally? I mean, it sounds like we'd be stupid to ever download it again. Well, my friends, as with many things in life, there is always a downside.

Obviously, the biggest downfall is offline applications. If you are expecting or even adding the slightest bit of offline functionality to your project, then you cannot have the project going off server to use the framework from a CDN. It would have to be stored locally. If the user is offline, they won't be able to download it from the CDN and therefore would not be able to use the project that you worked so hard on.

Okay, so you're not planning on any offline functionality of your project. What else could stop you from using it via a CDN? Well, my friends we have a few more downfalls:

  • If your project is on a company intranet, there may be ACLs or firewalls in place that could prevent your internal webserver from accessing the outside world.

  • If your website is using an SSL certificate, the user will get a warning that they are accessing information from an unsecure site. This could spook many users and they may not trust your website.

  • If you make custom changes or add new functionality to the framework, you will obviously need to store it locally unless you're an absolute rock star and get your changes rolled into the main builds.

Well, we assume that we have covered the advantages and disadvantages of the usage of CDN well enough, so let's look at how and from where we can load jQuery Mobile.

There are three main CDNs we can use in our projects. They are Google, Microsoft, and of course, jQuery itself. Are there advantages to using one over the other? Possibly, but I think the differences would be small. Google may offer more mirrors but more people may use jQuery's own CDN meaning more people would have it cached, so in the end there may be no difference in efficiency.

We will look at the code for each of the CDNs and you can pull it from whichever one you wish to use.

Google's CDN

Google's CDN code is as follows:

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jquerymobile/1.4.5/jquery.mobile.min.css" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js "></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquerymobile/1.4.5/jquery.mobile.min.js"></script>

Microsoft's CDN

Microsoft's CDN code is as follows:

<link rel="stylesheet" href="http://ajax.aspnetcdn.com/ajax/jquery.mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.11.0.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

jQuery's CDN

jQuery's CDN code is as follows:

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

So what are we doing in each of these blocks? Well, the first line of each block <link rel...> is loading in the CSS file we need for the project. The first <script src...> loads jQuery itself into our project. With the current version of jQuery Mobile, you can use jQuery versions 1.8 to 1.11 or 2.1. You will have to make sure that for every jQuery Mobile application, you will need to refer to the jQuery library before you refer to the jQuery Mobile JavaScript file.

Tip

This brings up a good point: even though we are using jQuery Mobile, we still need to load jQuery core. jQuery Mobile is not a replacement for jQuery proper but more of an extension, much like jQuery UI is.

The final <script src…> file loads jQuery Mobile itself. So let's get our feet wet in code now.

 

Seeing the framework in action


So far in this chapter we have done nothing but talk about jQuery Mobile, how we get it, why we should do things a certain way, blah blah. You're a developer; you want to see this in action and now you will. We are going to make a simple jQuery Mobile application. We'll see the code and then we'll explain what is going on within each piece of code:

  1. Go ahead and fire up Aptana Studio 3.

  2. Navigate to File | New | Web Project.

  3. Pick the default template

  4. Name the project whatever you like.

Don't worry too much about everything in Aptana Studio right now, as we'll look at it in more detail in the next chapter.

Right-click on your project and navigate to New | File from the pop-up menu. Name the file index.html. Add the following code to the file:

<html>
  <head>
    <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scrolable=no">
      <title>jQuery Mobile: Getting Started</title>
      <link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
      <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
      <script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
  </head>
  <body>
    <div data-role="page">
      <div data-role="header">
        <h3>Web Development Books</h3>
      </div>
      <div role="main" class="ui-content">
        <ul data-role="listview" data-inset="true" data-divider-theme="b">
          <li data-role="list-divider">JavaScript</li>
          <li>
            <a href="#">Object Oriented JavaScript</a>
          </li>
          <li>
            <a href="#">JavaScript Unit Testing</a>
          </li>
          <li data-role="list-divider">PHP</li>
          <li>
            <a href="#">RESTful PHP Web Services</a>
          </li>
          <li>
            <a href="#">Instant RESS</a>
          </li>
        </ul>
      </div>
    </div>
  </body>
</html>

When we execute this code, open up your browser and you should see the output similar to what we will see in the following screenshots on a mobile device:

That wasn't so hard, was it? Now, it's time to break down the code and see what's going on under the hood:

<html>
  <head>
    <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scrolable=no">
      <title>jQuery Mobile: Getting Started</title>
      <link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
      <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
      <script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
  </head> 

This is your standard HTML5 header with us loading the jQuery Framework from the jQuery CDN. Also notice in-keeping with tradition, we are loading the compressed jQuery and jQuery Mobile files so that we have the smallest possible footprint we can have:

<meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scrolable=no">

Now, you may or may not know this line, depending on how much mobile development experience you have. This line is important as it really makes a difference to how your website or application looks on a mobile browser. Apple started it for use on iOS Safari but has since been adopted by others. If you did not have this line in your project, the page we have would be rendered "zoomed out" basically. The user would have to double-click or zoom in via other means to see the page. By having this, we make sure mobile browsers are on their best behavior in helping your project look fabulous when the user visits:

<div data-role="page">

This is the start of jQuery Mobile specific code. For the most part, our project is straight HTML5. There is very little actual JavaScript involved, but we have these weird div lines sprinkled throughout. These are jQuery Mobile tags. It uses the standard div tag but adds on these things called data roles. In this instance, we are giving div the role of a page. The page role is the main role in jQuery Mobile. We'll discuss this in more detail in another chapter. For now, let's keep moving.

<div data-role="header">
<h3>Web Development Books</h3>
</div>

Here we are using another role, the header role. This allows us to display "Web Development Books" in a different manner than the rest of the page. As you might have noticed in the preceding screenshots, the entire text in the header is not visible. Whenever the text in the header is long, it will be truncated and appended by the ellipses (...). So make sure that you do not have really long names in the header. However, if long names cannot be averted, you can override the jQuery Mobile CSS to make sure that the text in the header is not truncated.

<div role="main" class="ui-content">
<ul data-role="listview" data-inset="true" data-divider-theme="b">
    <li data-role="list-divider">JavaScript</li>
    <li>
      <a href="#">Object Oriented JavaScript</a>
    </li>
    <li>
      <a href="#">JavaScript Unit Testing</a>
    </li>
    <li data-role="list-divider">PHP</li>
    <li>
      <a href="#">RESTful PHP Web Services</a>
    </li>
    <li>
      <a href="#">Instant RESS</a>
    </li>
  </ul>
</div>

This is the heart of our page, the content. Within the div tags, we are creating an unordered list, which jQuery Mobile then renders for us as buttons almost. If we had the links going to existing pages rather than the dummy link, the user could click the list items and navigate through the project. Again, we will be discussing these in much greater detail in another chapter.

Are you still with us? Everything might seem a bit overwhelming right now, even though we hope it doesn't, but as we go and you write more code, things will get easier and you'll see how powerful jQuery Mobile is without having to write a lot of complicated code.

 

Summary


In this chapter, we set up a local development server using XAMPP, and we installed an IDE to use for the book with Aptana Studio 3. We looked at the different ways you can download jQuery Mobile for local use in your project and then you saw how we can use it from the different CDNs, along with the advantages and disadvantages of using a CDN. Once all the basic setup was completed, we created our first jQuery Mobile project.

In the chapter that follows, we will take a look at the different tools and techniques that will help us not just in the development process, but also help us test our application as we develop it.

About the Authors
  • Chip Lambert

    Chip Lambert has been creating websites ever since his high schools days when he got his start doing fantasy sport websites. In addition to these 18 years of HTML experience, he has 13 years experience with PHP and MySQL development. He is currently serving as Director of Applications Development at Bluefield College, where he also teaches HTML5 and CSS3 classes. You can follow him on Twitter @chiplambert.

    Browse publications by this author
  • Chip Lambert

    Chip Lambert has been creating websites ever since his high schools days when he got his start doing fantasy sport websites. In addition to these 18 years of HTML experience, he has 13 years experience with PHP and MySQL development. He is currently serving as Director of Applications Development at Bluefield College, where he also teaches HTML5 and CSS3 classes. You can follow him on Twitter @chiplambert.

    Browse publications by this author
  • Shreerang Patwardhan

    Shreerang Patwardhan completed his bachelor's degree in computer engineering, and since then, he has been working on various technologies for the last 4.5 years. He started off by working for a small start-up in Pune, India, on an innovative solar-powered Linux-based handheld device. He has also worked extensively on Google Maps API v3 and worked in the GIS domain for more than a year. He is also one of the technical reviewers for Google Maps JavaScript API Cookbook, published by Packt Publishing. Shreerang is currently employed at a MNC in the San Francisco Bay Area, USA, as a technical consultant and is working on the frontend development of various web applications using different cutting-edge frontend technologies. He is also a certified Scrum Master and absolutely loves and encourages the Agile methodology. When not working on a project, he blogs about either the Google Maps API v3 or the jQuery Mobile framework on his blog, Spatial Unlimited. When not working or blogging, Shreerang loves spending time with his family and friends and absolutely enjoys sweating it out on the badminton court. He has been playing badminton for the last 20 years and also takes a keen interest in UFOlogy. You can reach him on his blog, contact him on LinkedIn, or follow him on Twitter (@shreerangp).

    Browse publications by this author
Mastering jQuery Mobile
Unlock this book and the full library FREE for 7 days
Start now