Web Programming: Crazy stuff with HTML 5, Neat!!

Dynamic Content Injection with HTML5 Canvas and Video

Paul Rouget and Tristan Nitot are having a lot of obvious fun with Canvas and <video> these days. The latest goodness is a demo by Paul that shows real-time dynamic content injection.

Notice the Firefox logo in between the two phones with bright screens? That is injected into the world thanks to Canvas.

How did Paul do this? He told us:

Obviously, I use the <video/> tag.
But what you see is not the video element (display: none;), but a
<canvas/> tag.
All the patterns you see on the top right are regular <img/>,
<video/> and <canvas/> elements. The play/pause button is
<svg/> element
(position: absolute;) on the top of the main <canvas/> element.

A canvas element provides a method named drawImage which let you
inject the content of a DOM element in the canvas (like a screenshot). It works
with three kinds of elements: <img/>, <canvas/> and
<video/>.

When you click on the <svg/> button, the Javascript code launches the
main video. Then, the main javascript loop is executed each 10
milliseconds.

Here are key things that occur during the main loop:

  • first, the content of the video is injected in the main canvas. That’s why
    the canvas element looks like a video element;
  • second, the position of the 2 brighter areas of the canvas are computed
    (you have access to all pixels values);
  • third, the required transformation is computed (rotation, scale,
    translation);
  • fourth, the content of the selected pattern is injected in the main canvas
    following the transformation.

A little drawing:

Check out the demo in a bleeding edge Firefox browser, or watch the video:

Crazy cool stuff 🙂

Related infos:

Demo Support Technology
Two videos playing in sync ie: nonefirefox: liveopera: livesafari: livechrome: live video
Interactive canvas gradients ie: nonefirefox: liveopera: livesafari: livechrome: live canvas
Canvas & Video ie: nonefirefox: liveopera: livesafari: livechrome: live video canvas
Video ie: nonefirefox: liveopera: livesafari: livechrome: live video
Canvas ie: nonefirefox: liveopera: livesafari: livechrome: live canvas
Content Editable ie: livefirefox: liveopera: livesafari: livechrome: live contenteditable storage
Geolocation Works on Safari Mobile too ie: nonefirefox: liveopera: nonesafari: nonechrome: nightly geolocation
postMessage same domain ie: livefirefox: liveopera: livesafari: livechrome: live postMessage
postMessage cross domain ie: livefirefox: liveopera: livesafari: livechrome: live postMessage
drag and drop ie: livefirefox: liveopera: nonesafari: livechrome: live dnd
drag anything ie: livefirefox: liveopera: nonesafari: livechrome: live dnd
offline detection Works on Safari Mobile too ie: nonefirefox: liveopera: livesafari: nonechrome: none offline events
navigator.onLine tests Doesn’t use events, only polls ie: livefirefox: liveopera: livesafari: nonechrome: none offline
on/offline event tests ie: nonefirefox: liveopera: livesafari: nonechrome: none offline events
offline application using the manifest FF 3.6 is still buggy – doesn’t request manifest after initial load ie: nonefirefox: liveopera: nonesafari: livechrome: live offline manifest
Storage ie: livefirefox: liveopera: livesafari: livechrome: live storage
Web SQL Database Storage ie: nonefirefox: noneopera: livesafari: livechrome: live sql-database
Web SQL Database – rollback test ie: nonefirefox: noneopera: livesafari: livechrome: live sql-database
Web Workers watch out – uses a lot of CPU!example without – will hang your browser ie: nonefirefox: liveopera: nonesafari: livechrome: live workers

All content, code, video and audio is Creative Commons Share Alike 2.0

source: html5demos.com

  1. Canvas: Drawing Board (Tested in FF 3.01+, Safari 4.0b, Opera 9.62, Chrome 2.0)
  2. Canvas: 1st-Person Gifter (Tested in FF 3.01+, Safari 4.0b, Opera 9.62, Chrome 2.0)
  3. Canvas: Bespin (Tested in FF 3.01+, Safari 4.0b, Chrome 2.0)
  4. Video: Basic Player (Tested in FF 3.5b4+, Opera 9.62 [w/out CSS rotate])
  5. Video: YouTube (Tested in Safari 4.0b; pls wait while page loads)
  6. Geolocation: Google Maps (Tested in FF 3.5b4+)
  7. Geolocation: Google Latitude (Tested in iPhone 3.0)
  8. DB and App Cache: Stickies (Tested in Safari 4.0b)
  9. DB and App Cache: Gmail for mobile (Tested in iPhone 2.2.1+, Android 1.1+)
  10. Workers: Bad Primes (Tested in FF 3.5b4+, Safari 4.0b)
  11. Workers: Good Primes (Tested in FF 3.5b4+, Safari 4.0b)
  12. Workers: Motion Tracker (Tested in FF 3.1b3, FF Nightly)

