AJAX Workshop. Karen A. Coombs University of Houston Libraries Jason A. Clark Montana State University Libraries

Similar documents
Outline. AJAX for Libraries. Jason A. Clark Head of Digital Access and Web Services Montana State University Libraries

Working with Javascript Building Responsive Library apps

AJAX Programming Overview. Introduction. Overview

Web Services for Libraries. Jason A. Clark Head of Digital Access and Web Services Montana State University Libraries

TIME SCHEDULE MODULE TOPICS PERIODS. HTML Document Object Model (DOM) and javascript Object Notation (JSON)

COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments.

Part of this connection identifies how the response can / should be provided to the client code via the use of a callback routine.

User Interaction: jquery

Course 20480: Programming in HTML5 with JavaScript and CSS3

dotnettips.com 2009 David McCarter 1

COURSE 20480B: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3

Programming in HTML5 with JavaScript and CSS3

Cleveland State University Department of Electrical and Computer Engineering. CIS 408: Internet Computing

Read & Download (PDF Kindle) PHP Ajax Cookbook

Web Services Bootcamp: Adding Value to Library Apps & Services

Lesson 12: JavaScript and AJAX

Programming in HTML5 with JavaScript and CSS3

Credits: Some of the slides are based on material adapted from

Web Development 20480: Programming in HTML5 with JavaScript and CSS3. Upcoming Dates. Course Description. Course Outline

Create-A-Page Design Documentation

Web 2.0, AJAX and RIAs

Web Application Security

CNIT 129S: Securing Web Applications. Ch 3: Web Application Technologies

AJAX: Rich Internet Applications

We aren t getting enough orders on our Web site, storms the CEO.

Modern and Responsive Mobile-enabled Web Applications

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML

REST AND AJAX. Introduction. Module 13

Abstract. 1. Introduction. 2. AJAX overview

Developing Ajax Web Apps with GWT. Session I

XML Processing & Web Services. Husni Husni.trunojoyo.ac.id

,

Course Details. Skills Gained. Who Can Benefit. Prerequisites. View Online URL:

Chapter 10 Web-based Information Systems

Creating an Online Catalogue Search for CD Collection with AJAX, XML, and PHP Using a Relational Database Server on WAMP/LAMP Server

Wakanda Architecture. Wakanda is made up of three main components: Wakanda Server Wakanda Studio Wakanda Client Framework

20480B: Programming in HTML5 with JavaScript and CSS3

JavaScript Programming

Using AJAX to Easily Integrate Rich Media Elements

VINEPILOT. Project Design Specification. v2.0 - The Savvy-gnon Team

Microsoft Programming in HTML5 with JavaScript and CSS3

Nodes Tech Slides - Progressive Web Apps, 2018

Assignment: Seminole Movie Connection

2/6/2012. Rich Internet Applications. What is Ajax? Defining AJAX. Asynchronous JavaScript and XML Term coined in 2005 by Jesse James Garrett

Module 5 JavaScript, AJAX, and jquery. Module 5. Module 5 Contains 2 components

1 Introduction. 2 Web Architecture

Client-side Debugging. Gary Bettencourt

Full Stack Web Developer

WebApp development. Outline. Web app structure. HTML basics. 1. Fundamentals of a web app / website. Tiberiu Vilcu

Term Paper. P r o f. D r. E d u a r d H e i n d l. H o c h s c h u l e F u r t w a n g e n U n i v e r s i t y. P r e s e n t e d T o :

Using Development Tools to Examine Webpages

With Dreamweaver CS4, Adobe has radically

A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group

Web Application with AJAX. Kateb, Faris; Ahmed, Mohammed; Alzahrani, Omar. University of Colorado, Colorado Springs

Lesson 14 SOA with REST (Part I)

Making Ajax Easy With Model-Glue. Joe Rinehart Firemoss, LLC

55191: Advanced SharePoint Development

CSCI 6312 Advanced Internet Programming

Module 5 JavaScript, AJAX, and jquery. Module 5. Module 5 Contains an Individual and Group component

CS50 Quiz Review. November 13, 2017

Learn Web Development CodersTrust Polska course outline. Hello CodersTrust! Unit 1. HTML Structuring the Web Prerequisites Learning pathway.

