Those Who Control The Past Control The Future: The HTML5 History API Sean Adkinson Jama Software 2012 HTML5 Developer Conference.

Slides:



Advertisements
Similar presentations
HTML Basics Customizing your site using the basics of HTML.
Advertisements

 jQuery PJAX Speeding up the Client Kevin McKelvin – Devs4Devs – 13 August 2011 Blog:
Internet Browsers and Add-ons Popular browsers What a browser does Javascript Add-ons Also see an explanation and examples of HTML code in Past Meeting.
Browser Tabs Presented by Keystone Computer Concepts.
® IBM Software Group © 2007 IBM Corporation Accessible Rich Internet Applications and Online Services Rich Schwerdtfeger IBM Distinguished Engineer, Chair.
Browser Toolbars You Shouldn’t Do Without How the WAT and WDT Can Help You Design Accessible Websites.
AJAX Presented by: Dickson Fu Dimas Ariawan Niels Andreassen Ryan Dial Jordan Nielson CMPUT 410 University of Alberta 2006.
Apache Tomcat Server Typical html Request/Response cycle
CM143 - Web Week 2 Basic HTML. Links and Image Tags.
Lecture 18. HTML5 and JavaScript Instructor: Jie Yang Department of Computer Science University of Massachusetts Lowell Exploring the Internet,
WEB BROWSERS. W EB B ROWSER B ASICS Define: a software application for retrieving, presenting, and traversing information resources on the World Wide.
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Definition from Wikipedia.  The Prototype JavaScript Framework  implemented as a single file of JavaScript code  named prototype.js (
Overview of HTML. Three Different Approaches  Text editor like Notepad  HTML editor such as: –KompoZer –DreamWeaver –Microsoft Expression Web –iWeb.
INTRODUCTION TO CLIENT-SIDE WEB PROGRAMMING ACM 511 ACM 262 Course Notes.
BY LINDA MOHAISEN MIKE ZIELINSKI The Tree Census Project.
HTML5. What is HTML5? HTML5 will be the new standard for HTML. HTML5 is the next generation of HTML. HTML5 is still a work in progress. However, the major.
HTML Essentials Frames and Frame Tags. Introduction A frame used to be an effective design tool Utilized space effectively by subdividing screen One idea:
Ajax Basics The XMLHttpRequest Object. Ajax is…. Ajax is not…. Ajax is not a programming language. Ajax is not a programming language. Ajax is a methodology.
1 Ajax. 2 What’s Ajax? AJAX is a combination of a few technologies that has come together in the past few years AJAX used to be an acronym for Asynchronous.
11/13/2007 A synchronous J avaScript A nd X ML Gloria Law Joshua Mahaz.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Accessing the Admit Online System ADMIT. Accessing the Admit Online System Enter the address of the Admit system into your browser (Google Chrome, Firefox,
Mr. Rouda’s CSCI 101 sections. What does a web page consist of? Code HTML, CSS, XHTML, XML, etc. Images Gif, jpg, png, etc. Plugins Swf, flv, etc. JavaScript.
Web Programming: Client/Server Applications Server sends the web pages to the client. –built into Visual Studio for development purposes Client displays.
Internet Browsers and Add-ons Popular browsers Browser stats (shown in talk) What a browser does Javascript (shown in talk) * Add-ons * Also see an explanation.
INTERNET. BROADBAND The amount of information a connection is capable of carrying. Measured in bits per second.
Objective Understand concepts used to web-based digital media. Course Weight : 5%
Access Code Registration Portals for
Ajax In Action The Journey into Web2.0 Presented by Eric Pascarello.
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
Wijmo Troy Taylor. What is Wijmo? -Wijmo is a kit of over 40 UI widgets, optimized for client-side web development. -HTML5 -jQuery -CSS3 -SVG.
1 3 Computing System Fundamentals 3.4 Networked Computer Systems.
Use Case 1 - Mapping Client asks for a map. Server returns a map with default symbolisation. User can click on any graphic feature from one layer to retrieve.
1 Computer Forensics Dr. Randy M. Kaplan. 2 Browser Forensics.
HTML5 Video Player For SharePoint HTML5 Background Why creating video player in HTML5 is easy? Can we do it without Javascript? Easy or Difficult?
Browser Wars (Click on the logo to see the performance)
Quicksoft Project Team 6 Team members: Brian H Johnson Brannen J Sorem Kenneth Ng, Project Manager Michael Puzon, QA Catherine Gamboa, UI lead.
INT222 - Internet Fundamentals Shi, Yue (Sunny) Office: T2095 SENECA COLLEGE.
Google Web Toolkit Dynamic web on Java (Script) Jordan Jordanov 6 March 2008.
AJaX and SOA Partha Kuchana. Agenda What is AJaX Benefits & Problems AJaX & SOA AJaX architecture AJaX with No XML.
JavaScript and Ajax (Internet Background) Week 1 Web site:
Access Code Registration Portals for
 AJAX technology  Rich User Experience  Characteristics  Real live examples  JavaScript and AJAX  Web application workflow model – synchronous vs.
AJAX JaxFusion April 2006 David Fekke. Who am I? David Fekke Lead Software Engineer Data Inteligence Group
Overview Web Technologies Computing Science Thompson Rivers University.
1 Using jQuery JavaScript & jQuery the missing manual (Second Edition)
X2R Spec 1. Change log DateVersionPeopleNote 2013/11/01V0.0.1Chien-Wei Yu, Anderson Ou First draft, add X2R files spec. 2013/12/16V0.0.2Anderson Ou, Doc.
Introduction to Dynamic Web Content
Web Technologies Computing Science Thompson Rivers University
JavaScript and Ajax (Ajax Tutorial)
JavaScript and Ajax (Internet Background)
Access Code Registration Portals for
HTML 5 Tag By: Raul, Cordero.
AJAX.
Using Various Internet Browsers
Apple Safari Customer Support. Apple Safari is well known based on free internet network web browser that was launched by apple inc. it gives a higher.
Introduction to Dynamic Web Content
Browser Engine How it works…..
ISC440: Web Programming 2 AJAX
Access Code Registration Portals for
Openreach Application
Overview of HTML.
ITI 163: Web, Mobile, and Social Media Design Introduction
Web Technologies Computing Science Thompson Rivers University
Client-Server Model: Requesting a Web Page
Access Code Registration Portals for
Front End Development workshop
Murach's JavaScript and jQuery (3rd Ed.)
ADTEL WEBSITE
Presentation transcript:

Those Who Control The Past Control The Future: The HTML5 History API Sean Adkinson Jama Software 2012 HTML5 Developer Conference

What is it? The HTML5 History API gives JavaScript the ability to control the browser’s URL …without reloading the page

Why History API now? AJAX and single-page applications New resources should have new URLs The History API gives you the ability to use AJAX, and maintain proper URLs

“#!” Solution Uses browser in-page link functionality Problems with this solution Only accessible to the client Doesn’t work without JavaScript Can’t use browser in-page links It’s a hack

History API Spec Two additional window.history methods One additional window event

Push State window.history.pushState(data, title, path);

Replace State window.history.replaceState(data, title, path);

Pop State window.onpopstate = function(event); demo

Single-Page Strategy URL  State, one-to-one When state is changed, push new corresponding URL On pop state (and initial page load), display based on URL  State If starting a new project, just use a framework like Backbone demo

Multi-Page Strategy Intercept link clicks Retrieve and display content Back-end returns only HTML Push/replace state Github is a great example demo

Browser Support Internet ExplorerNone Firefox4.0+ Safari5.0+ Chrome8.0+ Opera iPhone AndroidNone

History.js Abstraction layer History.pushState(data, title, url); History.replaceState(data, title, url); window.onstatechange URLs can be pasted between IE  Firefox Adapters for jQuery, Zepto, MooTools, more

References

Sean Adkinson Jama

Questions?