and Karl Swedberg. You may also want to go directly to the official jQuery website
jquery.com, with downloads, examples, blo gs, and more.
Unless you like reinventing the wheel, you won’t stop at the basic jQuery library.
There are countless jQuery plug-ins for you to use (check
plugins.jquery.com, for ex-
ample). Plug-ins are modules that add new functionality, and jQuery plug-ins are
just plain files of JavaScript code. There’s even a whole library of popular jQuery
plug-in s distributed under the name jQuery User Interface ( jQueryUI, available at
jqueryui.com). With the se UI plugins you can make elements on your page dr aggable,
droppable, resizable, selectable, or sortable. You will also fin d practical widgets like
date picker, with a convenient calendar, or progress bar. The jQuery UI library also
comes with bountiful CSS themes, and if you d on’t find one to your taste, you can
compose and download your own with their online ThemeRoller.
B.5 Go Mobile
If you haven’t already done so, it is probably time to start thinking about programming
for mobile devices. The good news is that HTML5 allows you to take advantage of
everyth ing you’ve learned abo ut HTML, CSS, and JavaScript. By using the newest
HTML5, CSS3, and JavaScript features, you can build web applications that look and
feel like native applications. With the latest b rowsers on the market, even speed is
no longer a concern—most web applications built upon the newest technologie s are
as fast as native applications. Apart from that, HTML5 allows you to “install” web
application s in your browser’s memory and run them offline, so your users need not
be connected to the Internet to use the m.
One big disadvantage of native applications is that they are programmed for a specific
target platfor m, ma inly using very different technologies. You need to learn the Ob-
jective C and Xcode development environment if y ou want to program Apple’s native
iOS applicatio ns, or you will have to learn Java a long with the Eclipse development
environment if you want to program native Android applications, for example. By
creating web applications, you can mostly forget about the differences between differ-
ent platforms. With m inimal mod ifica tions, your app lication will run on most, if not
all, devices.
Mobile Interaction
It’s tru e that you can also view most web pages and run m ost web applications de-
signed for de sktop com puters on you r mobile device. Ju st because you don’t h ave a
mouse connected to your mobile, that doesn’t m ean you’re handicapped when trying
to follow a hyperlink, for example. In mo bile d evices, mouse events are simulated
when touch events occur. This is essential for keeping the mobile web alive. That
said, when y ou design a page or application with a mobile device already in mind,
you can improve your user’s experience hugely.
There are some considerations that you should give you r design if you really want
to think mobile. First, ther e’s the type of web navigation: instead of the mouse and
keyboard used with desktop browsers, mobile users navigate the Web with the ir fin-
gers, tapping, swiping, and rotating the device. For the programmer, this b asically
302 Appendix B. Ways to Continue