src/cm/media/js/lib/yui/yui_3.10.3/docs/event/basic-example.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 DOM Events</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 DOM Events</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 scoped>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    29
#container {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
    background-color: #F5E3B1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
    border: 1px solid #C2AE6D;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
    height: 76px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
    /*padding: 1em 0 0 1em;*/
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
    padding-left: 1em;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
    cursor: pointer;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
#demo .hello {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
    background: url("../assets/event/earth.png") no-repeat scroll 141px -62px #000000;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
    color: #C3A7CD;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
    border-color: #000;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
    font-size: 150%;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
#example-canvas #demo a {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
    color: #00c;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
    text-decoration: underline;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
.message {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
    visibility: hidden;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
</style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
<div class="intro">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
<p>Clicking in the yellow box will give hello world feedback.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
Clicking on the first link will take you to the YUI website; clicking on the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
second link, which has the same <code>href</code> attribute, will display
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
a message instead, and not navigate to a new page.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
<p>Event Utility is used here to do two things:</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
<ol>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
	<li>Attach the <code>click</code> event handler to the yellow box;</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
	<li>Attach an event handler to the second <code>&lt;a&gt;</code>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
    element that uses <code>preventDefault()</code> to prevent the link,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
    when clicked, from navigating to a new page. </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
</ol>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
<div class="example yui3-skin-sam">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
    <div id="demo">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
    <div id="container">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
        <p>Click for Hello World test.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
    <p><a href="http://yuilibrary.com" id="firstA">The YUI Library. (Link navigates away from page.)</a></p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    75
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    76
    <a href="http://yuilibrary.com" id="secondA">The YUI Library. (Link's default behavior is suppressed.)</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
    <div class="message">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
        When you clicked on the second link, *preventDefault* was called, so it did not navigate away from the page.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
YUI().use('node', function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
    // A function that gives hello world feedback:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
    var helloWorld = function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
        e.target.setHTML("<p>Hello World!</p>");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
        Y.one('#container').addClass('hello');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
    // subscribe the helloWorld function as an event handler for the click
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
    // event on the container div:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
    var node = Y.one("#container");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
    node.on("click", helloWorld);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
    // A function that displays a message and prevents the default behavior of
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
    // the event for which it is a handler:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
    var interceptLink = function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
        e.preventDefault();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
        Y.one('.message').setStyle('visibility', 'visible');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
    // subscribe our interceptLink function as a click handler for the second
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
    // anchor element:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
    Y.one('#secondA').on("click", interceptLink);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   109
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   110
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   111
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
<h2>Reacting to the <code>click</code> event</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
<p>To illustrate event handling syntax, we'll create a <code>&lt;div&gt;</code> and
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
give some feedback when that <code>&lt;div&gt;</code> is clicked.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
<pre class="code prettyprint">&#x2F;&#x2F; Create a YUI instance and load the &#x27;node&#x27; module
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
YUI().use(&#x27;node&#x27;, function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
    &#x2F;&#x2F; A function that gives hello world feedback:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
    var helloWorld = function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
        e.target.setHTML(&quot;&lt;p&gt;Hello World!&lt;&#x2F;p&gt;&quot;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
        Y.one(&#x27;#container&#x27;).addClass(&#x27;hello&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   125
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   126
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   127
    ...</pre>
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
<p>We now use the Node's <code>on</code> method to attach our
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
<code>helloWorld</code> function as a handler for the <code>click</code> event.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
<pre class="code prettyprint">&#x2F;&#x2F; Point to the container div with the CSS selector
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
var node = Y.one(&#x27;#container&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
node.on(&quot;click&quot;, helloWorld);</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
<p>Almost all event handling begins with a premise just this simple: we have an
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
element to which something might happen (eg, it might be clicked) and, when
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
that <em>does</em> happen, we want to do something (eg,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
<code>helloWorld</code>).</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
<h2 id="prevent">Preventing event behavior</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
<p>In some cases, you may want to replace the default behavior of an event.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
For example, let's say you have two links on the page:</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
<pre class="code prettyprint">&lt;p&gt;&lt;a href=&quot;http:&#x2F;&#x2F;yuilibrary.com&#x2F;&quot; id=&quot;firstA&quot;&gt;The YUI Library. (Link navigates away from page.)&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
&lt;p&gt;&lt;a href=&quot;http:&#x2F;&#x2F;yuilibrary.com&#x2F;&quot; id=&quot;secondA&quot;&gt;The YUI Library. (Link&#x27;s default behavior is suppressed.)&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
<p>Let's say that when the second link is clicked, instead of navigating away
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
from the current page, you want to display a message.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
The event object passed to your event handler is a facade &mdash; not
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
the actual browser event object.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
This facade supports the <code>preventDefault</code> method for cancelling
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
inherent browser behavior such as anchor links loading a new page.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
<pre class="code prettyprint">&#x2F;&#x2F; A function that stops the browser from navigating away
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
&#x2F;&#x2F; from the page, and instead displays a message.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
var interceptLink = function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   164
    e.preventDefault();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   165
    Y.one(&#x27;.message&#x27;).setStyle(&#x27;visibility&#x27;, &#x27;visible&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   166
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   168
&#x2F;&#x2F; subscribe our interceptLink function to the second anchor
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   169
Y.one(&#x27;#secondA&#x27;).on(&quot;click&quot;, interceptLink);</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   170
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   171
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   172
<h2 id="fullcode">Full Code Listing</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   173
<pre class="code prettyprint">&lt;div id=&quot;demo&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   174
    &lt;div id=&quot;container&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   175
        &lt;p&gt;Click for Hello World test.&lt;&#x2F;p&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   176
    &lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   177
    &lt;p&gt;&lt;a href=&quot;http:&#x2F;&#x2F;yuilibrary.com&quot; id=&quot;firstA&quot;&gt;The YUI Library. (Link navigates away from page.)&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   178
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   179
    &lt;a href=&quot;http:&#x2F;&#x2F;yuilibrary.com&quot; id=&quot;secondA&quot;&gt;The YUI Library. (Link&#x27;s default behavior is suppressed.)&lt;&#x2F;a&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   180
    &lt;div class=&quot;message&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   181
        When you clicked on the second link, *preventDefault* was called, so it did not navigate away from the page.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   182
    &lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   183
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   184
&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   185
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   186
&lt;script&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   187
YUI().use(&#x27;node&#x27;, function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   188
    &#x2F;&#x2F; A function that gives hello world feedback:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   189
    var helloWorld = function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   190
        e.target.setHTML(&quot;&lt;p&gt;Hello World!&lt;&#x2F;p&gt;&quot;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   191
        Y.one(&#x27;#container&#x27;).addClass(&#x27;hello&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   192
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   193
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   194
    &#x2F;&#x2F; subscribe the helloWorld function as an event handler for the click
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   195
    &#x2F;&#x2F; event on the container div:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   196
    var node = Y.one(&quot;#container&quot;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   197
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   198
    node.on(&quot;click&quot;, helloWorld);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   199
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   200
    &#x2F;&#x2F; A function that displays a message and prevents the default behavior of
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   201
    &#x2F;&#x2F; the event for which it is a handler:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   202
    var interceptLink = function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   203
        e.preventDefault();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   204
        Y.one(&#x27;.message&#x27;).setStyle(&#x27;visibility&#x27;, &#x27;visible&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   205
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   206
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   207
    &#x2F;&#x2F; subscribe our interceptLink function as a click handler for the second
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   208
    &#x2F;&#x2F; anchor element:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   209
    Y.one(&#x27;#secondA&#x27;).on(&quot;click&quot;, interceptLink);
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;&#x2F;script&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   212
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   213
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   214
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   215
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   216
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   217
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   218
        <div class="yui3-u-1-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   219
            <div class="sidebar">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   220
                
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
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   224
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   225
                            <h2 class="no-toc">Examples</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   226
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   227
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   228
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   229
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   230
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   231
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   232
                                        <li data-description="Use the Event Utility to attach simple DOM event handlers.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   233
                                            <a href="basic-example.html">Simple DOM Events</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   234
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   235
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   236
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   237
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   238
                                        <li data-description="Using the synthetic event API to create a DOM event that fires in response to arrow keys being pressed.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   239
                                            <a href="synth-example.html">Creating an Arrow Event for DOM Subscription</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   240
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   241
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   242
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   243
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   244
                                        <li data-description="Supporting cross-device swipe gestures, using the event-move gesture events">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   245
                                            <a href="swipe-example.html">Supporting A Swipe Left Gesture</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   246
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   247
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   248
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   249
                                    
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
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   253
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   254
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   255
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   256
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   257
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   258
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   259
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   260
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   261
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   262
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   263
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   264
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   265
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   266
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   267
                            <h2 class="no-toc">Examples That Use This Component</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   268
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   269
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   270
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   271
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   272
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   273
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   274
                                
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
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   278
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   279
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   280
                                        <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
   281
                                            <a href="../node-focusmanager/node-focusmanager-button.html">Accessible Menu Button</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   282
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   283
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   284
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   285
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   286
                                        <li data-description="Shows how to extend the base widget class, to create your own Widgets.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   287
                                            <a href="../widget/widget-extend.html">Extending the Base Widget Class</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   288
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   289
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   290
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   291
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   292
                                        <li data-description="Example Photo Browser application.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   293
                                            <a href="../dd/photo-browser.html">Photo Browser</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   294
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   295
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   296
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   297
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   298
                                        <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
   299
                                            <a href="../dd/portal-drag.html">Portal Style Example</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   300
                                        </li>
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
                                        <li data-description="Use IO to request data over HTTP.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   305
                                            <a href="../io/get.html">HTTP GET to request data</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   306
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   307
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   308
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   309
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   310
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   311
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   312
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   313
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   314
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   315
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   316
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   317
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   318
<script src="../assets/vendor/prettify/prettify-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   319
<script>prettyPrint();</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   320
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   321
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   322
YUI.Env.Tests = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   323
    examples: [],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   324
    project: '../assets',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   325
    assets: '../assets/event',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   326
    name: 'basic-example',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   327
    title: 'Simple DOM Events',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   328
    newWindow: '',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   329
    auto:  false 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   330
};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   331
YUI.Env.Tests.examples.push('basic-example');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   332
YUI.Env.Tests.examples.push('synth-example');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   333
YUI.Env.Tests.examples.push('swipe-example');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   334
YUI.Env.Tests.examples.push('node-focusmanager-button');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   335
YUI.Env.Tests.examples.push('widget-extend');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   336
YUI.Env.Tests.examples.push('photo-browser');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   337
YUI.Env.Tests.examples.push('portal-drag');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   338
YUI.Env.Tests.examples.push('get');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   339
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   340
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   341
<script src="../assets/yui/test-runner.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   342
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   343
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   344
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   345
</body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   346
</html>