Download from Wow! eBook <www.wowebook.com>
For your convenience Apress has placed some of the front
matter material after the index. Please use the Bookmarks
and Contents at a Glance links to access them.
Contents at a Glance
Contents..................................................................................................................vii
About the Author ................................................................................................. xxix
About the Technical Reviewer ............................................................................. xxix
Preface ................................................................................................................. xxx
■ Chapter 1: Getting Started ...................................................................................1
■ Chapter 2: HTML5 in Short .................................................................................21
■ Chapter 3: CSS3 and iOS Styling ........................................................................41
■ Chapter 4: JavaScript and APIs .........................................................................65
■ Chapter 5: Mobile Frameworks..........................................................................85
■ Chapter 6: Usability, Navigation, and Touch ....................................................103
■ Chapter 7: GPS and Google Maps.....................................................................121
■ Chapter 8: Animation and Effects ....................................................................141
■ Chapter 9: Canvas ............................................................................................157
■ Chapter 10: Audio and Video............................................................................175
■ Chapter 11: Integrating with Native Services ..................................................185
■ Chapter 12: Offline Apps and Storage..............................................................195
■ Chapter 13: Mobile Testing ..............................................................................203
■ Chapter 14: Advanced Topics ..........................................................................219
■ Chapter 15: Going Native with PhoneGap ........................................................229
v
■ Appendix: Companion Site References ............................................................249
Index.....................................................................................................................263
vi
CHAPTER 1
■■■
Getting Started
Congratulations! You are building your first web application for your iOS device (iPhone, iPad, or iPod
Touch) using HTML5 and JavaScript.
You might think that you can pick up one of your HTML or JavaScript books from years past and
then just scale it down to the size of your target device and you’ll be good to go. You’d be wrong. A lot
has changed.
In this chapter we lay the groundwork for building a mobile web app. Here we cover things like
getting familiar with your browser, setting up your mobile project, architecting the site, and creating a
site map as well as selecting the tools you’ll use to build it.
All you need is an idea, and I’ll help you take care of the rest.
You purchased this book to get started building a mobile web app. I won’t beat around the bush and
tell you about the history of the Internet or the history of browsers. Instead, let’s just jump in.
Your Browser (Mobile Safari)
The browser we’ll focus on is Mobile Safari—a WebKit-based browser engine that does an excellent job
of parsing HTML5 and interpreting JavaScript.
■ Note Browsers use different rendering engines. Safari and Google Chrome use WebKit, Opera uses Presto,
Firefox uses Gecko, and Internet Explorer uses Trident. In later chapters we’ll need to use specific features of
WebKit to achieve a more native-looking mobile web application.
Mobile Safari acts and renders in many ways similar to regular Safari, but it has a smaller screen, of
course, and responds to gestures and touches as opposed to clicks. It also has noticeable performance
differences and does not support Adobe Flash.
One of mobile Safari’s most important screens is its Settings screen. You can get to it by clicking on
Settings, and then Safari on the iPhone or iPad home screen. You’ll see a screen like the one shown in
Figure 1-1.
1
Learning HTML5 and JavaScript for iOS
Copyright © 2012 by Scott Preston
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of
the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations,
recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or
information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar
methodology now known or hereafter developed. Exempted from this legal reservation are brief excerpts
in connection with reviews or scholarly analysis or material supplied specifically for the purpose of being
entered and executed on a computer system, for exclusive use by the purchaser of the work. Duplication
of this publication or parts thereof is permitted only under the provisions of the Copyright Law of the
Publisher's location, in its current version, and permission for use must always be obtained from
Springer. Permissions for use may be obtained through RightsLink at the Copyright Clearance Center.
Violations are liable to prosecution under the respective Copyright Law.
ISBN-13 (pbk): 978-1-4302-4038-9
ISBN-13 (electronic): 978-1-4302-4039-6
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol
with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only
in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of
the trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are
not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject
to proprietary rights.
While the advice and information in this book are believed to be true and accurate at the date of
publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for
any errors or omissions that may be made. The publisher makes no warranty, express or implied, with
respect to the material contained herein.
President and Publisher: Paul Manning
Lead Editor: Michelle Lowman
Developmental Editor: Gwenan Spearing, Matthew Moodie
Technical Reviewer: Peter Whitmore
Editorial Board: Steve Anglin, Ewan Buckingham, Gary Cornell, Louise Corrigan, Morgan Ertel,
Jonathan Gennick, Jonathan Hassell, Robert Hutchinson, Michelle Lowman, James Markham,
Matthew Moodie, Jeff Olson, Jeffrey Pepper, Douglas Pundick, Ben Renow-Clarke, Dominic
Shakeshaft, Gwenan Spearing, Matt Wade, Tom Welsh
Coordinating Editor: Brent Dubi
Copy Editors: Valerie Greco, Jill Steinberg, James Compton, Kim Wimpsett
Compositor: Mary Sudul
Indexer: SPi Global
Cover Designer: Anna Ishchenko
Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring
Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail , or visit www.springeronline.com.
For information on translations, please e-mail , or visit www.apress.com.
Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional use.
eBook versions and licenses are also available for most titles. For more information, reference our
Special Bulk Sales–eBook Licensing web page at www.apress.com/bulk-sales.
Any source code or other supplementary materials referenced by the author in this text is available to
readers at www.apress.com. For detailed information about how to locate your book’s source code, go to
www.apress.com/source-code.
This book is dedicated to my wife Emily & daughter Lilu.
Thanks for your patience, support and love.
iii