CENG 256 Internet Programming Draft

CS Homework 12

Web 2.0 Käyttöliittymätekniikat

Simple AngularJS thanks to Best Practices

THE PRAGMATIC INTRO TO REACT. Clayton Anderson thebhwgroup.com WEB AND MOBILE APP DEVELOPMENT AUSTIN, TX

Master Project Software Engineering: Team-based Development WS 2010/11

AJAX and PHP AJAX. Christian Wenz,

JavaScript: the Big Picture

This course is designed for web developers that want to learn HTML5, CSS3, JavaScript and jquery.

Full Stack boot camp

Contents. Demos folder: Demos\14-Ajax. 1. Overview of Ajax. 2. Using Ajax directly. 3. jquery and Ajax. 4. Consuming RESTful services

Participation Status Report STUDIO ELEMENTS I KATE SOHNG

AJAX: Introduction CISC 282 November 27, 2018

CS Final Exam Review Suggestions - Spring 2018

AJAX: From the Client-side with JavaScript, Back to the Server

Full Stack Web Developer

ThingLink User Guide. Andy Chen Eric Ouyang Giovanni Tenorio Ashton Yon

GeneJax: A Prototype CAD tool in support of Genome Refactoring. Ishan Anand June 7, 2006

AJAX. Lab. de Bases de Dados e Aplicações Web MIEIC, FEUP 2010/11. Sérgio Nunes

20480C: Programming in HTML5 with JavaScript and CSS3. Course Code: 20480C; Duration: 5 days; Instructor-led. JavaScript code.

Introduction to Dreamweaver CS4:

Interactive XML Visualization - using XSLT 2.0 on the Browser. Phil Fearon - Saxonica

Programming in HTML5 with JavaScript and CSS3

Basics of Web Technologies

Sections and Articles

Overview. Principal Product Manager Oracle JDeveloper & Oracle ADF

Introduction. Part I: jquery API 1. Chapter 1: Introduction to jquery 3

Module7: AJAX. Click, wait, and refresh user interaction. Synchronous request/response communication model. Page-driven: Workflow is based on pages

CIS 408 Internet Computing (3-0-3)

GRITS AJAX & GWT. Trey Roby. GRITS 5/14/09 Roby - 1

CIW: Advanced HTML5 and CSS3 Specialist. Course Outline. CIW: Advanced HTML5 and CSS3 Specialist. ( Add-On ) 16 Sep 2018

UNIT-II : VIRTUALIZATION & COMMON STANDARDS IN CLOUD COMPUTING

Etanova Enterprise Solutions

Fall Semester (081) Module7: AJAX

Jquery Manually Set Checkbox Checked Or Not

Jquery Ajax Json Php Mysql Data Entry Example

MS_ Programming in HTML5 with JavaScript and CSS3.

GOING MOBILE: Setting The Scene for RTOs.

Transcription:

AJAX Workshop Karen A. Coombs University of Houston Libraries Jason A. Clark Montana State University Libraries

Outline 1. What you re in for 2. What s AJAX? 3. Why AJAX? 4. Look at some AJAX examples 5. AJAX for Libraries 6. Walkthrough sample AJAX application

What you re in for A discussion about an emerging web application framework An introduction to the essential elements of AJAX How does AJAX fit into libraries? Walkthrough the code of a working AJAX application

What is AJAX? Asynchronous Javascript and XML Not all AJAX apps involve XML Combination of technologies XHTML, CSS, DOM XML, XSLT, XMLHttp, JavaScript Some server scripting language A method for building more responsive and interactive applications

AJAX Components XHTML and CSS Ajax applies these familiar Web standards for styling the look and feel of a page and to markup those areas on a page that will be targeted for data updates. DOM (document object model) Ajax uses the DOM to manipulate dynamic page views for data and to walkthrough documents to cherrypick data. The DOM enables certain pieces of an Ajax page to be transformed and updated with data. XML, JSON (Javascript Object Notation), HTML, or plain text Ajax can use any of these standards to provide structure to the data it passes to and from a page. XMLHttpRequest object The heavy lifter for Ajax: It s a javascript object embedded in most modern browsers that sets up data request/response pipelines between client and server. Javascript Lightweight programming language that Ajax uses for instructions to bind all of the components together.

