You are previewing Programming HTML5 Applications.
O'Reilly logo
Programming HTML5 Applications

Book Description

Move beyond simple site creation and build web applications with HTML5 that can compete with desktop apps and run on mobile devices. This practical guide shows you how HTML5's JavaScript APIs give you the power to take web development into many fields that used to require more platform-specific development—particularly mobile deployment. You’ll also learn many ways to make application development with JavaScript more powerful.

Table of Contents

  1. Programming HTML5 Applications
  2. Preface
    1. How This Book Is Organized
    2. Conventions Used in This Book
    3. Using Code Examples
    4. Safari® Books Online
    5. How to Contact Us
    6. Acknowledgments
  3. 1. The Web As Application Platform
    1. Adding Power to Web Applications
    2. Developing Web Applications
    3. JavaScript’s Triumph
  4. 2. The Power of JavaScript
    1. Nonblocking I/O and Callbacks
    2. Lambda Functions Are Powerful
    3. Closures
    4. Functional Programming
    5. Prototypes and How to Expand Objects
    6. Expanding Functions with Prototypes
    7. Currying and Object Parameters
    8. Array Iteration Operations
    9. You Can Extend Objects, Too
  5. 3. Testing JavaScript Applications
    1. QUnit
      1. A Simple Example
      2. Testing with QUnit
    2. Selenium
      1. Selenium Commands
      2. Constructing Tests with the Selenium IDE
      3. Automatically Running Tests
      4. Selenese Command Programming Interface
      5. Running QUnit from Selenium
      6. Selenium RC and a Test Farm
  6. 4. Local Storage
    1. The localStorage and sessionStorage Objects
      1. Using localStorage in ExtJS
      2. Offline Loading with a Data Store
      3. Storing Changes for a Later Server Sync
    2. JQuery Plug-ins
      1. DSt
      2. jStore
  7. 5. IndexedDB
    1. Adding and Updating Records
    2. Adding Indexes
    3. Retrieving Data
    4. Deleting Data
  8. 6. Files
    1. Blobs
    2. Working with Files
    3. Uploading Files
    4. Drag-and-Drop
    5. Putting It All Together
    6. Filesystem
  9. 7. Taking It Offline
    1. Introduction to the Manifest File
      1. Structure of the Manifest File
      2. Updates to the Manifest File
    2. Events
    3. Debugging Manifest Files
  10. 8. Splitting Up Work Through Web Workers
    1. Web Worker Use Cases
      1. Graphics
      2. Maps
    2. Using Web Workers
      1. The Worker Environment
      2. Worker Communication
    3. Web Worker Fractal Example
    4. Testing and Debugging Web Workers
    5. A Pattern for Reuse of Multithread Processing
    6. Libraries for Web Workers
  11. 9. Web Sockets
    1. The Web Sockets Interface
    2. Setting Up a Web Socket
    3. Web Socket Example
    4. Web Socket Protocol
      1. Ruby Event Machine
      2. Erlang Yaws
  12. 10. New Tags
    1. Tags for Applications
    2. Accessibility Through WAI-ARIA
    3. Microdata
    4. New Form Types
    5. Audio and Video
    6. Canvas and SVG
    7. Geolocation
    8. New CSS
  13. A. JavaScript Tools You Should Know
  14. Index
  15. About the Author
  16. Colophon
  17. Copyright