src/cm/media/js/lib/yui/yui_3.10.3/docs/node/node-insert.html
author Yves-Marie Haussonne <ymh.work+github@gmail.com>
Fri, 09 May 2014 18:35:26 +0200
changeset 656 a84519031134
parent 525 89ef5ed3c48b
permissions -rw-r--r--
add link to "privacy policy" in the header test
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
525
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     1
<!DOCTYPE html>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     2
<html lang="en">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     3
<head>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     4
    <meta charset="utf-8">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     5
    <title>Example: Adding Node Content - Burger Builder</title>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     6
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=PT+Sans:400,700,400italic,700italic">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     7
    <link rel="stylesheet" href="../../build/cssgrids/cssgrids-min.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     8
    <link rel="stylesheet" href="../assets/css/main.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     9
    <link rel="stylesheet" href="../assets/vendor/prettify/prettify-min.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    10
    <link rel="shortcut icon" type="image/png" href="../assets/favicon.png">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    11
    <script src="../../build/yui/yui-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    12
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    13
</head>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    14
<body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    15
<!--
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    16
<a href="https://github.com/yui/yui3"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub"></a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    17
-->
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    18
<div id="doc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    19
    <div id="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    20
        <h1><img src="http://yuilibrary.com/img/yui-logo.png"></h1>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    21
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    22
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    23
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    24
            <h1>Example: Adding Node Content - Burger Builder</h1>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    25
    <div class="yui3-g">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    26
        <div class="yui3-u-3-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    27
            <div id="main">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    28
                <div class="content"><div class="intro">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    29
    <p>This example demonstrates how to insert content when working with <code>NodeList</code> instances.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
    <p>Click buttons to build your burger.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