source: htmlfive.appspot.com

Demo: http://9elements.com/io/projects/html5/canvas/

Web Programming: HTML 5

HTML5 is being developed as the next major revision of HTML (HyperText Markup Language), the core markup language of the World Wide Web. HTML5 is the proposed next standard for HTML 4.01, XHTML 1.0 and DOM Level 2 HTML. It aims to reduce the need for proprietary plug-in-based rich internet application (RIA) technologies such as Adobe FlashMicrosoft Silverlight, and Sun JavaFX.

Markup

HTML5 introduces a number of new elements and attributes that reflect typical usage on modernWeb sites. Some of them are semantic replacements for common uses of generic block (<div>) and inline (<span>) elements, for example <nav> (website navigation block) and <footer>(usually refer to bottom of web page or to last lines of html code). Other elements provide new functionality through a standardized interface, such as the <audio> and <video>[9] elements.[10]

Some deprecated elements from HTML 4.01 have been dropped, including purely presentational elements such as <font> and <center>, whose effects are achieved using Cascading Style Sheets. There is also a renewed emphasis on the importance of DOM scripting (e.g., JavaScript) in Web behavior.

The HTML5 syntax is no longer based on SGML despite the similarity of its markup. It has, however, been designed to be backward compatible with common parsing of older versions of HTML. It comes with a new introductory line that looks like an SGML document type declaration,<!DOCTYPE html>, which enables standards-compliant rendering in all browsers that use “DOCTYPE sniffing”.

HTML5 also incorporates Web Forms 2.0, another WHATWG specification.

HTML5 also introduces a new way of presenting multimedia with such tags as (<audio>) and (<video>) as a beginning to standardize the mark up of such content. Although these are new and very useful tags, their use in browsing technologies is still minimal.

New APIs

In addition to specifying markup, HTML5 specifies scripting application programming interfaces(APIs).[11] Existing document object model (DOM) interfaces are extended and de facto features documented. There are also new APIs, such as:

Some of the new features are part of HTML5 mainly because there are no volunteers to split HTML5 and maintain separate specifications of these features.[12]

Differences from HTML 4.01 and XHTML 1.x

The following is a cursory list of differences and some specific examples.

  • New parsing rules: oriented towards flexible parsing and compatibility; not based on SGML
  • Ability to use inline SVG and MathML in text/html
  • New elementsarticleasideaudiocanvascommanddatalistdetailsembed,figcaptionfigurefooterheaderhgroupkeygenmarkmeternavoutput,progressrprtrubysectionsourcesummarytimevideo
  • New types of form controls: dates and times, emailurlsearch
  • New attributesping (on a and area), charset (on meta), async (on script)
  • Global attributes (that can be applied for every element): idtabindexhiddendata-* (custom data attributes)
  • Forms will get support for PUT and DELETE methods too instead of just GET and POST (see Representational State Transfer for use cases)
  • Deprecated elements will be dropped altogether: acronymappletbasefontbigcenterdirfontframeframeset,isindexnoframessstrikettu

dev.w3.org providers the latest Editors Draft (lasted dated 10 March 2010) of HTML5 differences from HTML4[13] which provides complete outline of additions, removals and changes between HTML5.

Error handling

An HTML5 (text/html) browser will be flexible in handling incorrect syntax. HTML5 is designed so that old browsers can safely ignore new HTML5 constructs. In contrast to HTML 4.01, the HTML5 specification gives detailed rules for lexing and parsing, with the intent that different compliant browsers will produce the same result in the case of incorrect syntax.[14] However, although this means HTML5 now defines a consistent behavior for “tag soup” documents, this does not mean that those documents are regarded as conforming to the HTML5 standard.[14]

Peer to Peer connections

  • HTML5 [15][16][17][18][19] is designed to handle connections between users (or visitors), with PeerToPeerConnection(), and also withwebsocket. This technology is a direct competitor to the new flash peer to peer technology ([flash stratus])[20][21]. This technology will eliminate bandwidth, cpu and memory costs on all servers.

