Learning the Yahoo! User Interface library

Dan Wellman

eBook: $26.99
Formats: PDF, PacktLib, ePub and Mobi formats
$16.19 save 40%!
Print book: $44.99
$40.49 save 10%!
Print + eBook bundle: $71.98
Includes free access to the book on PacktLib
$44.54 save 38%!
Free Shipping! UK, US, Europe and selected countries in Asia.
This book can also be purchased from:
Overview
Table of Contents
The Author
Reviews
Downloads
  • Improve your coding and productivity with the YUI Library
  • Gain a thorough understanding of the YUI tools
  • Learn from detailed examples for common tasks

Book Details

Language : English
Paperback : 380 pages [ 235mm x 191mm ]
Release Date : March 2008
ISBN : 1847192327
ISBN 13 : 978-1-847192-32-5
Author(s) : Dan Wellman
Topics and Technologies : All Books, AJAX, Open Source, Web Development


Table of Contents

Preface
Chapter 1: Introducing the YUI
Chapter 2: Creating Consistency With The CSS Tools
Chapter 3: DOM Manipulation and Event Handling
Chapter 4: AJAX and Connection Manager
Chapter 5: Animation and the Browser History Manager
Chapter 6: Buttons and Trees
Chapter 7: Navigation and AutoComplete
Chapter 8: Content Containers and Tabs
Chapter 9: Drag-and-Drop with the YUI
Chapter 10: Advanced Debugging with Logger
Index
  • Chapter 1: Introducing the YUI
    • What is the YUI?
      • Who Is It for and Who Will It Benefit the Most?
      • Why the Yahoo! User Interface Library?
      • Graded Browser Support
    • What Comes with the YUI?
      • The Library Topography
      • The Core Files
      • The Utilities
      • The Controls
      • The CSS Tools
      • The Library's Structure
      • What Else Does Yahoo! Provide?
      • Are There Any Licensing Restrictions?
    • Installing the YUI
      • Creating an Offline Library Repository
    • Using the Library Files in Your Own Web Pages
    • Code Placement
    • Perfect Date Selection with the Calendar Control
      • The Basic Calendar Class
      • The CalendarGroup Class
    • Implementing a Calendar
      • The Initial HTML Page
      • Beginning the Scripting
      • Highly Eventful
      • The DateMath Class
    • Summary
  • Chapter 2: Creating Consistency With The CSS Tools
    • Tools of the Trade
    • Element Normalisation with reset.css
      • Element Rules
    • First Base
      • Headings
      • Lists
      • Tables
      • Miscellaneous Rules
    • Tidying up Text with fonts.css
      • The Body
      • Tables
    • Layout Pages with Ease Using grids.css
      • Setting up Your Page Structure
      • The Basic Building Blocks of Your Pages
      • Grid Nesting
    • A Word on Sam
    • Summary
  • Chapter 3: DOM Manipulation and Event Handling
    • Working with the DOM
      • DOM Concepts
    • Common DOM Scripting Techniques
      • Common DOM Methods
      • Further Reading
      • DOM—the Old Way
      • DOM—the YUI Way
    • DOM Manipulation in YUI
      • Many DOMs Make Light Work
      • The DOM Class
      • Using the DOM Class
      • Additional Useful DOM Methods
      • The Region Class
      • I See Your Point
    • Listening for Events the Easy (YUI) Way
    • Event Models
      • Event History
      • W3C Events
      • The Event Object
    • YUI Event Capturing
      • Evolving Event Handlers
      • Reacting When Appropriate
    • A Look at the Event Class
      • Listeners
    • Custom Events
      • The Custom Event Class
    • Creating a Custom Event
    • Summary
  • Chapter 4: AJAX and Connection Manager
    • The Connection Manager—A Special Introduction
    • The XMLHttpRequest Object Interface
    • A Closer Look at the Response Object
    • Managing the Response with a Callback Object
    • Working with responseXML
      • Adding the JavaScript
      • Styling the Newsreader
    • Useful Connection Methods
    • A Login System Fronted by YUI
    • Summary
  • Chapter 5: Animation and the Browser History Manager
    • Introducing the Animation Utility
      • The Class Structure of the Animation Utility
      • The Animation Constructor
      • Animation's Properties
      • Custom Animation Events
      • The Subclasses
      • Additional Classes
      • Members of the Easing Class
    • Using Animation to Create an Accordion Widget
      • A Basic Animation Script
      • Dealing With Motion
      • Curvature
    • Restoring the Browser's Expected Functionality
      • The BHM Class
    • Using BHM
      • The BHM Script
    • Summary
  • Chapter 6: Buttons and Trees
    • Why Use the YUI Button Family?
    • Meet the Button Control
      • YAHOO.widget.Button
      • YAHOO.widget.ButtonGroup
    • Using the Button Control
      • Creating the YUI Button Objects
      • Additional Button Types
    • Using the Split Button Type
      • Getting Started
      • Scripting the Split Button
    • Tree-like Structures with the TreeView Control
    • Class of Nine
      • YAHOO.widget.TreeView
      • YAHOO.widget.Node
      • YAHOO.widget.TextNode
      • YAHOO.widget.HTMLNode
      • YAHOO.widget.RootNode
      • YAHOO.widget.MenuNode
      • The Animation Classes
    • Implementing a Tree
      • Begin the Scripting
      • Creating the Tree Nodes
      • Drawing the Tree On-Screen
      • Using Custom Icons
      • Applying the Icon Styles
      • Dynamic Nodes—Making the Library Work Harder
    • Summary
  • Chapter 7: Navigation and AutoComplete
    • Common Navigation Structures
    • Instant Menus—Just Add Water (or a Menu Control)
    • The Menu Classes
      • Menu Subclasses
      • The MenuItem Class
      • MenuItem Subclasses
    • Creating a Basic Navigation Menu
      • The Initial HTML Page
      • The Underlying Menu Mark Up
      • Creating the Menu Object
      • Styling the Page
    • Using the ContextMenu
      • ContextMenu Scripting
      • Wiring Up the Backend
    • The Application-style MenuBar
    • Look Ahead with the AutoComplete Control
      • AutoComplete Components
      • The Constructors
      • Custom Styling and Visual Impact
      • A Rich Event Portfolio
    • Implementing AutoComplete
      • Adding Bling to Your AutoComplete
    • Working With Other DataSources
      • Bring on the Data
      • Now for Some PHP
    • Summary
  • Chapter 8: Content Containers and Tabs
    • Meet the YUI Container Family
      • Module
      • Overlay
      • Panel
      • Tooltip
      • Dialog
      • SimpleDialog
      • Container Effects
      • OverlayManager
    • Creating a Panel
      • Preparation
      • The New Code
    • Working with Dialogs
      • Preparation
      • Additional Library files
      • Changes to the HTML
      • Some Additional CSS
      • Dialog's Required JavaScript
      • Extending the Dialog
      • The PHP Needed by Dialog
    • A Quick SimpleDialog
      • Additonal JavaScript for SimpleDialog
    • Easy Tooltips
      • Preparation
      • Overriding Sam
    • The YUI TabView Control
      • TabView Classes
      • Properties, Methods, and Events
    • Adding Tabs
      • The Underlying Mark Up
      • The JavaScript Needed by TabView
      • A Little CSS
    • Summary
  • Chapter 9: Drag-and-Drop with the YUI
    • Dynamic Drag-and-Drop without the Hassle
    • The Different Components of Drag-and-Drop
      • Design Considerations
      • Events
      • Allowing Your Visitors to Drag-and-Drop
    • DragDrop Classes
      • The Constructor
      • Target Practice
      • Get a Handle on Things
      • The Drag-and-Drop Manager
      • Interaction Modes
    • Implementing Drag-and-Drop
      • The Required CSS
      • Scripting DragDrop
      • Creating Individual Drag Objects
      • Using DragDrop Events
      • Additional CSS
      • Extending the DDProxy Object
    • Visual Selection with the Slider Control
      • The Constructor and Factory Methods
      • Class of Two
    • A Very Simple Slider
      • Getting Started
      • Adding the CSS
      • Adding the JavaScript
    • Summary
  • Chapter 10: Advanced Debugging with Logger
    • The Purpose of Logger
    • The Purpose of the –debug Library Files
    • How the Logger Can Help You
      • Debugging the Old Way
      • Debugging the YUI Way
      • Log Message Types
      • Logger Layout
      • Logger Styling
      • Logger is not Omnipotent or Infallible!
    • The Logger Classes
      • LogMsg Structure
      • Generate the UI Interface with LogReader
      • The LogWriter Class
    • How to Use Logger
    • Component Debugging with Logger
    • Logging with a Custom Class
    • Summary