Why AJAX? Want to make your applications more interactive Want to incorporate data from external Web Services Don t want your users to have to download a plugin

Client vs. Server Scripting Client scripting Web browser does all the work Server Scripting Web server does all the work AJAX leverages both client and server side scripting

How AJAX Works

AJAX Web Interaction What you don t see Data reload happens in the background JavaScript queries the server to get the proper data without you knowing it Page updates without a screen reload

Potential Problems Javascript MUST be enabled Back button doesn t always work Pages can be difficult to bookmark Search engines may not be able to index all portions of an AJAX site Cross browser differences in how XML is dealt with

AJAX and Accessibility AJAX done correctly can help with accessibility issues Dynamic content such as Tabs Smart Forms Use href and onclick in conjunction to deal with Javascript being disabled

Some AJAX examples Google Calendar Flickr del.icio.us LibraryThing Backpack

Basic AJAX Components Server-side Component Communicates with the database, or web service Can be written in any server-side language (PHP, ASP, Coldfusion, etc) Client-side Component Written in Javascript, often uses XMLHttp Accesses the server side page in the background

Hidden Frame Method Communication with server takes place in a frame that user can t see Back and Forward buttons still work If something goes wrong user receives no notification Becoming rare to see used with development of AJAX libraries

XMLHttp Method Code is cleaner and easier to read Able to determine if there is a failure No browser history, Back and Forward buttons break

AJAX Script Libraries You could choose to write AJAX code from scratch Or you can use a script library faster, more consistent, better code Prototype jquery Ext JS script.aculo.us

Potential Uses for AJAX Error checking in Forms AutoSuggest Drag and Drop objects functionality Dynamically move view around on image or map Preload content you want to show later Apply limits to search results and get new results quickly

AJAX for Libraries Browsing subject headings Pre-displaying indexes and databases categories Complex ILL or contact forms Federated Search OPAC and digital library interfaces

AJAX - Library Use Cases SingleSearch - Curtain University Library (http://apps. library.curtin.edu.au/singlesearch/search.cgi) Content Panes - TERRA: The Nature of Our World Montana State University Libraries (http://lifeonterra.com) Guesstimate - Virginia Tech Libraries (http://addison.vt. edu)

Code Samples and Downloads People @ the Library (XML) http://www.lib.montana.edu/~jason/files/ajax/list/ Yahoo! News Search @ the Library (JSON) http://www.lib.montana.edu/~jason/files/ajax/search/ Contact the Library (Feedback and Validation) http://www.lib.montana.edu/~jason/files/ajax/validate/ People @ the Library (HTML and Feedback) http://www.lib.montana.edu/~jason/files/ajax/show/

AJAX Sample Applications PageInsert - WorldCat Form BrowseSearch - LOC Subject Headings Download PageInsert code at http://www.lib.montana. edu/~jason/files.php Download BrowseSearch code at http://shelf.lib.montana. edu/~jason/files/ajax/browsesearch/

AJAX and APIs Data available on the web for libraries to access via APIs LibraryThing API Google Books Availability API WorldCat API Google and Yahoo Maps

AJAX and APIs Examples TAMU Geologic Atlas of the United States - http: //repository.tamu.edu/handle/1969.1/2490 Plymouth State University Lampson Library Catalog - http://library.plymouth.edu/read/184908 National Library of Australia Library Labs - http: //ll01.nla.gov.au/search.jsp?searchterm=enigma

Studying AJAX in the Wild TERRA: The Nature of Our World Tabbed Environment Comments Ratings Pros and Cons - page views, instant feedback, web stats can be problematic

Studying AJAX in the Wild UH Libraries CMS staff only interface ability to seamlessly edited multiple parts of the screen can control what browser people use No other way to create this type of interface for updating content old interface klunky and frustrating for staff

Final thoughts What s Next? That s AJAX and AJAX applications in a nutshell. Consider AJAX advantages and disadvantages Fundamentals of method are there Keep practicing and learning

Contact Information Karen Coombs University of Houston Libraries Web Services Librarian kacoombs@uh.edu http://librarywebchic.net/ 713-743-3713 Jason A. Clark Montana State University Libraries Head of Digital Access and Web Services jaclark@montana.edu www.jasonclark.info 406-994-6801