source:en.wikipedia.org

On January 22nd, 2008, W3C published a working draft for HTML 5.

HTML 5 improves interoperability, and reduces development costs, by making precise rules on how to handle all HTML elements, and how to recover from errors.

Some of the new features in HTML 5 are functions for embedding audio, video, graphics, client-side data storage, and interactive documents.

HTML 5 also contains new elements like <nav>, <header>, <footer>, and <figure>.

The HTML 5 working group includes AOL, Apple, Google, IBM, Microsoft, Mozilla, Nokia, Opera, and many hundred other vendors.

Note: HTML 5 is not a W3C recommendation yet!

Ordered Alphabetically

New : New tags in HTML 5.

Tag Description
<!–…–> Defines a comment
<!DOCTYPE> Defines the document type
<a> Defines a hyperlink
<abbr> Defines an abbreviation
<acronym> Not supported in HTML 5.
<address> Defines an address element
<applet> Not supported in HTML 5.
<area> Defines an area inside an image map
<article>New Defines an article
<aside>New Defines content aside from the page content
<audio>New Defines sound content
<b> Defines bold text
<base> Defines a base URL for all the links in a page
<basefont> Not supported in HTML 5.
<bdo> Defines the direction of text display
<big> Not supported in HTML 5.
<blockquote> Defines a long quotation
<body> Defines the body element
<br> Inserts a single line break
<button> Defines a push button
<canvas>New Defines graphics
<caption> Defines a table caption
<center> Not supported in HTML 5.
<cite> Defines a citation
<code> Defines computer code text
<col> Defines attributes for table columns
<colgroup> Defines groups of table columns
<command>New Defines a command button
<datalist>New Defines a dropdown list
<dd> Defines a definition description
<del> Defines deleted text
<details>New Defines details of an element
<dfn> Defines a definition term
<dir> Not supported in HTML 5.
<div> Defines a section in a document
<dl> Defines a definition list
<dt> Defines a definition term
<em> Defines emphasized text
New Defines external interactive content or plugin
<fieldset> Defines a fieldset
<figcaption>New Defines the caption of a figure element
<figure>New Defines a group of media content, and their caption
<font> Not supported in HTML 5.
<footer>New Defines a footer for a section or page
<form> Defines a form
<frame> Not supported in HTML 5.
<frameset> Not supported in HTML 5.
<h1> to <h6> Defines header 1 to header 6
<head> Defines information about the document
<header>New Defines a header for a section or page
<hgroup>New Defines information about a section in a document
<hr> Defines a horizontal rule
<html> Defines an html document
<i> Defines italic text
<iframe> Defines an inline sub window (frame)
<img> Defines an image
<input> Defines an input field
<ins> Defines inserted text
<keygen>New Defines a generated key in a form
<kbd> Defines keyboard text
<label> Defines a label for a form control
<legend> Defines a title in a fieldset
<li> Defines a list item
<link> Defines a resource reference
<map> Defines an image map
<mark>New Defines marked text
<menu> Defines a menu list
<meta> Defines meta information
<meter>New Defines measurement within a predefined range
<nav>New Defines navigation links
<noframes> Not supported in HTML 5.
<noscript> Defines a noscript section
<object> Defines an embedded object
<ol> Defines an ordered list
<optgroup> Defines an option group
<option> Defines an option in a drop-down list
<output>New Defines some types of output
<p> Defines a paragraph
<param> Defines a parameter for an object
<pre> Defines preformatted text
<progress>New Defines progress of a task of any kind
<q> Defines a short quotation
<rp>New Used in ruby annotations to define what to show browsers that to not support the ruby element.
<rt>New Defines explanation to ruby annotations.
<ruby>New Defines ruby annotations.
<s> Not supported in HTML 5.
<samp> Defines sample computer code
<script> Defines a script
<section>New Defines a section
<select> Defines a selectable list
<small> Defines small text
<source>New Defines media resources
<span> Defines a section in a document
<strike> Not supported in HTML 5.
<strong> Defines strong text
<style> Defines a style definition
<sub> Defines subscripted text
<summary>New Defines the header of a “detail” element
<sup> Defines superscripted text
<table> Defines a table
<tbody> Defines a table body
<td> Defines a table cell
<textarea> Defines a text area
<tfoot> Defines a table footer
<th> Defines a table header
<thead> Defines a table header
<time>New Defines a date/time
<title> Defines the document title
<tr> Defines a table row
<tt> Not supported in HTML 5.
<u> Not supported in HTML 5.
<ul> Defines an unordered list
<var> Defines a variable
<video>New Defines a video
<xmp> Not supported in HTML 5.

