src/cm/media/js/lib/yui/yui_3.10.3/docs/overlay/overlay-tooltip.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: Simple Tooltip</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: Simple Tooltip</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"><style type="text/css" scoped>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    29
/* Hide overlay markup while loading, if js is enabled */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
.yui3-js-enabled .yui3-overlay-loading {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
    top:-1000em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
    left:-1000em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
    position:absolute;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
/* Example Layout CSS */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
</style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
<div class="intro">    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
    <p>This example demonstrates a lightweight and flexible setup for display
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
    of tooltips.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
    <p>This displays the tooltip adjacent to the cursor
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
    and takes advantage of the shim capabilities of <code>Overlay</code>,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
    allowing the tooltip to properly display over <code>select</code> elements in IE.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
<div class="example">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
    <style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
    .example .lists {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
        margin: 10px auto;  /*center in viewport*/
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
    .example .list {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
        -moz-padding-start: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
        -webkit-padding-start: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
        width: 300px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
        margin: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
    .example #tooltip .yui3-widget-bd{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
        text-align: left;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
        max-width: 15em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
        *width: 10em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
        background-color: #FFF6D5;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
        border: solid 1px #aa8;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
        padding: 0.2em 0.5em 0.3em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
        -moz-border-radius: 2px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
        -webkit-border-radius: 2px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
        -moz-box-shadow: 3px 3px 5px rgba(0,0,0,0.2);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
        -webkit-box-shadow: 3px 3px 5px rgba(0,0,0,0.2);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
    }
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 .list li{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
        list-style: none;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
        margin: 0 0 20px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
        border: 1px solid #C9C9C9;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
        width: 300px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
    .example .list img{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
        vertical-align: bottom;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
    .example .list .select{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
        padding: 1.5em 0 0.5em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
        text-indent: 0.5em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
        background-color: #F7DBB2;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
</style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
<body class="yui3-skin-sam">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
    <div id="tooltip"></div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
    <div class="yui3-g lists">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
        <div class="yui3-u-1-2"> <!-- see CSS Grids -->
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
            <ul class="list">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
                <li class="wrench"><img src="../assets/overlay/img/wrench.png"></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
                <li class="calipers"><img src="../assets/overlay/img/calipers.png"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
                <li class="drill"><img src="../assets/overlay/img/drill.png"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
                <li class="ohm"><img src="../assets/overlay/img/ohm.png"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
                <li class="level"><img src="../assets/overlay/img/level.png"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
        <div class="yui3-u">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   109
            <ul class="list">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   110
                <li class="endwrench"><img src="../assets/overlay/img/endwrench.png"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   111
                <li class="knife"><img src="../assets/overlay/img/knife.png"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
                <li class="scissors"><img src="../assets/overlay/img/scissors.png"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
                <li class="screwdriver"><img src="../assets/overlay/img/screwdriver.png"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
                <li class="tape"><img src="../assets/overlay/img/tape.png"/></li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
                <li class="select">Tooltips cover <select><option>select</option></select> elements in IE.</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
YUI().use('overlay', 'event', 'widget-anim', function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
    var waitingToShow = false,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   125
        // array for text to be displayed in tooltips
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   126
        tipText = [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   127
            {'name': 'wrench', 'text': "Avoid dropping on toe."},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   128
            {'name': 'calipers', 'text': 'Dial calipers: +- .001,<br>human hair .004'},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   129
            {'name': 'drill', 'text': 'Variable-speed and cordless too.'},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   130
            {'name': 'ohm', 'text': 'Never test microwaves with a volt-ohm meter.'},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
            {'name': 'level', 'text': 'Unreliable in zero gravity conditions.'},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
            {'name': 'endwrench', 'text': '11/16 box-end wrench A.K.A spanner - (British)'},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
            {'name': 'knife', 'text': 'Wants to roll off table and stick in foot.'},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
            {'name': 'scissors', 'text': "Don't run with these."},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
            {'name': 'screwdriver', 'text': 'Not intended for garden weeding.'},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
            {'name': 'tape', 'text': 'Remove before cutting.'},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
            {'name': 'select', 'text': 'Covering select'}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
        ];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
    var tooltip = new Y.Overlay({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
        srcNode: "#tooltip",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
        visible: false
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
    }).plug(Y.Plugin.WidgetAnim);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
    tooltip.anim.get('animHide').set('duration', 0.01);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
    tooltip.anim.get('animShow').set('duration', 0.3);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
    tooltip.render();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
    // handler that positions and shows the tooltip 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
    var onMousemove = function (e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
        var i;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
        if (tooltip.get('visible') === false) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
            // while it's still hidden, move the tooltip adjacent to the cursor
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
            Y.one('#tooltip').setStyle('opacity', '0');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
            tooltip.move([(e.pageX + 10), (e.pageY + 20)]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
        if (waitingToShow === false) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
            // wait half a second, then show tooltip
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
            setTimeout(function(){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
                Y.one('#tooltip').setStyle('opacity', '1');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
                tooltip.show();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
            }, 500);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
            // while waiting to show tooltip, don't let other
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   164
            // mousemoves try to show tooltip too.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   165
            waitingToShow = true;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   166
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
            // loop through the tipText array looking for a match between
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   168
            // the class name and the array literal <code>name</code>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   169
            for (i = 0; i < tipText.length; i += 1) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   170
                if (e.currentTarget.hasClass(tipText[i].name)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   171
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   172
                    // found a match, so set the content in the tooltip's body
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   173
                    tooltip.setStdModContent('body', tipText[i].text);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   174
                    break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   175
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   176
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   177
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   178
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   179
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   180
    // handler that hides the tooltip
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   181
    var onMouseleave = function (e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   182
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   183
        // this check prevents hiding the tooltip 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   184
        // when the cursor moves over the tooltip itself
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   185
        if ((e.relatedTarget) && (e.relatedTarget.hasClass('yui3-widget-bd') === false)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   186
            tooltip.hide();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   187
            waitingToShow = false;            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   188
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   189
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   190
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   191
    Y.delegate('mousemove', onMousemove, '.lists', 'li');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   192
    Y.delegate('mouseleave', onMouseleave, '.lists', 'li');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   193
    Y.one('#tooltip').on('mouseleave', onMouseleave);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   194
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   195
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   196
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   197
</body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   198
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   199
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   200
<h2>Simple Tooltips</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   201
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   202
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   203
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   204
<h3>The Tooltip Markup</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   205
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   206
<p>We just need a <code>div</code> for the tooltip, and some elements that want to
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   207
have tooltips.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   208
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   209
<pre class="code prettyprint">&lt;div id=&quot;tooltip&quot;&gt;&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   210
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   211
&lt;ul class=&quot;list&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   212
    &lt;li class=&quot;wrench&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;wrench.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   213
    &lt;li class=&quot;calipers&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;calipers.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   214
    &lt;li class=&quot;drill&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;drill.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   215
    &lt;li class=&quot;ohm&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;ohm.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   216
    &lt;li class=&quot;level&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;level.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   217
&lt;&#x2F;ul&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   218
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   219
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   220
<h3>Setting Up the YUI Instance</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   221
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   222
<p>We'll use the <code>Overlay</code> module to provide shimming for correctly covering
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   223
<code>&lt;select&gt;</code> elements in IE. We'll use <code>Event</code> for its <code>onmouseleave</code> event, and
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   224
<code>widget-anim</code> as a plugin to provide the fade-in for the tooltip.  
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   225
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   226
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   227
<pre class="code prettyprint">YUI().use(&#x27;overlay&#x27;, &#x27;event&#x27;, &#x27;widget-anim&#x27;, function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   228
    &#x2F;&#x2F; code will go here.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   229
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   230
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   231
<h3>Declare some variables</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   232
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   233
<p>These variables include an array of strings for various tooltips.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   234
If a DOM element has a class matching one of the <code>name</code> values in the <code>tipText</code> array, 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   235
it will display the corresponding text value in its tooltip when the cursor moves
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   236
over it.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   237
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   238
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   239
<pre class="code prettyprint">var waitingToShow = false,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   240
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   241
    &#x2F;&#x2F; array for text to be displayed in tooltips
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   242
    tipText = [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   243
        {&#x27;name&#x27;: &#x27;wrench&#x27;, &#x27;text&#x27;: &quot;Avoid dropping on toe.&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   244
        {&#x27;name&#x27;: &#x27;calipers&#x27;, &#x27;text&#x27;: &#x27;Dial calipers: +- .001,&lt;br&gt;human hair .004&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   245
        {&#x27;name&#x27;: &#x27;drill&#x27;, &#x27;text&#x27;: &#x27;Variable-speed and cordless too.&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   246
        {&#x27;name&#x27;: &#x27;ohm&#x27;, &#x27;text&#x27;: &#x27;Never test microwaves with a volt-ohm meter.&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   247
        {&#x27;name&#x27;: &#x27;level&#x27;, &#x27;text&#x27;: &#x27;Unreliable in zero gravity conditions.&#x27;}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   248
        &#x2F;&#x2F; the array continues...
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   249
    ];</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   250
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   251
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   252
<h3>Instantiating The Tooltip</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   253
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   254
<p>To create an overlay instance for the tooltip, 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   255
we use the overlay constructor <code>Y.Overlay</code>, specifying the source node
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   256
as the selector of the tooltip element.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   257
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   258
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   259
<pre class="code prettyprint">var tooltip = new Y.Overlay({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   260
    srcNode: &quot;#tooltip&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   261
    visible: false
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   262
}).plug(Y.Plugin.WidgetAnim);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   263
tooltip.anim.get(&#x27;animHide&#x27;).set(&#x27;duration&#x27;, 0.01);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   264
tooltip.anim.get(&#x27;animShow&#x27;).set(&#x27;duration&#x27;, 0.3);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   265
tooltip.render();</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   266
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   267
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   268
<h3>Event Handlers</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   269
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   270
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   271
Create event handlers for the mouse events 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   272
and place them above the listeners code.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   273
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   274
<pre class="code prettyprint">&#x2F;&#x2F; handler that positions and shows the tooltip 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   275
var onMousemove = function (e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   276
    var i;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   277
    if (tooltip.get(&#x27;visible&#x27;) === false) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   278
        &#x2F;&#x2F; while it&#x27;s still hidden, move the tooltip adjacent to the cursor
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   279
        Y.one(&#x27;#tooltip&#x27;).setStyle(&#x27;opacity&#x27;, &#x27;0&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   280
        tooltip.move([(e.pageX + 10), (e.pageY + 20)]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   281
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   282
    if (waitingToShow === false) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   283
        &#x2F;&#x2F; wait half a second, then show tooltip
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   284
        setTimeout(function(){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   285
            Y.one(&#x27;#tooltip&#x27;).setStyle(&#x27;opacity&#x27;, &#x27;1&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   286
            tooltip.show();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   287
        }, 500);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   288
        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   289
        &#x2F;&#x2F; while waiting to show tooltip, don&#x27;t let other
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   290
        &#x2F;&#x2F; mousemoves try to show tooltip too.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   291
        waitingToShow = true;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   292
        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   293
        &#x2F;&#x2F; loop through the tipText array looking for a match between
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   294
        &#x2F;&#x2F; the class name and the array literal &#x60;name&#x60;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   295
        for (i = 0; i &lt; tipText.length; i += 1) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   296
            if (e.currentTarget.hasClass(tipText[i].name)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   297
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   298
                &#x2F;&#x2F; found a match, so set the content in the tooltip&#x27;s body
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   299
                tooltip.setStdModContent(&#x27;body&#x27;, tipText[i].text);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   300
                break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   301
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   302
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   303
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   304
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   305
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   306
&#x2F;&#x2F; handler that hides the tooltip
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   307
var onMouseleave = function (e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   308
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   309
    &#x2F;&#x2F; this check prevents hiding the tooltip 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   310
    &#x2F;&#x2F; when the cursor moves over the tooltip itself
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   311
    if ((e.relatedTarget) &amp;&amp; (e.relatedTarget.hasClass(&#x27;yui3-widget-bd&#x27;) === false)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   312
        tooltip.hide();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   313
        waitingToShow = false;            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   314
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   315
}</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   316
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   317
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   318
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   319
<h3>Event Listeners</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   320
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   321
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   322
Add listeners for <code>mousemove</code> and <code>mouseout</code> events 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   323
to whatever elements you want to have tooltips.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   324
Using <code>mousemove</code> instead of <code>mouseover</code>, and using a <code>delay</code> in the <code>transition</code>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   325
makes the tooltip fade in adjacent to the cursor.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   326
See <a href="../event/index.html#delegation">event delegation</a> for efficient
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   327
event subscribing to multiple elements.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   328
</p>
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 class="code prettyprint">Y.delegate(&#x27;mousemove&#x27;, onMousemove, &#x27;.lists&#x27;, &#x27;li&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   331
Y.delegate(&#x27;mouseleave&#x27;, onMouseleave, &#x27;.lists&#x27;, &#x27;li&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   332
Y.one(&#x27;#tooltip&#x27;).on(&#x27;mouseleave&#x27;, onMouseleave);</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   333
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   334
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   335
This example demonstrates how you can use the existing Overlay component
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   336
to create a one-off Tooltip for your page.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   337
If you plan to re-use the Tooltip on multiple pages,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   338
or in a variety of use cases, it's a good idea to encapsulate
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   339
all the code which makes a tooltip work into a reusable Widget class.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   340
The example,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   341
<a href="../widget/widget-tooltip.html">Creating a Simple Tooltip Widget with Extensions</a>,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   342
shows how you can create a reusable, flexible Tooltip class.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   343
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   344
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   345
<h3>Complete Example Source</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   346
<pre class="code prettyprint">&lt;style&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   347
    .example .lists {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   348
        margin: 10px auto;  &#x2F;*center in viewport*&#x2F;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   349
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   350
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   351
    .example .list {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   352
        -moz-padding-start: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   353
        -webkit-padding-start: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   354
        width: 300px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   355
        margin: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   356
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   357
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   358
    .example #tooltip .yui3-widget-bd{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   359
        text-align: left;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   360
        max-width: 15em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   361
        *width: 10em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   362
        background-color: #FFF6D5;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   363
        border: solid 1px #aa8;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   364
        padding: 0.2em 0.5em 0.3em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   365
        -moz-border-radius: 2px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   366
        -webkit-border-radius: 2px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   367
        -moz-box-shadow: 3px 3px 5px rgba(0,0,0,0.2);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   368
        -webkit-box-shadow: 3px 3px 5px rgba(0,0,0,0.2);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   369
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   370
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   371
    .example .list li{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   372
        list-style: none;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   373
        margin: 0 0 20px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   374
        border: 1px solid #C9C9C9;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   375
        width: 300px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   376
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   377
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   378
    .example .list img{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   379
        vertical-align: bottom;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   380
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   381
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   382
    .example .list .select{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   383
        padding: 1.5em 0 0.5em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   384
        text-indent: 0.5em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   385
        background-color: #F7DBB2;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   386
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   387
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   388
&lt;&#x2F;style&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   389
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   390
&lt;body class=&quot;yui3-skin-sam&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   391
    &lt;div id=&quot;tooltip&quot;&gt;&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   392
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   393
    &lt;div class=&quot;yui3-g lists&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   394
        &lt;div class=&quot;yui3-u-1-2&quot;&gt; &lt;!-- see CSS Grids --&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   395
            &lt;ul class=&quot;list&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   396
                &lt;li class=&quot;wrench&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;wrench.png&quot;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   397
                &lt;li class=&quot;calipers&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;calipers.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   398
                &lt;li class=&quot;drill&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;drill.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   399
                &lt;li class=&quot;ohm&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;ohm.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   400
                &lt;li class=&quot;level&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;level.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   401
            &lt;&#x2F;ul&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   402
        &lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   403
        &lt;div class=&quot;yui3-u&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   404
            &lt;ul class=&quot;list&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   405
                &lt;li class=&quot;endwrench&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;endwrench.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   406
                &lt;li class=&quot;knife&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;knife.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   407
                &lt;li class=&quot;scissors&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;scissors.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   408
                &lt;li class=&quot;screwdriver&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;screwdriver.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   409
                &lt;li class=&quot;tape&quot;&gt;&lt;img src=&quot;..&#x2F;assets&#x2F;overlay&#x2F;img&#x2F;tape.png&quot;&#x2F;&gt;&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   410
                &lt;li class=&quot;select&quot;&gt;Tooltips cover &lt;select&gt;&lt;option&gt;select&lt;&#x2F;option&gt;&lt;&#x2F;select&gt; elements in IE.&lt;&#x2F;li&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   411
            &lt;&#x2F;ul&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   412
        &lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   413
    &lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   414
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   415
&lt;script&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   416
YUI().use(&#x27;overlay&#x27;, &#x27;event&#x27;, &#x27;widget-anim&#x27;, function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   417
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   418
    var waitingToShow = false,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   419
        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   420
        &#x2F;&#x2F; array for text to be displayed in tooltips
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   421
        tipText = [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   422
            {&#x27;name&#x27;: &#x27;wrench&#x27;, &#x27;text&#x27;: &quot;Avoid dropping on toe.&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   423
            {&#x27;name&#x27;: &#x27;calipers&#x27;, &#x27;text&#x27;: &#x27;Dial calipers: +- .001,&lt;br&gt;human hair .004&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   424
            {&#x27;name&#x27;: &#x27;drill&#x27;, &#x27;text&#x27;: &#x27;Variable-speed and cordless too.&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   425
            {&#x27;name&#x27;: &#x27;ohm&#x27;, &#x27;text&#x27;: &#x27;Never test microwaves with a volt-ohm meter.&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   426
            {&#x27;name&#x27;: &#x27;level&#x27;, &#x27;text&#x27;: &#x27;Unreliable in zero gravity conditions.&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   427
            {&#x27;name&#x27;: &#x27;endwrench&#x27;, &#x27;text&#x27;: &#x27;11&#x2F;16 box-end wrench A.K.A spanner - (British)&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   428
            {&#x27;name&#x27;: &#x27;knife&#x27;, &#x27;text&#x27;: &#x27;Wants to roll off table and stick in foot.&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   429
            {&#x27;name&#x27;: &#x27;scissors&#x27;, &#x27;text&#x27;: &quot;Don&#x27;t run with these.&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   430
            {&#x27;name&#x27;: &#x27;screwdriver&#x27;, &#x27;text&#x27;: &#x27;Not intended for garden weeding.&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   431
            {&#x27;name&#x27;: &#x27;tape&#x27;, &#x27;text&#x27;: &#x27;Remove before cutting.&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   432
            {&#x27;name&#x27;: &#x27;select&#x27;, &#x27;text&#x27;: &#x27;Covering select&#x27;}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   433
        ];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   434
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   435
    var tooltip = new Y.Overlay({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   436
        srcNode: &quot;#tooltip&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   437
        visible: false
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   438
    }).plug(Y.Plugin.WidgetAnim);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   439
    tooltip.anim.get(&#x27;animHide&#x27;).set(&#x27;duration&#x27;, 0.01);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   440
    tooltip.anim.get(&#x27;animShow&#x27;).set(&#x27;duration&#x27;, 0.3);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   441
    tooltip.render();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   442
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   443
    &#x2F;&#x2F; handler that positions and shows the tooltip 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   444
    var onMousemove = function (e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   445
        var i;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   446
        if (tooltip.get(&#x27;visible&#x27;) === false) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   447
            &#x2F;&#x2F; while it&#x27;s still hidden, move the tooltip adjacent to the cursor
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   448
            Y.one(&#x27;#tooltip&#x27;).setStyle(&#x27;opacity&#x27;, &#x27;0&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   449
            tooltip.move([(e.pageX + 10), (e.pageY + 20)]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   450
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   451
        if (waitingToShow === false) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   452
            &#x2F;&#x2F; wait half a second, then show tooltip
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   453
            setTimeout(function(){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   454
                Y.one(&#x27;#tooltip&#x27;).setStyle(&#x27;opacity&#x27;, &#x27;1&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   455
                tooltip.show();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   456
            }, 500);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   457
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   458
            &#x2F;&#x2F; while waiting to show tooltip, don&#x27;t let other
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   459
            &#x2F;&#x2F; mousemoves try to show tooltip too.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   460
            waitingToShow = true;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   461
            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   462
            &#x2F;&#x2F; loop through the tipText array looking for a match between
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   463
            &#x2F;&#x2F; the class name and the array literal &#x60;name&#x60;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   464
            for (i = 0; i &lt; tipText.length; i += 1) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   465
                if (e.currentTarget.hasClass(tipText[i].name)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   466
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   467
                    &#x2F;&#x2F; found a match, so set the content in the tooltip&#x27;s body
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   468
                    tooltip.setStdModContent(&#x27;body&#x27;, tipText[i].text);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   469
                    break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   470
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   471
            }
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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   475
    &#x2F;&#x2F; handler that hides the tooltip
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   476
    var onMouseleave = function (e) {
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; this check prevents hiding the tooltip 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   479
        &#x2F;&#x2F; when the cursor moves over the tooltip itself
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   480
        if ((e.relatedTarget) &amp;&amp; (e.relatedTarget.hasClass(&#x27;yui3-widget-bd&#x27;) === false)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   481
            tooltip.hide();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   482
            waitingToShow = false;            
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   483
        }
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
    Y.delegate(&#x27;mousemove&#x27;, onMousemove, &#x27;.lists&#x27;, &#x27;li&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   487
    Y.delegate(&#x27;mouseleave&#x27;, onMouseleave, &#x27;.lists&#x27;, &#x27;li&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   488
    Y.one(&#x27;#tooltip&#x27;).on(&#x27;mouseleave&#x27;, onMouseleave);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   489
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   490
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   491
&lt;&#x2F;script&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   492
&lt;&#x2F;body&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   493
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   494
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   495
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   496
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   497
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   498
        <div class="yui3-u-1-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   499
            <div class="sidebar">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   500
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   501
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   502
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   503
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   504
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   505
                            <h2 class="no-toc">Examples</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   506
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   507
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   508
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   509
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   510
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   511
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   512
                                        <li data-description="Shows how to instantiate a basic Overlay instance, and use the Overlay&#x27;s basic XY positioning support.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   513
                                            <a href="overlay-xy.html">Basic XY Positioning</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   514
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   515
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   516
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   517
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   518
                                        <li data-description="Shows how to create a simple tooltip incorporating the overlay shim feature.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   519
                                            <a href="overlay-tooltip.html">Simple Tooltip</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   520
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   521
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   522
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   523
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   524
                                        <li data-description="Shows how to use the Overlay&#x27;s XY alignment support, to align the Overlay relative to another element, or to the viewport.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   525
                                            <a href="overlay-align.html">Alignment Support</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   526
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   527
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   528
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   529
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   530
                                        <li data-description="Shows how to use the Overlay&#x27;s zindex and shim support when positioning Overlays above other elements on the page.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   531
                                            <a href="overlay-stack.html">Stack Support</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   532
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   533
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   534
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   535
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   536
                                        <li data-description="Shows how to modify content in the Overlay&#x27;s header, body and footer sections.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   537
                                            <a href="overlay-stdmod.html">Standard Module Support</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   538
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   539
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   540
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   541
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   542
                                        <li data-description="Shows how to use Overlay&#x27;s constrainment support, to limit the XY value which can be set for an Overlay.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   543
                                            <a href="overlay-constrain.html">Constrain Support</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   544
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   545
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   546
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   547
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   548
                                        <li data-description="Shows how to create a simple plugin to retrieve content for the Overlay using the io utility.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   549
                                            <a href="overlay-io-plugin.html">IO Plugin</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   550
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   551
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   552
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   553
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   554
                                        <li data-description="Shows how to create a simple plugin to animate the Overlay&#x27;s movement and visibility.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   555
                                            <a href="overlay-anim-plugin.html">Animation Plugin</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   556
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   557
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   558
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   559
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   560
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   561
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   562
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   563
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   564
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   565
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   566
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   567
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   568
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   569
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   570
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   571
                            <h2 class="no-toc">Examples That Use This Component</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   572
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   573
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   574
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   575
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   576
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   577
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   578
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   579
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   580
                                
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
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   585
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   586
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   587
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   588
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   589
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   590
                                
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
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   594
                                        <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
   595
                                            <a href="../node-focusmanager/node-focusmanager-button.html">Accessible Menu Button</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   596
                                        </li>
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
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   600
                                        <li data-description="Use StyleSheet to adjust the CSS rules applying a page theme from user input">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   601
                                            <a href="../stylesheet/stylesheet-theme.html">Adjusting a Page Theme on the Fly</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   602
                                        </li>
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
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   606
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   607
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   608
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   609
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   610
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   611
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   612
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   613
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   614
<script src="../assets/vendor/prettify/prettify-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   615
<script>prettyPrint();</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   616
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   617
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   618
YUI.Env.Tests = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   619
    examples: [],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   620
    project: '../assets',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   621
    assets: '../assets/overlay',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   622
    name: 'overlay-tooltip',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   623
    title: 'Simple Tooltip',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   624
    newWindow: '',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   625
    auto:  false 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   626
};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   627
YUI.Env.Tests.examples.push('overlay-xy');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   628
YUI.Env.Tests.examples.push('overlay-tooltip');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   629
YUI.Env.Tests.examples.push('overlay-align');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   630
YUI.Env.Tests.examples.push('overlay-stack');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   631
YUI.Env.Tests.examples.push('overlay-stdmod');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   632
YUI.Env.Tests.examples.push('overlay-constrain');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   633
YUI.Env.Tests.examples.push('overlay-io-plugin');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   634
YUI.Env.Tests.examples.push('overlay-anim-plugin');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   635
YUI.Env.Tests.examples.push('node-focusmanager-button');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   636
YUI.Env.Tests.examples.push('stylesheet-theme');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   637
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   638
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   639
<script src="../assets/yui/test-runner.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   640
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   641
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   642
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   643
</body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   644
</html>