This course will teach you to use standard web technologies to create an engaging, interactive user experience on the iPad.
We'll be creating an eSales Aid in the course, which is a popular use for sharing information about a company or product on tablet devices. However, the possibilities of this approach are limitless. Use standard web technologies to create interactive books, catalogs, or any interactive project you can imagine. If you can create it on the web, you can create it in a Web App.
And the best part is... no app stores!
Web Apps run from any web server, and are actually web sites themselves. The main difference is in the way they load information, and define behaviors. We'll cover creating custom icons and startup screens, optimizing the user experience for touch events, and using CSS3 hardware accelerated features for smooth animations.
What to expect in the course
In the course we'll start by creating web graphics with Photoshop, for both standard and retina screens. There is also a "skip Photoshop" folder as well, in case you want to bypass working in Photoshop. We'll also be using CSS3 to detect hi-definition displays (retina screens), as well as using CSS3 transform properties to position out HTML elements across the iPad screen.
The project files provided in this course include a copy of the fully completed final project. Use these files to track your progress, correct any errors you may be having, or more importantly, adapt the project into your own interactive Web Apps.
Watch a demonstration of the final project we'll be creating, as well as a glimpse of the graphics, code, and animated explanations.
This lecture sets the expectations for the course, letting you know what to expect when you begin.
This course requires a text editor, or graphical web tool with access to the code, as well as a WebKit browser. Optional software and hardware include Adobe Photoshop, an iPad or an iPad Simulator.
The project files* contain native, sliced, Photoshop files, as well as a set of final graphics, a series of code snippets, and a copy of the fully completed final project.
*project files are attached to the next lecture, Starting Your Project
To begin, there are a series of starter files in the project files* that we'll be adding to a new folder on your desktop.
*download the project files from the lecture
We'll be saving the graphics that will be used for the Web App icon, startup screens, and special messaging for detecting non-iPads and non-stand-alone users.
Learn to modify SmartObjects in Photoshop and create multiple version of graphics for the home screen, our video poster, and a transparent content graphic.
Create a series of product photos to use in the interactive gallery.
The HTML and CSS provided in the code snippets work together to create the layout for our Web App. As we walk through the code snippets, this is end result of those snippets.
The outter-most HTML5 elements that will hold our content, and act as layout containers for our CSS to size and position.
These HTML elements will contain the main page contents as well as a destination to load a Google map.
Add anchor links to the nav element, and a copyright statement in the footer.
We'll add a series of CSS rules for the layout and text styles, and apply some specific rules for landscape and portrait orientations.
Here we'll use CSS3 transforms to position elements on the home page of the Web App. Two sets of rules will allow for positioning elements for both landscape and portrait orientations.
Redefine the CSS display type for anchor links and make use of the icon sprite sheet we created for the for the navigation.
This is a crucial piece to the user experience. Content must be loaded into your via AJAX to keep the user within your Web App. Links that go directly to a URL will switch your user to Mobile Safari on the iPad.
When we load a page, we'll detect if the home page is targeted, and if so, we'll add a "home" class to the main page container.
When we load a page, we'll detect if the contact us page is targeted, and if so, we'll add an "on" class to the map container.
When the Web App loads, we'll automatically trigger, or click, the first navigation link.
The code snippets contain code from Google's developer site for injecting a map into an HTML container. We'll also explore Google maps to find a location and get the latitude and longitude coordinates necessary to load a map location.
The iScroll plug-in provides an enhanced user experience for touch devices, and can be activated with a few lines of code.
Much like the main Web App containers, the gallery need some HTML containers to create the layout within the content area.
These CSS rules will size and position the gallery HTML containers to recreate a layout for both landscape and portrait orientations.
Using jQuery, we'll assign click events to the gallery thumbnails in order to get the image and caption information. Then we can provide that information back to the user in the detail container.
In the video page we'll add an HTML5, with a poster graphic, as well as positioning a graphic within the content.
Using CSS3 we'll detect the pixel ratio to determine if the user's screen is a hi-definition (retina) screen or not. If they are on a hi-definition screen, we'll switch the graphics to the larger ones.
If the user is on an iPad, but has not saved it to their home screen, we'll use our add to home screen graphic message.
Now that we've created a compelling user experience leveraging standard web technologies, learn about other directions you may want to explore with this new approach to interactive development on the iPad.