Dan Wellman

Dan Wellman lives with his wife and three children in his home town of Southampton on the south coast of England. By day his mild-mannered alter-ego works for a small yet accomplished e-commerce production agency. By night he battles the forces of darkness and fights for truth, justice, and less intrusive JavaScript. He has been writing computer-related articles, tutorials, and reviews for around five years and is rarely very far from a keyboard of some description. This is his fourth book.

Sample chapters

You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

Find your book in our support section to find errata and to download code samples.

What you will learn from this book

  • Explore the YUI Library—utilities, controls, core files, and CSS tools
  • Install the library and get up and running with it
  • Handle DOM manipulation and scripting
  • Get inside Event Handling with YUI
  • Create consistent web pages using YUI CSS tools
  • Work with Containers—implementation, skinning, adding transitions, and tabs
  • Debug, maintain, and update applications with the Logger control
  • Examples included in the book:
  •     Calendar interface
  •     Autocomplete
  •     Creating panels
  •     Dialogs
  •     Custom tooltips
  •     Forms
  •     Split button
  •     TreeView Control
  •     Browser History Manager with Calendar
  •     Simple animation
  •     Custom animation
  •     Creating tabs and adding content dynamically
  •     Dragging and dropping
  •     Implementing sliders
  •     Logger at work
  •     Logging custom classes