The attributes listed below are supported by all HTML 5 tags, with a few exceptions.


HTML 5 Standard Attributes

New : New standard attributes in HTML 5.

Attribute Value Description
accesskey character Specifies a keyboard shortcut to access an element.
class classname Specifies a classname for an element (used to specify a class in a style sheet).
contenteditableNew true
false
Specifies if the user is allowed to edit the content or not.
contextmenuNew menu_id Specifies the context menu for an element.
data-yourvalueNew value Author defined attributes. Authors of a HTML document can define their own attributes. Must start with “data-“.
dir ltr
rtl
Specifies the text direction for the content in an element.
draggableNew true
false
auto
Specifies whether or not a user is allowed to drag an element.
hiddenNew hidden Specifies that the element is not relevant. Hidden elements are not displayed.
id id Specifies a unique id for an element.
itemNew empty
url
Used to group elements.
itempropNew url
group value
Used to group items.
lang language_code Specifies a language code for the content in an element. Language code reference
spellcheckNew true
false
Specifies if the element must have it’s spelling or grammar checked.
style style_definition Specifies an inline style for an element.
subjectNew id Specifies the element’s corresponding item.
tabindex number Specifies the tab order of an element.
title text Specifies extra information about an element.

Standard Event Attributes

HTML 4 added the ability to let events trigger actions in a browser, like starting a JavaScript when a user clicks on an element.

To learn more about programming events, please visit our JavaScript tutorial and our DHTML tutorial.

Below are the standard event attributes that can be inserted into HTML 5 elements to define event actions.

New : New event attributes in HTML 5.


Window Event Attributes

Events triggered for the window object.

Applies to the <body> tag:

Attribute Value Description
onafterprintNew script Script to be run after the document is printed
onbeforeprintNew script Script to be run before the document is printed
onbeforeonloadNew script Script to be run before the document loads
onblur script Script to be run when the window loses focus
onerrorNew script Script to be run when an error occur
onfocus script Script to be run when the window gets focus
onhaschangeNew script Script to be run when the document has change
onload script Script to be run when the document loads
onmessageNew script Script to be run when the message is triggered
onofflineNew script Script to be run when the document goes offline
ononlineNew script Script to be run when the document comes online
onpagehideNew script Script to be run when the window is hidden
onpageshowNew script Script to be run when the window becomes visible
onpopstateNew script Script to be run when the window’s history changes
onredoNew script Script to be run when the document performs a redo
onresizeNew script Script to be run when the window is resized
onstorageNew script Script to be run when a document loads
onundoNew script Script to be run when a document performs an undo
onunloadNew script Script to be run when the user leaves the document

Form Events

Events triggered by actions inside a HTML form.

Applies to all HTML 5 elements, but is most common in form elements:

Attribute Value Description
onblur script Script to be run when an element loses focus
onchange script Script to be run when an element changes
oncontextmenuNew script Script to be run when a context menu is triggered
onfocus script Script to be run when an element gets focus
onformchangeNew script Script to be run when a form changes
onforminputNew script Script to be run when a form gets user input
oninputNew script Script to be run when an element gets user input
oninvalidNew script Script to be run when an element is invalid
onreset script Script to be run when a form is reset
Not supported in HTML 5
onselect script Script to be run when an element is selected
onsubmit script Script to be run when a form is submitted

Keybord Events

Events triggered by a keyboard.

Applies to all HTML 5 elements.

Attribute Value Description
onkeydown script Script to be run when a key is pressed
onkeypress script Script to be run when a key is pressed and released
onkeyup script Script to be run when a key is released

Mouse Events

Events triggered by a mouse, or similar user actions:

Applies to all HTML 5 elements.