<div class="example">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
<style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
.example .demo, .example .buttons-list{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
    width: 302px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
    display: inline-block;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
    zoom: 1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
    *display: inline;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
    margin: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
    padding: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
    vertical-align: top;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
    text-align: center;        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
.example .buttons-list{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
    list-style: none;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
    text-align: left;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
    margin-left: 100px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
    width: auto;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
    height: 21em;    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
.example .buttons-list .yui3-button {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
    margin-bottom: 0.5em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
.example .buttons-list .ketchup{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
    margin-bottom: 1em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
.example .buttons-list .another{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
    display: none;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
.example .demo li {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
    position: relative;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
    list-style: none;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
    height: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
    width: 302px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
    opacity: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
    margin: 0 0 0 -800px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
    cursor: no-drop;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
    font-size: 1px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
.example .demo li img {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
    position: absolute;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
    top: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
    left: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    75
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    76
.example .demo .bun-top, .example .demo .bun-bottom{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
    opacity: 1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
    height: 106px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
    margin: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
</style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
    <ul class="demo">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
        <li class="bun-top"><img src="../assets/node/images/burg_bun_top.png" width="271" height="106" alt="Burger bun top"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
        <li class="bun-bottom"><img src="../assets/node/images/burg_bun_bottom.png" width="291" height="115" alt="Burger bun bottom"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
    </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
    <ul class="buttons-list">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
        <li><button class='yui3-button patty'> Patty &#183; Before Last Bun</button></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
        <li><button class='yui3-button lettuce'> Lettuce &#183; Before Last Bun</button></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
        <li><button class='yui3-button cheese' disabled="disabled"> Cheese &#183; Before First Patty</button></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
        <li><button class='yui3-button tomato'> Tomato &#183; After First Bun</button></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
        <li><button class='yui3-button onions'> Onions &#183; After First Bun</button></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
        <li><button class='yui3-button pickles'> Pickles &#183; After First Bun</button></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
        <li><button class='yui3-button ketchup'> Ketchup &#183; After First Bun</button></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
        <li><button class='yui3-button done'> Done</button></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
        <li><button class='yui3-button another'> Another Please</button></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
    </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
YUI().use('node', 'cssbutton', 'transition', 'UA', function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
    var demo = Y.one('.demo'),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
        btnList = Y.all('.buttons-list .yui3-button'),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
        i = 0,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
        objList,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
        myZIndex,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
        imgPath = '../assets/node/images/';
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
    if (Y.UA.ie && Y.UA.ie < 7) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
        // Add a prefix to the image file name in the imgPath.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   109
        // This is needed to work around IE6 non-support of alpha pngs
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   110
        imgPath = imgPath + '8bit_';
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   111
        Y.one('.example .demo .bun-top img').setAttribute('src', imgPath + 'burg_bun_top.png');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
        Y.one('.example .demo .bun-bottom img').setAttribute('src', imgPath + 'burg_bun_bottom.png');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
    // This smoothes out the visual experience of adding
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
    // an element to the burger
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
    var transitionObject = function (obj) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
        obj.transition({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
            duration: 0.8,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
            // height grows from initial 0, to height of contained image
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
            height: obj.one('img').getStyle('height'),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
            marginLeft: '0px', // transition into place from offscreen left.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
            opacity: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   125
                delay: 0.2,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   126
                duration: 0.5,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   127
                value: 1
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   128
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   129
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   130
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
    // This removes an element of the burger
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
    // the height transitions to 0, it moves left, and fades out
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
    var removeObject = function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
        e.currentTarget.transition({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
            duration: 0.8,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
            height: 0,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
            marginLeft: '-400px',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
            opacity: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
                delay: 0.2,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
                duration: 0.5,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
                value: 0
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
            // after the transition finishes...
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
            function(){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
                e.currentTarget.remove(); // remove the clicked item from the DOM
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
                // If there's no patty in the burger
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
                if (Y.one('.example .demo').getHTML().indexOf('patty') === -1) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
                    // Disable the cheese button
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
                    // Cheese is inserted before first patty.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
                    // The cheese button will be enabled when there's a patty
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
                    Y.one('.buttons-list .cheese')._node.disabled = true;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
    // This inserts burger parts and manages the display of buttons
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
    var buttonClicks = function (e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
        var obj;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
        if (this.hasClass('patty')) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
            // Create a node with an image of the burger part
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   164
            obj = Y.Node.create('<li class="patty"><img src="' + imgPath + 'burg_patty.png" width="268" height="75" alt="Burger patty"/></li>');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   165
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   166
            // Insert it before the bottom bun
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
            demo.insert(obj, Y.one('.bun-bottom'));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   168
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   169
            // Smooth out insert with transition
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   170
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   171
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   172
            // Cheese button becomes available 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   173
            // only when there's a patty to insert before
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   174
            Y.one('.buttons-list .cheese')._node.disabled = false; 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   175
        } else if (this.hasClass('lettuce')) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   176
            obj = Y.Node.create('<li class="lettuce"><img src="' + imgPath + 'burg_lettuce.png" width="302" height="87" alt="Lettuce"/></li>');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   177
            demo.insert(obj, Y.one('.bun-bottom'));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   178
            transitionObject(obj);        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   179
        } else if (this.hasClass('cheese')) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   180
            obj = Y.Node.create('<li class="cheese"><img src="' + imgPath + 'burg_cheese.png" width="274" height="89" alt="Cheese"/></li>');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   181
            demo.insert(obj, Y.one('.patty'));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   182
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   183
        } else if (this.hasClass('ketchup')) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   184
            obj = Y.Node.create('<li class="ketchup"><img src="' + imgPath + 'burg_ketchup.png" width="208" height="66" alt="Ketchup"/></li>');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   185
            Y.one('.bun-top').insert(obj, 'after');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   186
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   187
        } else if (this.hasClass('pickles')) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   188
            obj = Y.Node.create('<li class="pickles"><img src="' + imgPath + 'burg_pickles.png" width="236" height="61" alt="Pickles"/></li>');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   189
            Y.one('.bun-top').insert(obj, 'after');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   190
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   191
        } else if (this.hasClass('onions')) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   192
            obj = Y.Node.create('<li class="onions"><img src="' + imgPath + 'burg_onions.png" width="248" height="77" alt="Onions"/></li>');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   193
            Y.one('.bun-top').insert(obj, 'after');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   194
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   195
        } else if (this.hasClass('tomato')) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   196
            obj = Y.Node.create('<li class="tomato"><img src="' + imgPath + 'burg_tomato.png" width="225" height="68" alt="Tomato slice"/></li>');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   197
            Y.one('.bun-top').insert(obj, 'after');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   198
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   199
        } else if (this.hasClass('done')) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   200
            objList = Y.all('.demo li');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   201
            myZIndex = objList.size();  // for resetting z-index of burger parts
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   202
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   203
            // Hide all the buttons when done
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   204
            btnList.setStyle('display', 'none');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   205
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   206
            // Show the "Another Please" button
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   207
            Y.one('.buttons-list .another').setStyle('display', 'block');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   208
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   209
            // The normal z-index of <li>s in a <ul> results in the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   210
            // bottom of the bun picture being on top
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   211
            // The z-index of the burger elements must be reversed.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   212
            for (i = 0; i < objList.size(); i += 1) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   213
                objList.item(i).setStyle('zIndex', myZIndex);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   214
                myZIndex -= 1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   215
                objList.item(i).setStyle('position', 'relative');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   216
                // transition the height of the elements proportionally smaller
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   217
                // so you could get your mouth around it
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   218
                objList.item(i).transition({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   219
                    duration: 0.5,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   220
                    height: parseInt(objList.item(i).one('img').getStyle('height'), 10) * 0.15 + 'px'
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   221
                });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   222
            }    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   223
        } else if (this.hasClass('another')) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   224
            // Empty out the content of the burger image
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   225
            demo.setContent('');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   226
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   227
            // Insert just the buns
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   228
            demo.append('<li class="bun-top"><img src="' + imgPath + 'burg_bun_top.png" width="271" height="106" alt="Burger bun top"/></li>');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   229
            demo.append('<li class="bun-bottom"><img src="' + imgPath + 'burg_bun_bottom.png" width="291" height="115" alt="Burger bun bottom"/></li>');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   230
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   231
            // Disable the cheese button
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   232
            // Cheese is inserted before first patty.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   233
            // The cheese button will be enabled when there's a patty
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   234
            Y.one('.buttons-list .cheese')._node.disabled = true;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   235
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   236
            // Display all the buttons except the "Another Please"
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   237
            btnList.setStyle('display', 'block');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   238
            Y.one('.buttons-list .another').setStyle('display', 'none');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   239
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   240
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   241
    Y.on('click', buttonClicks, '.example .buttons-list .yui3-button');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   242
    Y.one('.example .demo').delegate('click', removeObject, 'li');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   243
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   244
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   245
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   246
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   247
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   248
<h2>Setting up the NodeList</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   249
<p>First we need some HTML to work with.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   250
<pre class="code prettyprint">&lt;ul class=&quot;demo&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   251
    &lt;li class=&quot;bun-top&quot;&gt;&lt;img src=&quot;assets&#x2F;images&#x2F;bun_top.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   252
    &lt;li class=&quot;bun-bottom&quot;&gt;&lt;img src=&quot;assets&#x2F;images&#x2F;bun_bottom.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   253
&lt;&#x2F;ul&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   254
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   255
<p>Next we'll add some buttons to be clicked.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   256
<pre class="code prettyprint">&lt;ul class=&quot;buttons-list&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   257
    &lt;li&gt;&lt;button class=&#x27;yui3-button patty&#x27;&gt; Patty &amp;#183; Before Last Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   258
    &lt;li&gt;&lt;button class=&#x27;yui3-button lettuce&#x27;&gt; Lettuce &amp;#183; Before Last Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   259
    &lt;li&gt;&lt;button class=&#x27;yui3-button cheese&#x27; disabled=&quot;disabled&quot;&gt; Cheese &amp;#183; Before First Patty&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   260
    &lt;li&gt;&lt;button class=&#x27;yui3-button tomato&#x27;&gt; Tomato &amp;#183; After First Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   261
    &lt;li&gt;&lt;button class=&#x27;yui3-button onions&#x27;&gt; Onions &amp;#183; After First Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   262
    &lt;li&gt;&lt;button class=&#x27;yui3-button pickles&#x27;&gt; Pickles &amp;#183; After First Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   263
    &lt;li&gt;&lt;button class=&#x27;yui3-button ketchup&#x27;&gt; Ketchup &amp;#183; After First Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   264
    &lt;li&gt;&lt;button class=&#x27;yui3-button done&#x27;&gt; Done&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   265
    &lt;li&gt;&lt;button class=&#x27;yui3-button another&#x27;&gt; Another Please&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   266
&lt;&#x2F;ul&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   267
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   268
<h2>Adding Content</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   269
<p>After defining some <code>var</code>s, we'll
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   270
add a <code>buttonClicks</code> handler to run when an event is fired.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   271
It will add content to the <code>demo</code> node.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   272
<p>Note that the <code>this</code> in the handler is the object that was clicked.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   273
<pre class="code prettyprint">var demo = Y.one(&#x27;.demo&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   274
    btnList = Y.all(&#x27;.buttons-list .yui3-button&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   275
    ...;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   276
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   277
    &#x2F;&#x2F; This inserts burger parts and manages the display of buttons
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   278
    var buttonClicks = function (e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   279
        var obj;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   280
        if (this.hasClass(&#x27;patty&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   281
            &#x2F;&#x2F; Create a node with an image of the burger part
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   282
            obj = Y.Node.create(&#x27;&lt;li class=&quot;patty&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_patty.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   283
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   284
            &#x2F;&#x2F; Insert it before the bottom bun
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   285
            demo.insert(obj, Y.one(&#x27;.bun-bottom&#x27;));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   286
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   287
            &#x2F;&#x2F; ...
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   288
        } else if &#x2F;&#x2F; other buttons follow...</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   289
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   290
<p>The handler inserts different objects into the <code>demo</code> container object 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   291
in different places based on these methods:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   292
<ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   293
    <li><code>prepend</code> - as firstChild</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   294
    <li><code>append</code> - as lastChild</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   295
    <li><code>insert</code> - before a specified node or childNode index</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   296
</ul> 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   297
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   298
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   299
<h2>Attaching Events</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   300
<p>We assign our handler to all of the <code>yui3-button</code> objects through
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   301
event subscription to the matching selector.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   302
<pre class="code prettyprint">Y.on(&#x27;click&#x27;, buttonClicks, &#x27;.example .buttons-list .yui3-button&#x27;);</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   303
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   304
<h2>Transitions</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   305
<p>When an event handler simply inserts an object, it appears instantly, and
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   306
other DOM objects are rendered in their new locations, which
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   307
can be a visually jarring experience.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   308
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   309
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   310
In this example, we've added a <code>transitionObject</code> function to smooth things out.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   311
Inserted burger elements have an initial CSS <code>height</code> of 0.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   312
After each insertion, we call the <code>transitionObject</code> function,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   313
passing the inserted object. It begins growing to a height equal to the image
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   314
it contains (the images are different heights). This gradually pushes open a space
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   315
for itself, while it moves in from offscreen left, and fades in.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   316
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   317
<pre class="code prettyprint">var transitionObject = function (obj) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   318
    obj.transition({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   319
        duration: 0.8,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   320
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   321
        &#x2F;&#x2F; height grows from initial 0, to height of contained image
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   322
        height: obj.one(&#x27;img&#x27;).getStyle(&#x27;height&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   323
        marginLeft: &#x27;0px&#x27;, &#x2F;&#x2F; transition into place from offscreen left.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   324
        opacity: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   325
            delay: 0.2,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   326
            duration: 0.5,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   327
            value: 1
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   328
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   329
    });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   330
}</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   331
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   332
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   333
Here's more code in the <code>buttonClicks</code> handler where we call <code>transitionObject</code>,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   334
and do some special handling for the cheese button state.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   335
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   336
<pre class="code prettyprint">&#x2F;&#x2F; This inserts burger parts and manages the display of buttons
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   337
var buttonClicks = function (e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   338
    var obj;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   339
    if (this.hasClass(&#x27;patty&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   340
        &#x2F;&#x2F; Create a node with an image of the burger part
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   341
        obj = Y.Node.create(&#x27;&lt;li class=&quot;patty&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_patty.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   342
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   343
        &#x2F;&#x2F; Insert it before the bottom bun
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   344
        demo.insert(obj, Y.one(&#x27;.bun-bottom&#x27;));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   345
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   346
        &#x2F;&#x2F; Smooth out insert with transition
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   347
        transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   348
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   349
        &#x2F;&#x2F; Cheese button becomes available
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   350
        &#x2F;&#x2F; only when there&#x27;s a patty to insert before
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   351
        Y.one(&#x27;.buttons-list .cheese&#x27;)._node.disabled = false;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   352
    } else if &#x2F;&#x2F; other buttons follow...</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   353
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   354
<h2>Complete Example Source</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   355
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   356
In the complete source you'll see we also added handling for:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   357
<ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   358
<li>Removing elements from the burger</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   359
<li>Clicking the Done button to vertically compress the burger</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   360
<li>Requesting another</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   361
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   362
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   363
<pre class="code prettyprint">&lt;style&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   364
.example .demo, .example .buttons-list{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   365
    width: 302px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   366
    display: inline-block;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   367
    zoom: 1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   368
    *display: inline;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   369
    margin: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   370
    padding: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   371
    vertical-align: top;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   372
    text-align: center;        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   373
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   374
.example .buttons-list{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   375
    list-style: none;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   376
    text-align: left;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   377
    margin-left: 100px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   378
    width: auto;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   379
    height: 21em;    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   380
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   381
.example .buttons-list .yui3-button {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   382
    margin-bottom: 0.5em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   383
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   384
.example .buttons-list .ketchup{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   385
    margin-bottom: 1em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   386
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   387
.example .buttons-list .another{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   388
    display: none;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   389
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   390
.example .demo li {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   391
    position: relative;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   392
    list-style: none;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   393
    height: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   394
    width: 302px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   395
    opacity: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   396
    margin: 0 0 0 -800px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   397
    cursor: no-drop;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   398
    font-size: 1px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   399
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   400
.example .demo li img {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   401
    position: absolute;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   402
    top: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   403
    left: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   404
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   405
.example .demo .bun-top, .example .demo .bun-bottom{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   406
    opacity: 1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   407
    height: 106px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   408
    margin: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   409
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   410
&lt;&#x2F;style&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   411
    &lt;ul class=&quot;demo&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   412
        &lt;li class=&quot;bun-top&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;node&#x2F;images&#x2F;burg_bun_top.png&quot; width=&quot;271&quot; height=&quot;106&quot; alt=&quot;Burger bun top&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   413
        &lt;li class=&quot;bun-bottom&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;node&#x2F;images&#x2F;burg_bun_bottom.png&quot; width=&quot;291&quot; height=&quot;115&quot; alt=&quot;Burger bun bottom&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   414
    &lt;&#x2F;ul&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   415
    &lt;ul class=&quot;buttons-list&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   416
        &lt;li&gt;&lt;button class=&#x27;yui3-button patty&#x27;&gt; Patty &amp;#183; Before Last Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   417
        &lt;li&gt;&lt;button class=&#x27;yui3-button lettuce&#x27;&gt; Lettuce &amp;#183; Before Last Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   418
        &lt;li&gt;&lt;button class=&#x27;yui3-button cheese&#x27; disabled=&quot;disabled&quot;&gt; Cheese &amp;#183; Before First Patty&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   419
        &lt;li&gt;&lt;button class=&#x27;yui3-button tomato&#x27;&gt; Tomato &amp;#183; After First Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   420
        &lt;li&gt;&lt;button class=&#x27;yui3-button onions&#x27;&gt; Onions &amp;#183; After First Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   421
        &lt;li&gt;&lt;button class=&#x27;yui3-button pickles&#x27;&gt; Pickles &amp;#183; After First Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   422
        &lt;li&gt;&lt;button class=&#x27;yui3-button ketchup&#x27;&gt; Ketchup &amp;#183; After First Bun&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   423
        &lt;li&gt;&lt;button class=&#x27;yui3-button done&#x27;&gt; Done&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   424
        &lt;li&gt;&lt;button class=&#x27;yui3-button another&#x27;&gt; Another Please&lt;&#x2F;button&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   425
    &lt;&#x2F;ul&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   426
&lt;script&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   427
YUI().use(&#x27;node&#x27;, &#x27;cssbutton&#x27;, &#x27;transition&#x27;, &#x27;UA&#x27;, function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   428
    var demo = Y.one(&#x27;.demo&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   429
        btnList = Y.all(&#x27;.buttons-list .yui3-button&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   430
        i = 0,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   431
        objList,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   432
        myZIndex,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   433
        imgPath = &#x27;..&#x2F;assets&#x2F;node&#x2F;images&#x2F;&#x27;;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   434
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   435
    if (Y.UA.ie &amp;&amp; Y.UA.ie &lt; 7) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   436
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   437
        &#x2F;&#x2F; Add a prefix to the image file name in the imgPath.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   438
        &#x2F;&#x2F; This is needed to work around IE6 non-support of alpha pngs
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   439
        imgPath = imgPath + &#x27;8bit_&#x27;;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   440
        Y.one(&#x27;.example .demo .bun-top img&#x27;).setAttribute(&#x27;src&#x27;, imgPath + &#x27;burg_bun_top.png&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   441
        Y.one(&#x27;.example .demo .bun-bottom img&#x27;).setAttribute(&#x27;src&#x27;, imgPath + &#x27;burg_bun_bottom.png&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   442
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   443
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   444
    &#x2F;&#x2F; This smoothes out the visual experience of adding
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   445
    &#x2F;&#x2F; an element to the burger
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   446
    var transitionObject = function (obj) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   447
        obj.transition({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   448
            duration: 0.8,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   449
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   450
            &#x2F;&#x2F; height grows from initial 0, to height of contained image
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   451
            height: obj.one(&#x27;img&#x27;).getStyle(&#x27;height&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   452
            marginLeft: &#x27;0px&#x27;, &#x2F;&#x2F; transition into place from offscreen left.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   453
            opacity: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   454
                delay: 0.2,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   455
                duration: 0.5,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   456
                value: 1
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   457
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   458
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   459
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   460
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   461
    &#x2F;&#x2F; This removes an element of the burger
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   462
    &#x2F;&#x2F; the height transitions to 0, it moves left, and fades out
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   463
    var removeObject = function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   464
        e.currentTarget.transition({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   465
            duration: 0.8,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   466
            height: 0,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   467
            marginLeft: &#x27;-400px&#x27;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   468
            opacity: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   469
                delay: 0.2,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   470
                duration: 0.5,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   471
                value: 0
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   472
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   473
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   474
            &#x2F;&#x2F; after the transition finishes...
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   475
            function(){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   476
                e.currentTarget.remove(); &#x2F;&#x2F; remove the clicked item from the DOM
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   477
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   478
                &#x2F;&#x2F; If there&#x27;s no patty in the burger
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   479
                if (Y.one(&#x27;.example .demo&#x27;).getHTML().indexOf(&#x27;patty&#x27;) === -1) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   480
                    &#x2F;&#x2F; Disable the cheese button
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   481
                    &#x2F;&#x2F; Cheese is inserted before first patty.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   482
                    &#x2F;&#x2F; The cheese button will be enabled when there&#x27;s a patty
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   483
                    Y.one(&#x27;.buttons-list .cheese&#x27;)._node.disabled = true;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   484
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   485
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   486
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   487
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   488
    &#x2F;&#x2F; This inserts burger parts and manages the display of buttons
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   489
    var buttonClicks = function (e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   490
        var obj;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   491
        if (this.hasClass(&#x27;patty&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   492
            &#x2F;&#x2F; Create a node with an image of the burger part
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   493
            obj = Y.Node.create(&#x27;&lt;li class=&quot;patty&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_patty.png&quot; width=&quot;268&quot; height=&quot;75&quot; alt=&quot;Burger patty&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   494
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   495
            &#x2F;&#x2F; Insert it before the bottom bun
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   496
            demo.insert(obj, Y.one(&#x27;.bun-bottom&#x27;));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   497
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   498
            &#x2F;&#x2F; Smooth out insert with transition
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   499
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   500
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   501
            &#x2F;&#x2F; Cheese button becomes available 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   502
            &#x2F;&#x2F; only when there&#x27;s a patty to insert before
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   503
            Y.one(&#x27;.buttons-list .cheese&#x27;)._node.disabled = false; 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   504
        } else if (this.hasClass(&#x27;lettuce&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   505
            obj = Y.Node.create(&#x27;&lt;li class=&quot;lettuce&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_lettuce.png&quot; width=&quot;302&quot; height=&quot;87&quot; alt=&quot;Lettuce&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   506
            demo.insert(obj, Y.one(&#x27;.bun-bottom&#x27;));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   507
            transitionObject(obj);        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   508
        } else if (this.hasClass(&#x27;cheese&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   509
            obj = Y.Node.create(&#x27;&lt;li class=&quot;cheese&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_cheese.png&quot; width=&quot;274&quot; height=&quot;89&quot; alt=&quot;Cheese&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   510
            demo.insert(obj, Y.one(&#x27;.patty&#x27;));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   511
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   512
        } else if (this.hasClass(&#x27;ketchup&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   513
            obj = Y.Node.create(&#x27;&lt;li class=&quot;ketchup&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_ketchup.png&quot; width=&quot;208&quot; height=&quot;66&quot; alt=&quot;Ketchup&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   514
            Y.one(&#x27;.bun-top&#x27;).insert(obj, &#x27;after&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   515
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   516
        } else if (this.hasClass(&#x27;pickles&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   517
            obj = Y.Node.create(&#x27;&lt;li class=&quot;pickles&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_pickles.png&quot; width=&quot;236&quot; height=&quot;61&quot; alt=&quot;Pickles&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   518
            Y.one(&#x27;.bun-top&#x27;).insert(obj, &#x27;after&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   519
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   520
        } else if (this.hasClass(&#x27;onions&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   521
            obj = Y.Node.create(&#x27;&lt;li class=&quot;onions&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_onions.png&quot; width=&quot;248&quot; height=&quot;77&quot; alt=&quot;Onions&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   522
            Y.one(&#x27;.bun-top&#x27;).insert(obj, &#x27;after&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   523
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   524
        } else if (this.hasClass(&#x27;tomato&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   525
            obj = Y.Node.create(&#x27;&lt;li class=&quot;tomato&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_tomato.png&quot; width=&quot;225&quot; height=&quot;68&quot; alt=&quot;Tomato slice&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   526
            Y.one(&#x27;.bun-top&#x27;).insert(obj, &#x27;after&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   527
            transitionObject(obj);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   528
        } else if (this.hasClass(&#x27;done&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   529
            objList = Y.all(&#x27;.demo li&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   530
            myZIndex = objList.size();  &#x2F;&#x2F; for resetting z-index of burger parts
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   531
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   532
            &#x2F;&#x2F; Hide all the buttons when done
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   533
            btnList.setStyle(&#x27;display&#x27;, &#x27;none&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   534
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   535
            &#x2F;&#x2F; Show the &quot;Another Please&quot; button
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   536
            Y.one(&#x27;.buttons-list .another&#x27;).setStyle(&#x27;display&#x27;, &#x27;block&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   537
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   538
            &#x2F;&#x2F; The normal z-index of &lt;li&gt;s in a &lt;ul&gt; results in the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   539
            &#x2F;&#x2F; bottom of the bun picture being on top
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   540
            &#x2F;&#x2F; The z-index of the burger elements must be reversed.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   541
            for (i = 0; i &lt; objList.size(); i += 1) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   542
                objList.item(i).setStyle(&#x27;zIndex&#x27;, myZIndex);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   543
                myZIndex -= 1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   544
                objList.item(i).setStyle(&#x27;position&#x27;, &#x27;relative&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   545
                &#x2F;&#x2F; transition the height of the elements proportionally smaller
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   546
                &#x2F;&#x2F; so you could get your mouth around it
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   547
                objList.item(i).transition({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   548
                    duration: 0.5,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   549
                    height: parseInt(objList.item(i).one(&#x27;img&#x27;).getStyle(&#x27;height&#x27;), 10) * 0.15 + &#x27;px&#x27;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   550
                });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   551
            }    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   552
        } else if (this.hasClass(&#x27;another&#x27;)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   553
            &#x2F;&#x2F; Empty out the content of the burger image
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   554
            demo.setContent(&#x27;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   555
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   556
            &#x2F;&#x2F; Insert just the buns
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   557
            demo.append(&#x27;&lt;li class=&quot;bun-top&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_bun_top.png&quot; width=&quot;271&quot; height=&quot;106&quot; alt=&quot;Burger bun top&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   558
            demo.append(&#x27;&lt;li class=&quot;bun-bottom&quot;&gt;&lt;img src=&quot;&#x27; + imgPath + &#x27;burg_bun_bottom.png&quot; width=&quot;291&quot; height=&quot;115&quot; alt=&quot;Burger bun bottom&quot;&#x2F;&gt;&lt;&#x2F;li&gt;&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   559
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   560
            &#x2F;&#x2F; Disable the cheese button
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   561
            &#x2F;&#x2F; Cheese is inserted before first patty.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   562
            &#x2F;&#x2F; The cheese button will be enabled when there&#x27;s a patty
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   563
            Y.one(&#x27;.buttons-list .cheese&#x27;)._node.disabled = true;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   564
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   565
            &#x2F;&#x2F; Display all the buttons except the &quot;Another Please&quot;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   566
            btnList.setStyle(&#x27;display&#x27;, &#x27;block&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   567
            Y.one(&#x27;.buttons-list .another&#x27;).setStyle(&#x27;display&#x27;, &#x27;none&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   568
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   569
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   570
    Y.on(&#x27;click&#x27;, buttonClicks, &#x27;.example .buttons-list .yui3-button&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   571
    Y.one(&#x27;.example .demo&#x27;).delegate(&#x27;click&#x27;, removeObject, &#x27;li&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   572
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   573
&lt;&#x2F;script&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   574
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   575
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   576
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   577
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   578
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   579
        <div class="yui3-u-1-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   580
            <div class="sidebar">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   581
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   582
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   583
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   584
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   585
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   586
                            <h2 class="no-toc">Examples</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   587
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   588
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   589
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   590
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   591
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   592
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   593
                                        <li data-description="Using selectors and property accessors with Node.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   594
                                            <a href="properties.html">Set and Get Properties</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   595
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   596
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   597
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   598
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   599
                                        <li data-description="Using DOM methods with Node.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   600
                                            <a href="dom-node.html">DOM Methods</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   601
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   602
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   603
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   604
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   605
                                        <li data-description="Building a simple store and shopping cart.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   606
                                            <a href="store.html">DOM Methods - Store</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   607
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   608
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   609
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   610
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   611
                                        <li data-description="Listening for DOM events with Node instances.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   612
                                            <a href="events.html">Handling DOM Events</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   613
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   614
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   615
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   616
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   617
                                        <li data-description="NodeList provides Node functionality for manipulating multiple nodes at once.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   618
                                            <a href="nodelist.html">Using NodeList - Simple</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   619
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   620
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   621
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   622
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   623
                                        <li data-description="How to use multiple NodeList features to build a simple game.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   624
                                            <a href="ducks.html">Using NodeList - Ducks Game</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   625
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   626
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   627
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   628
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   629
                                        <li data-description="Using a single event listener to handle events on multiple nodes.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   630
                                            <a href="node-evt-delegation.html">Delegating Node Events</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   631
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   632
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   633
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   634
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   635
                                        <li data-description="This example demonstrates how to position an element in page coordinates.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   636
                                            <a href="node-xy.html">Node Positioning</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   637
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   638
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   639
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   640
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   641
                                        <li data-description="This example demonstrates how to set styles and get style information.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   642
                                            <a href="node-style.html">Node Styling</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   643
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   644
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   645
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   646
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   647
                                        <li data-description="This example demonstrates how to insert content into a Node.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   648
                                            <a href="node-insert.html">Adding Node Content - Burger Builder</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   649
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   650
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   651
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   652
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   653
                                        <li data-description="This example demonstrates how to show and hide a Node.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   654
                                            <a href="node-view.html">Showing and Hiding</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   655
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   656
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   657
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   658
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   659
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   660
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   661
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   662
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   663
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   664
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   665
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   666
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   667
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   668
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   669
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   670
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   671
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   672
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   673
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   674
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   675
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   676
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   677
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   678
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   679
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   680
                            <h2 class="no-toc">Examples That Use This Component</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   681
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   682
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   683
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   684
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   685
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   686
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   687
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   688
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   689
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   690
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   691
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   692
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   693
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   694
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   695
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   696
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   697
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   698
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   699
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   700
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   701
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   702
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   703
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   704
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   705
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   706
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   707
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   708
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   709
                                        <li data-description="Creating an accessible toolbar using the Focus Manager Node Plugin and Node&#x27;s support for the WAI-ARIA Roles and States.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   710
                                            <a href="../node-focusmanager/node-focusmanager-toolbar.html">Accessible Toolbar</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   711
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   712
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   713
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   714
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   715
                                        <li data-description="Creating an accessible menu button using the Focus Manager Node Plugin, Event&#x27;s delegation support and mouseenter event, along with the Overlay widget and Node&#x27;s support for the WAI-ARIA Roles and States.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   716
                                            <a href="../node-focusmanager/node-focusmanager-button.html">Accessible Menu Button</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   717
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   718
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   719
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   720
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   721
                                        <li data-description="Use the Event Utility to attach simple DOM event handlers.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   722
                                            <a href="../event/basic-example.html">Simple DOM Events</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   723
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   724
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   725
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   726
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   727
                                        <li data-description="Example Photo Browser application.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   728
                                            <a href="../dd/photo-browser.html">Photo Browser</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   729
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   730
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   731
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   732
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   733
                                        <li data-description="Portal style example using Drag &amp; Drop Event Bubbling and Animation.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   734
                                            <a href="../dd/portal-drag.html">Portal Style Example</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   735
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   736
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   737
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   738
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   739
                                        <li data-description="Use IO to request XML data from a remote web service.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   740
                                            <a href="../io/weather.html">Request XML data from Yahoo! Weather</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   741
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   742
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   743
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   744
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   745
                                        <li data-description="Use IO to make a cross-domain request to Yahoo! Pipes, returning data from disparate sources.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   746
                                            <a href="../io/xdr.html">Request JSON using Yahoo! Pipes</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   747
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   748
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   749
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   750
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   751
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   752
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   753
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   754
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   755
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   756
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   757
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   758
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   759
<script src="../assets/vendor/prettify/prettify-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   760
<script>prettyPrint();</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   761
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   762
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   763
YUI.Env.Tests = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   764
    examples: [],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   765
    project: '../assets',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   766
    assets: '../assets/node',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   767
    name: 'node-insert',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   768
    title: 'Adding Node Content - Burger Builder',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   769
    newWindow: '',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   770
    auto:  false 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   771
};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   772
YUI.Env.Tests.examples.push('properties');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   773
YUI.Env.Tests.examples.push('dom-node');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   774
YUI.Env.Tests.examples.push('store');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   775
YUI.Env.Tests.examples.push('events');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   776
YUI.Env.Tests.examples.push('nodelist');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   777
YUI.Env.Tests.examples.push('ducks');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   778
YUI.Env.Tests.examples.push('node-evt-delegation');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   779
YUI.Env.Tests.examples.push('node-xy');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   780
YUI.Env.Tests.examples.push('node-style');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   781
YUI.Env.Tests.examples.push('node-insert');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   782
YUI.Env.Tests.examples.push('node-view');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   783
YUI.Env.Tests.examples.push('node-focusmanager-toolbar');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   784
YUI.Env.Tests.examples.push('node-focusmanager-button');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   785
YUI.Env.Tests.examples.push('basic-example');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   786
YUI.Env.Tests.examples.push('photo-browser');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   787
YUI.Env.Tests.examples.push('portal-drag');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   788
YUI.Env.Tests.examples.push('weather');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   789
YUI.Env.Tests.examples.push('xdr');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   790
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   791
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   792
<script src="../assets/yui/test-runner.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   793
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   794
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   795
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   796
</body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   797
</html>