Special Offers

PacktLib gives you access to this and 600+ other titles with an annual or monthly subscription.

Annual subscription:

$220.00 per annum

Monthly subscription:

$21.99 per month

Buy 2 eBooks
and Get 50% Off
+
Buy Learning the Yahoo! User Interface library with Yahoo! User Interface Library 2.x Cookbook and get 50% off both the eBooks.
Just add both the eBooks to your shopping cart and enter yui2ebk in the 'Enter Promotion Code' field. Click 'Add Promotion Code' and the discount will be applied.
View Best Selling eBook offers

In Detail

The Yahoo! User Interface (YUI) Library is a set of utilities and controls, written in JavaScript, for building richly interactive web applications using techniques such as DOM scripting, DHTML, and AJAX. The YUI Library also includes several core CSS resources. All components in the YUI Library have been released as open source under a BSD license and are free for all uses.

This book covers all released components whether utility, control, core file, or CSS tool.  Methods of the YAHOO Global Object are used and discussed throughout the book.
The basics of each control will be presented, along with a detailed example showing its use to create complex, fully featured, cross-browser, Web 2.0 user interfaces.

Besides giving you a deep understand of the YUI library, this book will expand your knowledge of object-oriented JavaScript programming, as well as strengthen your understanding of the DOM and CSS.

You will learn to create a number of powerful JavaScript controls that can be used straight away in your own applications.

Learning the Yahoo! User Interface Library introduces the popular open-source YUI JavaScript library and takes the user through each of the fully released components in detail looking at the classes that make up each component and the properties and methods that can be used. It includes a series of practical examples to reinforce how each component should/can be used.  Author Dan Wellman takes the reader from beginner to advanced-level YUI usage and understanding.

Approach

The book is a tutorial, leading the reader first through the basics of the YUI library before moving on to more complex examples involving the YUI controls and utilities. The book is heavily example driven, and based around an approach of tinkering and extending to improve.

Who this book is for

This book is for web developers comfortable with JavaScript and CSS, who want to use the YUI library to easily put together rich, responsive web interfaces. No knowledge of the YUI library is presumed.

Are there no books available that are right for you at the moment? How about signing up to our newsletter to keep up to date?
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Resources
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Sort A-Z