Attribute Value Description
onclick script Script to be run on a mouse click
ondblclick script Script to be run on a mouse double-click
ondragNew script Script to be run when an element is dragged
ondragendNew script Script to be run at the end of a drag operation
ondragenterNew script Script to be run when an element has been dragged to a valid drop target
ondragleaveNew script Script to be run when an element leaves a valid drop target
ondragoverNew script Script to be run when an element is being dragged over a valid drop target
ondragstartNew script Script to be run at the start of a drag operation
ondropNew script Script to be run when dragged element is being dropped
onmousedown script Script to be run when a mouse button is pressed
onmousemove script Script to be run when the mouse pointer moves
onmouseout script Script to be run when the mouse pointer moves out of an element
onmouseover script Script to be run when the mouse pointer moves over an element
onmouseup script Script to be run when a mouse button is released
onmousewheelNew script Script to be run when the mouse wheel is being rotated
onscrollNew script Script to be run when an element’s scrollbar is being scrolled

Media Events

Events triggered by medias like videos, images and audio.

Applies to all HTML 5 elements, but is most common in media elements, such as audio, embed, img, object, and video:

Attribute Value Description
onabort script Script to be run on an abort event
oncanplayNew script Script to be run when media can start play, but might has to stop for buffering
oncanplaythroughNew script Script to be run when media can be played to the end, without stopping for buffering
ondurationchangeNew script Script to be run when the length of the media is changed
onemptiedNew script Script to be run when a media resource element suddenly becomes empty (network errors, errors on load etc.)
onendedNew script Script to be run when media has reach the end
onerrorNew script Script to be run when an error occurs during the loading of an element
onloadeddataNew script Script to be run when media data is loaded
onloadedmetadataNew script Script to be run when the duration and other media data of a media element is loaded
onloadstartNew script Script to be run when the browser starts to load the media data
onpauseNew script Script to be run when media data is paused
onplayNew script Script to be run when media data is going to start playing
onplayingNew script Script to be run when media data has start playing
onprogressNew script Script to be run when the browser is fetching the media data
onratechangeNew script Script to be run when the media data’s playing rate has changed
onreadystatechangeNew script Script to be run when the ready-state changes
onseekedNew script Script to be run when a media element’s seeking attribute is no longer true, and the seeking has ended
onseekingNew script Script to be run when a media element’s seeking attribute is true, and the seeking has begun
onstalledNew script Script to be run when there is an error in fetching media data (stalled)
onsuspendNew script Script to be run when the browser has been fetching media data, but stopped before the entire media file was fetched
ontimeupdateNew script Script to be run when media changes its playing position
onvolumechangeNew script Script to be run when media changes the volume, also when volume is set to “mute”
onwaitingNew script Script to be run when media has stopped playing, but is expected to resume

Source: w3schools.com

Web Programming: 70+ Ajax techniques you just can’t afford to miss

In this article tripwire magazine present a list of more than 70 useful AJAX-based techniques and tools you should always be aware of when developing Ajax-based web-applications. The article gives you instant access to Ajax menus, calendars, interactive elements, animation, basic javascripts, visual effects, auto-completion, instant field editing that you browse quickly without looking through endless search results or bookmarks.

Asynchronous JavaScript and XML or Ajax is not a technology or a programming language as some may think. Ajax is a combination of well known and proven web technologies that used togehter in the right way can improve the responsiveness and user experience of web applications significantly. With Ajax every user action that normally would generate an HTTP request for a new page on the server takes the form of a JavaScript call to the Ajax engine instead. Any response to a user action that doesn’t require a trip back to the server — such as simple data validation, editing data in memory, and even some navigation — the engine handles on its own. Further when information is needed the Ajax engine requests only the information needed saving the load time of a full web page.

Ajax incorporates:

  • Presentation using XHTML and CSS;
  • Dynamic display and interaction using the Document Object Model;
  • Data interchange and manipulation using XML and XSLT;
  • Asynchronous data retrieval using XMLHttpRequest;
  • JavaScript binding everything together.

Since Ajax came out we have seen that web-developers can create amazing web-applications with it. Web-applications like NetvibesGMail and many others a level of interactivity and responsiveness that we never thought possible. Modern web-applications can be designed with enhanced user interfaces and functionalities, which used to be the privelege of professional desktop-applications.

Section 1: What is a Joomla Template and how to use it

Section 1: Ajax Pop-up Windows

Section 2: On Screen Editng

Section 3: Dynamic Content

Section 4: Ajax Menus

Section 5: Ajax Auto Completers

Section 6: Chat and Shouting

Section 7: Grids

Section 8: Ajax Calendars

Section 9: Dialog Boxes

