- Page 1 and 2:
THE EXPERT’S VOICE ® IN WEB DEVE
- Page 3 and 4:
■ ■ ■ Pro HTML5 Programming P
- Page 5 and 6:
For my beautiful wife, Vittoria, an
- Page 7 and 8:
Contents ■Foreword ..............
- Page 9 and 10:
■ CONTENTS Implementing Canvas Se
- Page 11 and 12:
■ CONTENTS Summary ..............
- Page 13 and 14:
■ CONTENTS Setting and Retrieving
- Page 15 and 16:
Foreword In June 2004, representati
- Page 17 and 18:
About the Technical Reviewer � Pa
- Page 19 and 20:
Introduction HTML5 is brand new. In
- Page 21 and 22:
C H A P T E R 1 ■ ■ ■ Overvie
- Page 23 and 24:
CHAPTER 1 ■ OVERVIEW OF HTML5 wit
- Page 25 and 26:
Interoperability Simplification CHA
- Page 27 and 28:
• MathML • Microdata • Server
- Page 29 and 30:
Figure 1-1. A page rendered in stan
- Page 31 and 32:
Table 1-2. New sectioning HTML5 ele
- Page 33 and 34:
CHAPTER 1 ■ OVERVIEW OF HTML5 Wit
- Page 35 and 36:
article { background-color: #eee; d
- Page 37 and 38:
Figure 1-2. An HTML5 page with all
- Page 39 and 40:
CHAPTER 1 ■ OVERVIEW OF HTML5 The
- Page 41 and 42:
Figure 1-3. Developer Tools view in
- Page 43:
CHAPTER 1 ■ OVERVIEW OF HTML5 All
- Page 46 and 47:
26 CHAPTER 2 ■ USING THE HTML5 CA
- Page 48 and 49:
28 CHAPTER 2 ■ USING THE HTML5 CA
- Page 50 and 51:
30 CHAPTER 2 ■ USING THE HTML5 CA
- Page 52 and 53:
Download from Wow! eBook 32 CHAPTE
- Page 54 and 55:
34 CHAPTER 2 ■ USING THE HTML5 CA
- Page 56 and 57:
36 CHAPTER 2 ■ USING THE HTML5 CA
- Page 58 and 59:
38 CHAPTER 2 ■ USING THE HTML5 CA
- Page 60 and 61:
40 CHAPTER 2 ■ USING THE HTML5 CA
- Page 62 and 63:
Download from Wow! eBook 42 CHAPTE
- Page 64 and 65:
44 CHAPTER 2 ■ USING THE HTML5 CA
- Page 66 and 67:
46 CHAPTER 2 ■ USING THE HTML5 CA
- Page 68 and 69:
48 CHAPTER 2 ■ USING THE HTML5 CA
- Page 70 and 71:
50 CHAPTER 2 ■ USING THE HTML5 CA
- Page 72 and 73:
Download from Wow! eBook 52 CHAPTE
- Page 74 and 75:
54 CHAPTER 2 ■ USING THE HTML5 CA
- Page 76 and 77:
56 CHAPTER 2 ■ USING THE HTML5 CA
- Page 78 and 79:
58 CHAPTER 2 ■ USING THE HTML5 CA
- Page 80 and 81:
60 CHAPTER 2 ■ USING THE HTML5 CA
- Page 82 and 83:
Download from Wow! eBook 62 CHAPTE
- Page 85 and 86:
C H A P T E R 3 ■ ■ ■ Working
- Page 87 and 88:
Audio and Video Codecs CHAPTER 3
- Page 89 and 90:
Table 3-1. Browser support for HTML
- Page 91 and 92:
MEDIA FOR EVERYONE CHAPTER 3 ■ WO
- Page 93 and 94:
CHAPTER 3 ■ WORKING WITH HTML5 AU
- Page 95 and 96:
Table 3-4 shows a few of the read-o
- Page 97 and 98:
CHAPTER 3 ■ WORKING WITH HTML5 AU
- Page 99 and 100:
CHAPTER 3 ■ WORKING WITH HTML5 AU
- Page 101 and 102:
CHAPTER 3 ■ WORKING WITH HTML5 AU
- Page 103 and 104:
find the actual frame since the vid
- Page 105 and 106:
LOSING VIEWERS IN THE OF AN EYE CH
- Page 107 and 108:
C H A P T E R 4 ■ ■ ■ Using t
- Page 109 and 110:
A device can use any of the followi
- Page 111 and 112:
Table 4-4. Pros and cons of cell ph
- Page 113 and 114:
Figure 4-1. HTML5 Geolocation brows
- Page 115 and 116:
CHAPTER 4 ■ USING THE HTML5 GEOLO
- Page 117 and 118:
CHAPTER 4 ■ USING THE HTML5 GEOLO
- Page 119 and 120:
CHAPTER 4 ■ USING THE HTML5 GEOLO
- Page 121 and 122:
CHAPTER 4 ■ USING THE HTML5 GEOLO
- Page 123 and 124:
Listing 4-6. The Haversine formula
- Page 125 and 126:
Listing 4-9. Adding the loadDemo()
- Page 127 and 128:
THE EASIEST WAY TO TRAVEL CHAPTER 4
- Page 129 and 130:
var deltaLatitude = toRadians(latit
- Page 131 and 132:
Practical Extras CHAPTER 4 ■ USIN
- Page 133 and 134:
Show Me on a Google Map CHAPTER 4
- Page 135 and 136:
C H A P T E R 5 ■ ■ ■ Using t
- Page 137 and 138: CHAPTER 5 ■ USING THE COMMUNICATI
- Page 139 and 140: CHAPTER 5 ■ USING THE COMMUNICATI
- Page 141 and 142: CHAPTER 5 ■ USING THE COMMUNICATI
- Page 143 and 144: var defaultTitle = "Portal [http://
- Page 145 and 146: Send Notification CHAPTER 5 ■ U
- Page 147 and 148: Figure 5-4. Difference between clie
- Page 149 and 150: “SEEMINGLY ARBITRARY” TIMES CHA
- Page 151 and 152: crossOriginRequest.upload.onprogres
- Page 153 and 154: CHAPTER 5 ■ USING THE COMMUNICATI
- Page 155 and 156: CHAPTER 5 ■ USING THE COMMUNICATI
- Page 157 and 158: C H A P T E R 6 ■ ■ ■ Using t
- Page 159 and 160: Figure 6-1. The complexity of real-
- Page 161 and 162: Listing 6-2. The WebSocket interfac
- Page 163 and 164: Listing 6-4. HTTP response header H
- Page 165 and 166: Figure 6-4. Latency comparison betw
- Page 167 and 168: EXISTING WEBSOCKET SERVERS CHAPTER
- Page 169 and 170: CHAPTER 6 ■ USING THE HTML5 WEBSO
- Page 171 and 172: def terminate(self): self.ready_sta
- Page 173 and 174: self.sessions = [] self.port = port
- Page 175 and 176: Basic API Usage CHAPTER 6 ■ USING
- Page 177 and 178: CHAPTER 6 ■ USING THE HTML5 WEBSO
- Page 179 and 180: CHAPTER 6 ■ USING THE HTML5 WEBSO
- Page 181 and 182: CHAPTER 6 ■ USING THE HTML5 WEBSO
- Page 183 and 184: CHAPTER 6 ■ USING THE HTML5 WEBSO
- Page 185 and 186: HTML5 WebSocket / Geolocation Track
- Page 187: } } Summary incomingRow = docume
- Page 191 and 192: CHAPTER 7 ■ USING THE HTML5 FORMS
- Page 193 and 194: Figure 7-1. Onscreen keyboard displ
- Page 195 and 196: Table 7-3. Future HTML5 Form elemen
- Page 197 and 198: The autocomplete Attribute CHAPTER
- Page 199 and 200: CHAPTER 7 ■ USING THE HTML5 FORMS
- Page 201 and 202: You can do this by calling: valChec
- Page 203 and 204: CHAPTER 7 ■ USING THE HTML5 FORMS
- Page 205 and 206: CHAPTER 7 ■ USING THE HTML5 FORMS
- Page 207 and 208: placeholder="(xxx) xxx-xxx"> E-mail
- Page 209 and 210: } // register an event handler on t
- Page 211 and 212: CHAPTER 7 ■ USING THE HTML5 FORMS
- Page 213 and 214: C H A P T E R 8 ■ ■ ■ Using t
- Page 215 and 216: CHAPTER 8 ■ USING THE HTML5 WEB W
- Page 217 and 218: document.getElementById("helloButto
- Page 219 and 220: Using Timers CHAPTER 8 ■ USING TH
- Page 221 and 222: Figure 8-4. HTML5 Web Worker-based
- Page 223 and 224: Coding the blur.html Application Pa
- Page 225 and 226: Communicating with the Web Workers
- Page 227 and 228: The Application in Action CHAPTER 8
- Page 229 and 230: function stopBlur() { for (var i=0;
- Page 231 and 232: } } CHAPTER 8 ■ USING THE HTML5 W
- Page 233 and 234: C H A P T E R 9 ■ ■ ■ Using t
- Page 235 and 236: Using the HTML5 Web Storage API CHA
- Page 237 and 238: There are three important points to
- Page 239 and 240:
CHAPTER 9 ■ USING THE HTML5 WEB S
- Page 241 and 242:
CHAPTER 9 ■ USING THE HTML5 WEB S
- Page 243 and 244:
Exploring Web Storage CHAPTER 9 ■
- Page 245 and 246:
Figure 9-7. The example race websit
- Page 247 and 248:
} } incomingRow = document.createEl
- Page 249 and 250:
} // test to make sure that Web Soc
- Page 251 and 252:
CHAPTER 9 ■ USING THE HTML5 WEB S
- Page 253 and 254:
} updateGeolocationStatus("Location
- Page 255 and 256:
CHAPTER 9 ■ USING THE HTML5 WEB S
- Page 257 and 258:
Figure 9-11. sql.html displaying th
- Page 259 and 260:
Listing 9-14. JSON Object Storage
- Page 261 and 262:
Summary CHAPTER 9 ■ USING THE HTM
- Page 263 and 264:
C H A P T E R 10 ■ ■ ■ Creati
- Page 265 and 266:
Figure 10-1. Viewing the offline ca
- Page 267 and 268:
Going Offline CHAPTER 10 ■ CREATI
- Page 269 and 270:
Table 10-2. The Six Cache States Nu
- Page 271 and 272:
CHAPTER 10 ■ CREATING HTML5 OFFLI
- Page 273 and 274:
window.applicationCache.onchecking
- Page 275 and 276:
} if (!window.localStorage) { log("
- Page 277:
window.addEventListener("online", f
- Page 280 and 281:
260 CHAPTER 11 ■ THE FUTURE OF HT
- Page 282 and 283:
Download from Wow! eBook 262 CHAPT
- Page 284 and 285:
264 CHAPTER 11 ■ THE FUTURE OF HT
- Page 286 and 287:
266 CHAPTER 11 ■ THE FUTURE OF HT
- Page 289 and 290:
■ ■ ■ Index ■ Symbols and N
- Page 291 and 292:
fill styles, 39-41 gradients, 45-47
- Page 293 and 294:
DOM Level 3, 22 drawing at origin,
- Page 295 and 296:
uses of, 87 using, 95-101 geolocati
- Page 297 and 298:
■ J JägerMonkey, 22 JavaScript c
- Page 299 and 300:
onmessage method, 141 onopen handle
- Page 301 and 302:
scale function, 50 scaling, canvas
- Page 303 and 304:
stopTimeline function, adding, 83 s