Section 10: Ajax Spell Checkers

Section 11: Ajax Polls

Section 12: Activity Indicators

Ajax Pop-up Windows

Lightwindow

LightWindow is similiar to the other “lightbox style” scripts. It allows you to put more or less ANYTHING in the pop-up window. Quite powerful.

lightwindow

GreyBox

GreyBox can be used to display websites, images and other content in a beautiful way.

  • It does not conflict with pop-up blockers
  • It’s only 22 KB!
  • It’s super easy to setup
  • It’s super easy to use
  • You can easily alter the style as it is controlled through CSS

GreyBox

Interstitial Content Box

An interstitial is a container that appears over an entire webpage intermittently to display content in an eye catching way. A common example is an interstitial ad, though advertising is certainly just one of many handy uses of an interstitial.

Interstitial Content Box

SmoothGallery

Using mootools v1.11, this javascript gallery and slideshow system allows you to have simple and smooth (cross-fading…) image galleries, slideshows, showcases and other cool stuff on your website

SmoothGallery

On Screen Editng

AJAX inline text edit 2.0

A small piece of javascript reads al SPAN tags, checks if it has class=“editText” and a id=. If that is true, it adds a onclick function. That onclick function will create a textfield or input (depending on the size of the editable text). Someone has the ability to edit the field. When the text field is blurred, it will read the contents, and starts a XMLHttpRequest and ‘sends’ the content + fieldname + any set vars to an update file. That file will update your database, and reply with the newly set text and the textfield will dissapear again.

AJAX instant edit script

Create flickr-like Editing Fields

  1. Show user the data field normally (for instance: the title of a picture)
  2. When mouse rolls over that title, make the background of the word yellow
  3. If the user clicks on the word, change that word to a input box with the word in it. Also show a “save” and “cancel” button
  4. A user can rename the picture and then push “save.”
  5. Run a little script that updates the name into the database
  6. Remove the input box and the buttons and return to the original title display (updated with new title).

Create flickr-like Editing Fields

Dynamic Content

Ajax tooltip

A nice tooltip script where the content of the tooltip is retrieved by Ajax from external files.

Ajax tooltip

s3Slider jQuery plugin

Very good looking image slider. It is very easy. First include the jQuery library then include the s3Slider javascript in the head of the page(s) where you want to use s3Slider.

s3Slider jQuery plugin

Advanced RSS Ticker

RSS is a popular format for syndicating and displaying external content on your site, such as the latest headlines from popular news sites. With this powerful RSS ticker script, you can now easily display any RSS content on your site in a ticker fashion!

Advanced RSS Ticker

Pausing RSS scroller

Pausing RSS scroller is an innovative scroller that combines PHP and external JavaScript to let you show any RSS feed on your site- and beyond! By bypassing Ajax in favour of dynamically loaded JavaScript, the scroller can be included on any site, enabling you to syndicate your feed for other sites to display, just by allowing webmasters to cut and paste the frontend portion of this script.

Pausing RSS scroller

Ajax XML Ticker

This is an Ajax enhanced ticker script that lets you use a text file as the contents of the ticker to show! Easily define your messages, which support rich HTML, all inside this external text file. Now there’s no more excuse to not update the contents of your ticker more often! Note that due to Ajax limitations, the ticker script and text file to draw from need to be on the same domain/server.

Ajax XML Ticker

“Slide in” RSS items

This scripts reads RSS feeds from an

external source and displays them on your page. Each items appears after a predefined number of seconds by sliding in from the right side.

Slide in RSS items

Dynamically loaded articles

This is a basic example showing you how to use AJAX. In this

script, you have a list of article titles at the right side. When you click on one of them, AJAX will be used to request the content of the article from an

external file and show it in the main <DIV>.

Dynamically loaded articles

Static list based folder tree

This is a list based folder tree. What you have to do is to create a <UL><LI> list. The

script will then create the tree based on this list. The

script uses cookies to remember state of nodes. It also includes functions for expanding/collapsing all nodes.

folder_tree_static

Dragable Boxes

Create very flexible and useful draggable content boxes.

dragable-boxes

Iframe SSI script

Want to dynamically include the contents of another page onto the current without resorting to server side means (ie: server side includes)? This script uses the IFRAME tag, and by automatically resizing it based on the actual height of the containing page, allows you to seamlessly display external content on your page. In other words, the iframe is automatically resized to be only as tall as the external page’s height.

Iframe SSI script

Combo-Box Viewer

Looking for a “contractible” way to display content on your page that’s easy to implement as well? The Combo-box Viewer script allows users to selectively view HTML content on your page via the SELECT menu.

Combo-Box Viewer

Ajax directory Manager

Are you fed up with that lame old directory manager your hosting company provided you with for you website or blog? If you are already familiar with windows or mac file browsers, why should you have to change the way you work for the web? Try Relay for a change.

Ajax directory Manager

Ajaxed Link checker

Nice script to check if a set of links are valied.

TestingLinks

Ajax Navigation, Menus, Tabs

MooTabs

MooTabs is a tiny(3kb) class for MooTools. As the name suggests, it’s main purpose is to help out with the creation of simple tab navigation.

MooTabs

Ajax Tabs Content Script

This is a versatile Ajax Tabs Content script that lets you display content pulled from external files inside a DIV and organized via CSS tabs.

Ajax Tabs Content Script

Ext JS Ajax Tabs

Tabs

Virtual Pagination script

Does your page contain lengthy chunks of text, a series of images, or long forms that dissuade people from reading them top to bottom? This script lets you transform long content on your page into a series of virtual pages, browseable via pagination links.

Virtual Pagination script

Switch Content Script

One of the most versatile scripts of its kind, we created this one to compact arbitrary content on your page so they’re expandable on demand. This allows you to save space within your webpage and even add to the aesthetics of the webpage’s design in many cases.

Switch Content Script

Switch Content Script II

Switch Content Script II is a flexible script that adds contact/expand functionality to arbitrary block content on a page using a simple “icon” to toggle its state.

Switch Content Script II

19. Ajax Pagination script

This script lets you include content from multiple pages and display them on demand, using Ajax. Pagination links are automatically created, with each page downloaded only when requested

Ajax Pagination script

Mootools Accordion

MootoolsAccordion

RSS Display Boxes

Using Ajax, this script makes it easy to display RSS feeds from other sites inside DIV containers. Each RSS box can be independently tailored, from the RSS feed to fetch, how many items to show (and whether to paginate them), to what portions of each entry (just the “title”, or “title” plus “description” etc) to display. All this is done on the client side via the script’s exposed methods.

RSS Display Boxes

Ajax scrolling pages

This script loads content from the server and inserts it into an empty HTML element(example a DIV tag) on your page. New pages can be appended dynamically and the script will scroll down to the content of the new pages.

Ajax scrolling pages

Accordion

script handle both vertical and horizontal accordions, really nice!

Accordion v2.0

Accordion Content script

Group contents together and reveal them on demand when the user clicks on their associated headers, with Accordion content script! Specify whether only one content within the group should be open at any given time, style the headers depending on their content state, and even enable persistence so the state of the contents is preserved within a browser session.

Accordion Content script

Ajax Auto Completers

Dynamic client lookup

This script uses AJAX to autofill a form. Open the demo and type in 1001 in the “client ID” text field. AJAX will when you have done this call a script on the server and auto fill the rest of the form with client data.

Dynamic client lookup

AJAX autocompletion

Ajax.Autocompleter allows for server-powered autocompleting text fields. [demo]

AJAX autocompletion demo

Ajax Auto Suggest

Very flexible and professionally looking auto complete Ajax script

Ajax Auto Suggest

Ajax dynamic list

Download Ajax dynamic list

AutoCompleter (v1.1)

his AutoCompleter script for MooTools provides the functionality for text suggestion and completion. It features different data-sources (local, JSON or XML), a variety of user interactions, custom formatting, multiple selection, animations and much more.

AutoCompleter

From Tools

Really Easy Field validation

Here’s a form validation script that is very powerful and easy to use.

fValidate

High quality javascript form validation tool with good documentation and many demos

fValidate

Ajax form validation

Ajax_form_validation

wforms

wForms is an open-source, unobtrusive javascript library that adds commonly needed behaviors to traditional web forms.

wforms

AJAX contact form

Ajax_form_validation

server side jQuery with Jaxer

What we have done is created one ‘master’ form, and applied access restrictions to certain elements by ‘tagging’ them with css classes. We then used server side jQuery to manipulate the DOM and disable or completely remove unwanted elements. The DOM that the client receives, contains only the information that’s relevant to them.

server side jQuery with Jaxer

Ajax login form (PHP & Javascript)

A nice ajax login form using 3 javascript files, 2 php files and 1 stylesheet.

Ajax login form

Form Plugin

The jQuery Form Plugin allows you to easily and unobtrusively upgrade HTML forms to use AJAX. The main methods, ajaxForm and ajaxSubmit, gather information from the form element to determine how to manage the submit process. Both of these methods support numerous options which allows you to have full control over how the data is submitted.

Form Plugin

Form field Progress Bar

This script allows you to restrict the number of characters inside a form element (ie: textarea) while displaying a progress bar on the remaining characters beneath it. Very cool

Form field Progress Bar

Chat and shouting

A free PHP + Ajax shoutbox

chatbox, tagboard or mini chat

A free Ajax shoutbox

File Uploaders

JqUploader

Use AJAX and jQuery to add dynamic file upload to your site.

jqUploader


Grids

TableKit

TableKit is a collection of HTML table enhancements using the Prototype framework. TableKit currently implements row striping, column sorting, column resizing and cell editing using Ajax.

TableKit

Sortable Ajax Tables

MochiKit to do sortable tables from data given by the server in either JSON or XML format.

Sortable Ajax Tables

Unobtrusive Table Sort Script

Really nice table sort script with good documentation

unobtrusive-table-sort-script-revisited

Ext JS Grids

grids

Ajax Calendars

DHTML Week planner

This is

a nice DHTML week planner. It used Ajax to get events/appointments from the

server. This

script makes it easy for you to move, resize and edit events without having to reload the page.

DHTML Week planner

Monket Calendar

An Ajax enabled online calendar. Drag and drop events to change dates, drag the start/end of an event to create multi-day events, create and edit events without refreshing the page, all with an iCal style interface.

Monket Calendar


JS Calendar

This is a cross browser Javascript calendar

JS Calendar

A validating link calendar

A validating link calendar


Free AJAX Calendar

Free AJAX Calendar

Free Super AJAX Calendar

Free Super AJAX Calendar

MySQL Calendar

MySQL Calendar

Dialog boxes

jQuery Alert Dialogs

A list of very good looking and flexible dialog boxes.

jQuery Alert Dialogs

Ajax Spell Checkers

GoogieSpell

GoogieSpell is a spell checker that you can use in your own web-application.

GoogieSpell

Ajax Polls

6. AJAX Poll

Create an AJAX powered poll. Requires PHP and mySQL.

ajax-poller

Activity indicators

The Ajax activity indicators 34 are often used by web developers to let the users know when the Ajax application is loading.

Ajaxload.info

This is not a script but it’s a quiuseful Create easily your own ajax loader icon easily with 3 simple steps.
ajaxload

Ajax loading animated gif

A collection of reallly good looking statusindicators , free download.

Ajax loading animated gif

Activity indicators

Large collection of activity indicators to dhow your users that something is happening.

activity-indicators

More than 120 Free Ajax Activity Indicator Gif Icons

again loads of really good looking indicators that you can use for free.

Free Ajax Activity Indicator Gif Icons

Ajax Libraries

AJS

AJS is a ultra lightweight JavaScript library that is around 2 years old. It is inspired by MochiKit, but differs by being small and expressive. The current version is only 33 KB (uncompressed!), whereas MochiKit and other libraries such as JQuery, Mootools or Prototype is over/around 100 KB.

AJS

Basic Ajax Routine

Regardless of what you do using Ajax, they all rely on the same basic functions. This is a very small Ajax routine (less than 3 Kb) that enables you to easily use Ajax on your site to send “GET” or “POST” requests asynchronously.

ajaxroutine

Ajax Includes Script

This script uses Ajax (DHTML interacting with the server) to let you dynamically include the contents of an external page onto the current document.

Ajax Includes Script

Ajax Rotating Includes Script

Ajax Includes scriptto let you input a list of external pages for the script to choose and selectively include one onto the current page.

  1. Daily 1 (“dailyw”): The script will include a different file for each day of the week (Monday, Tuesday, etc).
  2. Daily 2 (“dailym”): The script will include a different file for each day of the month (1st to 31st).
  3. Random (“random”): The script will randomly pick one from the list of files to include.

Ajax Rotating Includes Script

source: http://www.tripwiremagazine.com/2009/01/70-ajax-techniques-you-just-cant-affort-to-miss.html#Ajax Menus