src/cm/media/js/lib/yui/yui_3.10.3/docs/get/index.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>Get</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
        <a href="#toc" class="jump">Jump to Table of Contents</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    24
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    25
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    26
            <h1>Get</h1>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    27
    <div class="yui3-g">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    28
        <div class="yui3-u-3-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    29
            <div id="main">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
                <div class="content"><div class="intro">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
The Get Utility makes it easy to dynamically load JavaScript and CSS resources and be notified when they've finished loading. Get is used internally by the <a href="../yui/index.html">YUI Loader</a> to load YUI modules and by the <a href="../jsonp/index.html">JSONP module</a> to make JSONP requests. The Get Utility is transactional in nature and is capable of loading multiple resources either serially or in parallel.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
<h2 id="getting-started">Getting Started</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
To include the source files for Get and its dependencies, first load
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
the YUI seed file if you haven't already loaded it.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
<pre class="code prettyprint">&lt;script src=&quot;http:&#x2F;&#x2F;yui.yahooapis.com&#x2F;3.10.3&#x2F;build&#x2F;yui&#x2F;yui-min.js&quot;&gt;&lt;&#x2F;script&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
Next, create a new YUI instance for your application and populate it with the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
modules you need by specifying them as arguments to the <code>YUI().use()</code> method.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
YUI will automatically load any dependencies required by the modules you
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
specify.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
<pre class="code prettyprint">&lt;script&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
&#x2F;&#x2F; Create a new YUI instance and populate it with the required modules.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
YUI().use(&#x27;get&#x27;, function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
    &#x2F;&#x2F; Get is available and ready for use. Add implementation
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
    &#x2F;&#x2F; code here.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
&lt;&#x2F;script&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
For more information on creating YUI instances and on the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
<a href="http://yuilibrary.com/yui/docs/api/classes/YUI.html#method_use"><code>use()</code> method</a>, see the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
documentation for the <a href="../yui/index.html">YUI Global Object</a>.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
<h2 id="using-the-get-utility">Using the Get Utility</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
<h3 id="loading-css-and-javascript">Loading CSS and JavaScript</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
<h4 id="js"><code>js()</code></h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    75
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    76
To load a JavaScript resource, pass a URL (both relative and absolute URLs are fine) and a callback function to the <a href="http://yuilibrary.com/yui/docs/api/classes/Get.html#method_js"><code>Y.Get.js()</code></a> method. Get will execute the callback function when the resource has finished loading. If an error occurs, the first argument passed to the callback will be an array of error objects.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
<code>Y.Get</code> is a static class, so you don't need to instantiate it before calling its methods.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
<pre class="code prettyprint">&#x2F;&#x2F; Load a single JavaScript resource.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
Y.Get.js(&#x27;http:&#x2F;&#x2F;example.com&#x2F;file.js&#x27;, function (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
    if (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
        Y.log(&#x27;Error loading JS: &#x27; + err[0].error, &#x27;error&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
        return;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
    Y.log(&#x27;file.js loaded successfully!&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
<h4 id="css"><code>css()</code></h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
Loading CSS works the same way as JS, but you call the <a href="http://yuilibrary.com/yui/docs/api/classes/Get.html#method_css"><code>css()</code></a> method instead of <code>js()</code>:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
<pre class="code prettyprint">&#x2F;&#x2F; Load a single CSS resource.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
Y.Get.css(&#x27;file.css&#x27;, function (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
    if (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
        Y.log(&#x27;Error loading CSS: &#x27; + err[0].error, &#x27;error&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
        return;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
    Y.log(&#x27;file.css loaded successfully!&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
});</pre>
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
<h4 id="load"><code>load()</code></h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
If you want to load more than one resource in a single transaction and be notified when all of them have finished loading, you may pass an array of URLs to <code>css()</code> or <code>js()</code>.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
<pre class="code prettyprint">&#x2F;&#x2F; Load multiple JS resources and execute the callback after all have finished
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
&#x2F;&#x2F; loading.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
Y.Get.js([&#x27;one.js&#x27;, &#x27;two.js&#x27;, &#x27;http:&#x2F;&#x2F;example.com&#x2F;three.js&#x27;], function (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
    if (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
        Y.Array.each(err, function (error) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
            Y.log(&#x27;Error loading JS: &#x27; + error.error, &#x27;error&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
        return;
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
    Y.log(&#x27;All JS files loaded successfully!&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   128
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   129
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   130
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
You can even mix and match both JavaScript and CSS files in the same transaction by calling <a href="http://yuilibrary.com/yui/docs/api/classes/Get.html#method_load"><code>Y.Get.load()</code></a>, which will guess the type of each URL by looking at the file extension.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
<pre class="code prettyprint">&#x2F;&#x2F; Load both CSS and JS in a single transaction and execute the callback after
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
&#x2F;&#x2F; all resources have finished loading.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
Y.Get.load([&#x27;widget.js&#x27;, &#x27;widget.css&#x27;], function (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
    if (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
        Y.Array.each(err, function (error) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
            Y.log(&#x27;Error loading file: &#x27; + error.error, &#x27;error&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
        return;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
    Y.log(&#x27;All CSS and JS files loaded successfully!&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
This should be enough to get you started using the Get Utility, but keep reading to learn about Get's more advanced functionality.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
<h3 id="serial-vs-parallel-loading">Serial vs. Parallel Loading</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
The <code>css()</code>, <code>js()</code>, and <code>load()</code> methods execute <em>asynchronously</em>, which means that they return instantly rather than blocking subsequent code until the operation finishes. This is why it's necessary to provide a callback function if you want to be notified when loading is complete.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
It's also important to understand when resources will be loaded <em>serially</em> (one after another) versus in <em>parallel</em> (all at the same time). Loading resources in parallel is always faster than loading them serially, but can sometimes be dangerous because resources won't always finish loading in the same order they were requested.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   164
The Get Utility always does the safest thing by default:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   165
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   166
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
<ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   168
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   169
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   170
Transactions are processed serially. This means that only one transaction is in progress at a time, and it must finish before the next transaction will begin. Each call to <code>css()</code>, <code>js()</code>, or <code>load()</code> creates a transaction, although a single transaction may involve multiple requests.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   171
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   172
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   173
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   174
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   175
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   176
Within a transaction, CSS resources are always loaded in parallel. This is because, with CSS, load order has no effect on the end result, since style precedence is determined by the order of <code>&lt;link&gt;</code> nodes in the DOM.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   177
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   178
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   179
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   180
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   181
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   182
Within a transaction, JS resources are loaded in parallel in Firefox and Opera, because these browsers are capable of preserving script execution order regardless of load order. In all other browsers, JS resources are loaded serially unless the <a href="http://yuilibrary.com/yui/docs/api/classes/Get.html#property_options"><code>async</code> option</a> is set to <code>true</code>.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   183
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   184
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   185
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   186
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   187
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   188
When the <a href="http://yuilibrary.com/yui/docs/api/classes/Get.html#property_options"><code>async</code> option</a> is set to <code>true</code>, JS resources are loaded in parallel regardless of the browser, and execution order is not guaranteed.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   189
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   190
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   191
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   192
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   193
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   194
<h3 id="working-with-transactions">Working With Transactions</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   195
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   196
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   197
A transaction object is an instance of the <a href="http://yuilibrary.com/yui/docs/api/classes/Get.Transaction.html"><code>Y.Get.Transaction</code></a> class. It contains methods and properties that allow you to inspect and manipulate a transaction, which encompasses one or more CSS or JS requests and a set of config options associated with those requests.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   198
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   199
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   200
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   201
The <code>css()</code>, <code>js()</code>, and <code>load()</code> methods each return a transaction object. This same transaction object is also passed as the second argument to the completion callback.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   202
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   203
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   204
<pre class="code prettyprint">&#x2F;&#x2F; Load a script and assign the transaction object to a var.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   205
var tx = Y.Get.js(&#x27;hello.js&#x27;, function (err, tx) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   206
    &#x2F;&#x2F; The transaction object is also passed as the second arg to completion
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   207
    &#x2F;&#x2F; callbacks.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   208
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   209
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   210
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   211
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   212
It's not necessary to hold onto a transaction object unless you want to be able to abort a request before it finishes or manually purge <code>&lt;script&gt;</code> or <code>&lt;link&gt;</code> nodes created by the transaction.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   213
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   214
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   215
<h4 id="aborting-transactions">Aborting Transactions</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   216
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   217
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   218
You can abort a transaction in progress by calling the transaction's <a href="http://yuilibrary.com/yui/docs/api/classes/Get.Transaction.html#method_abort"><code>abort()</code></a> method.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   219
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   220
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   221
<pre class="code prettyprint">var tx = Y.Get.js([&#x27;one.js&#x27;, &#x27;two.js&#x27;], function (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   222
    if (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   223
        Y.log(err[0].error, &#x27;error&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   224
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   225
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   226
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   227
tx.abort(); &#x2F;&#x2F; Results in the log message &quot;Aborted.&quot;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   228
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   229
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   230
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   231
Pass a string to the <code>abort()</code> method to customize the error message passed to callbacks.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   232
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   233
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   234
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   235
Note that since browsers don't expose a safe API for aborting in-progress JS and CSS requests, the Get Utility can't actually stop requests that have already started. Calling <code>abort()</code> will immediately cause callbacks to execute and will cancel any pending requests within the transaction that haven't yet begun, but if there are any requests already in progress, the browser will finish them silently.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   236
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   237
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   238
<h4 id="purging-inserted-nodes">Purging Inserted Nodes</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   239
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   240
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   241
If you plan to load lots of JavaScript resources&mdash;for example, maybe your app makes frequent JSONP requests to a remote API&mdash;you'll end up creating lots of <code>&lt;script&gt;</code> nodes behind the scenes. Each node on the page uses a small amount of memory, and since the actual script nodes aren't usually needed once the JS has been executed, it's a good idea to clean them up occasionally by purging them.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   242
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   243
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   244
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   245
By default, the Get Utility will automatically purge script nodes after every 20 requests. This number is relatively high since purging incurs a slight processing cost. If you want to manually purge the nodes inserted by a transaction instead of waiting for the automatic purge, you can do so by calling the transaction's <code>purge()</code> method.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   246
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   247
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   248
<pre class="code prettyprint">Y.Get.js([&#x27;one.js&#x27;, &#x27;two.js&#x27;], function (err, tx) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   249
    &#x2F;&#x2F; Purge all the DOM nodes created by this transaction.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   250
    tx.purge();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   251
});</pre>
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
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   255
You can customize the automatic purge threshold by setting the <a href="http://yuilibrary.com/yui/docs/api/classes/Get.html#property_options"><code>purgethreshold</code></a> config option, and you can disable automatic purging completely by setting the <a href="http://yuilibrary.com/yui/docs/api/classes/Get.html#property_options"><code>autopurge</code></a> option to <code>false</code>.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   256
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   257
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   258
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   259
Note that the Get Utility will not automatically purge CSS <code>&lt;link&gt;</code> nodes by default, since removing a <code>&lt;link&gt;</code> node from the DOM also removes any styles it applied. Calling <code>purge()</code> manually on a transaction that included CSS requests will purge the <code>&lt;link&gt;</code> nodes and remove styles, so be careful.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   260
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   261
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   262
<h4 id="manually-executing-transactions">Manually Executing Transactions</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   263
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   264
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   265
As described in <a href="#serial-vs-parallel-loading">Serial vs. Parallel Loading</a>, the Get Utility executes transactions serially (one after the other) to ensure that they don't conflict with one another. If for some reason you want multiple transactions to execute in parallel and you're willing to take your life into your own hands, you can manually start a transaction by calling its <code>execute()</code> method.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   266
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   267
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   268
<pre class="code prettyprint">var txOne = Y.Get.js([&#x27;foo.js&#x27;, &#x27;bar.js&#x27;]),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   269
    txTwo = Y.Get.js([&#x27;baz.js&#x27;, &#x27;quux.js&#x27;]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   270
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   271
&#x2F;&#x2F; txOne is started automatically, and we can manually start txTwo in parallel.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   272
txTwo.execute();</pre>
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
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   276
Calling <code>execute()</code> on a transaction that's already in progress or has already finished is safe and won't restart the transaction.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   277
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   278
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   279
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   280
An additional feature of <code>execute()</code> is that it accepts a callback function, which works just like the callback function passed to <code>css()</code>, <code>js()</code>, or <code>load()</code>. In fact, you can even call <code>execute()</code> multiple times to register multiple callback functions, and they'll be queued and executed in order once the transaction finishes. If you call <code>execute()</code> with a callback function on a transaction that's already finished, the callback will be executed immediately.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   281
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   282
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   283
<h3 id="configuration-options">Configuration Options</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   284
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   285
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   286
The Get Utility supports the following config options. All options may be set at the transaction level. Some options may also be set at the request level (i.e., for a specific URL within a transaction). Options that may be set at the request level are indicated by a "Y" in the "Request?" column.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   287
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   288
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   289
<table>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   290
    <thead>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   291
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   292
            <th>Name</th>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   293
            <th>Default</th>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   294
            <th>Request?</th>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   295
            <th>Description</th>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   296
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   297
    </thead>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   298
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   299
    <tbody>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   300
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   301
            <td><code>async</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   302
            <td><code>false</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   303
            <td style="text-align:center">Y</td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   304
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   305
                Whether or not to load scripts asynchronously, meaning they're requested in parallel and execution order is not guaranteed. Has no effect on CSS, since CSS is always loaded asynchronously.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   306
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   307
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   308
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   309
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   310
            <td><code>attributes</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   311
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   312
<pre class="">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   313
{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   314
  charset: "utf-8",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   315
  id     : <em>auto</em>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   316
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   317
</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   318
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   319
            <td style="text-align:center">Y</td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   320
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   321
                HTML attribute name/value pairs that should be added to inserted nodes. By default, the <code>charset</code> attribute will be set to "utf-8" and nodes will be given an auto-generated <code>id</code> attribute, but you can override these with your own values if desired.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   322
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   323
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   324
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   325
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   326
            <td><code>autopurge</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   327
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   328
                <code>true</code> for JS<br>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   329
                <code>false</code> for CSS
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   330
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   331
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   332
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   333
                Whether or not to automatically purge inserted nodes after the purge threshold is reached. This is <code>true</code> by default for JavaScript, but <code>false</code> for CSS since purging a CSS node will also remove any styling applied by the referenced file.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   334
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   335
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   336
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   337
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   338
            <td><code>context</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   339
            <td><em>transaction object</em></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   340
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   341
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   342
                <code>this</code> object to use when calling callback functions. Defaults to the transaction object.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   343
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   344
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   345
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   346
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   347
            <td><code>data</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   348
            <td><code>undefined</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   349
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   350
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   351
                Arbitrary data object to pass to "on*" callbacks.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   352
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   353
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   354
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   355
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   356
            <td><code>doc</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   357
            <td><code>Y.config.doc</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   358
            <td style="text-align:center">Y</td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   359
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   360
                Document into which nodes should be inserted. By default, the current document is used.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   361
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   362
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   363
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   364
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   365
            <td><code>insertBefore</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   366
            <td><em>auto</em></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   367
            <td style="text-align:center">Y</td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   368
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   369
                HTML element or id string of an element before which all generated nodes should be inserted. If not specified, Get will automatically determine the best place to insert nodes for maximum compatibility.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   370
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   371
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   372
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   373
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   374
            <td><code>onEnd</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   375
            <td><code>undefined</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   376
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   377
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   378
                Callback to execute after a transaction is complete, regardless of whether it succeeded or failed.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   379
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   380
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   381
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   382
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   383
            <td><code>onFailure</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   384
            <td><code>undefined</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   385
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   386
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   387
                Callback to execute after a transaction fails, times out, or is aborted.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   388
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   389
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   390
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   391
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   392
            <td><code>onProgress</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   393
            <td><code>undefined</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   394
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   395
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   396
                Callback to execute after each individual request in a transaction either succeeds or fails.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   397
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   398
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   399
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   400
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   401
            <td><code>onSuccess</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   402
            <td><code>undefined</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   403
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   404
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   405
                Callback to execute after a transaction completes successfully with no errors. Note that in browsers that don't support the <code>error</code> event on CSS <code>&lt;link&gt;</code> nodes, a failed CSS request may still be reported as a success because in these browsers it can be difficult or impossible to distinguish between success and failure for CSS resources.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   406
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   407
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   408
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   409
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   410
            <td><code>onTimeout</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   411
            <td><code>undefined</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   412
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   413
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   414
                Callback to execute after a transaction times out.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   415
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   416
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   417
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   418
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   419
            <td><code>pollInterval</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   420
            <td><code>50</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   421
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   422
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   423
                Polling interval (in milliseconds) for detecting CSS load completion in browsers that don't support the <code>load</code> event on <code>&lt;link&gt;</code> nodes. This isn't used for JavaScript.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   424
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   425
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   426
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   427
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   428
            <td><code>purgethreshold</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   429
            <td><code>20</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   430
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   431
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   432
                Number of nodes to insert before triggering an automatic purge when <code>autopurge</code> is <code>true</code>.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   433
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   434
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   435
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   436
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   437
            <td><code>timeout</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   438
            <td><code>undefined</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   439
            <td></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   440
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   441
                Number of milliseconds to wait before aborting a transaction. When a timeout occurs, the <code>onTimeout</code> callback is called, followed by <code>onFailure</code> and finally <code>onEnd</code>. By default, there is no timeout.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   442
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   443
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   444
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   445
        <tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   446
            <td><code>type</code></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   447
            <td><em>auto</em></td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   448
            <td style="text-align:center">Y</td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   449
            <td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   450
                Resource type ("css" or "js"). This option is set automatically by the <code>css()</code> and <code>js()</code> functions and will be ignored there, but may be useful when using the <code>load()</code> function. If not specified, the type will be inferred from the URL, defaulting to "js" if the URL doesn't contain a recognizable file extension.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   451
            </td>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   452
        </tr>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   453
    </tbody>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   454
</table>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   455
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   456
<h4 id="using-transaction-specific-options">Using Transaction-Specific Options</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   457
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   458
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   459
Transaction-specific configuration options apply only to a single transaction. To specify one or more transaction-specific options, just pass a config object as the second argument to <code>css()</code>, <code>js()</code> or <code>load()</code>.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   460
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   461
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   462
<pre class="code prettyprint">Y.Get.js(&#x27;intl-jp.js&#x27;, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   463
    attributes: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   464
        &#x27;charset&#x27;: &#x27;shift-jis&#x27;, &#x2F;&#x2F; custom charset attribute for inserted DOM nodes
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   465
        &#x27;class&#x27;  : &#x27;intl&#x27; &#x2F;&#x2F; custom &#x27;class&#x27; attribute for inserted DOM nodes
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   466
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   467
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   468
    timeout: 10000 &#x2F;&#x2F; timeout after 10 seconds
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   469
}, function (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   470
    &#x2F;&#x2F; ...
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   471
});</pre>
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
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   475
You may have noticed that in the example above, the options object is the second argument and the callback is the third argument, whereas previous examples pass a callback as the second argument and no options object. The <code>css()</code>, <code>js()</code>, and <code>load()</code> methods support both signatures for convenience. The only required argument is the first one.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   476
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   477
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   478
<h4 id="using-request-specific-options">Using Request-Specific Options</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   479
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   480
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   481
Certain config options (see <a href="#configuration-options">the table above</a> for a complete list) can be specified on a per-request basis, meaning they'll apply only to a single URL.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   482
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   483
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   484
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   485
To specify request-specific options, pass an object or array of objects to <code>css()</code>, <code>js()</code>, or <code>load()</code> instead of passing a string or array of strings. Each object must have a <code>url</code> property specifying the URL to load, and may also contain request-specific options. You can freely mix and match string URLs and objects if desired.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   486
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   487
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   488
<pre class="code prettyprint">Y.Get.js([
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   489
    {url: &#x27;thing-one.js&#x27;, attributes: {id: &#x27;thing-one&#x27;}},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   490
    {url: &#x27;thing-two.js&#x27;, attributes: {id: &#x27;thing-two&#x27;}, async: true}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   491
], function (err) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   492
    &#x2F;&#x2F; ...
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   493
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   494
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   495
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   496
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   497
When both request-specific options and transaction-specific options are specified, the options will be merged per request, with request-specific options taking precedence when there are collisions.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   498
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   499
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   500
<h3 id="granular-callbacks">Granular Callbacks</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   501
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   502
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   503
While the callback parameter of the <code>css()</code>, <code>js()</code>, and <code>load()</code> methods makes it easy to define a combined success/failure callback for a transaction, there are times when more granularity is needed. Perhaps you want to use separate callbacks for success and failure, or perhaps you want to be notified of the progress of each request in a transaction rather than waiting until the entire transaction is complete. That's where granular callbacks come in.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   504
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   505
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   506
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   507
The Get Utility supports five different granular callbacks per transaction: <code>onEnd</code>, <code>onFailure</code>, <code>onProgress</code>, <code>onSuccess</code>, and <code>onTimeout</code>. See <a href="#configuration-options">Configuration Options</a> for descriptions of when each callback is called.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   508
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   509
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   510
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   511
Granular callbacks receive the transaction object as an argument.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   512
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   513
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   514
<pre class="code prettyprint">Y.Get.js(&#x27;kittens.js&#x27;, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   515
    onFailure: function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   516
        Y.log(&#x27;Failure!&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   517
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   518
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   519
    onSuccess: function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   520
        Y.log(&#x27;Success!&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   521
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   522
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   523
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   524
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   525
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   526
You can pass arbitrary data to your callbacks by setting the <code>data</code> option on the transaction.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   527
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   528
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   529
<pre class="code prettyprint">Y.Get.js([&#x27;one.js&#x27;, &#x27;two.js&#x27;, &#x27;three.js&#x27;], {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   530
    data: {progress: 0},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   531
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   532
    onProgress: function (tx) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   533
        tx.data.progress += 1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   534
        Y.log(&#x27;Loaded &#x27; + tx.data.progress + &#x27; file(s)&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   535
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   536
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   537
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   538
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   539
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   540
By default, the <code>this</code> object inside a granular callback refers to the transaction object, but you can customize it by setting the <code>context</code> option.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   541
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   542
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   543
<pre class="code prettyprint">Y.Get.js(&#x27;puppies.js&#x27;, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   544
    context: {bark: &#x27;ruff ruff!&#x27;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   545
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   546
    onSuccess: function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   547
        Y.log(this.bark);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   548
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   549
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   550
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   551
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   552
<h2 id="using-jsonp-apis">Using JSONP APIs</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   553
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   554
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   555
A common way to consume a web service that returns JSON data is to use a convention called <a href="http://en.wikipedia.org/wiki/JSONP">JSONP</a>. The remote service returns data wrapped in a JavaScript function call (the name of which is supplied in the request), so retrieving the data is simple as loading and executing the JSONP URL as if it were a script. When the returned JS executes, the data is passed to the named function.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   556
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   557
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   558
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   559
The Get Utility can be used to consume JSONP APIs by loading JSONP URLs as scripts. However, the <a href="../jsonp/index.html">JSONP Utility</a> (which uses Get under the hood) provides a simplified API for making JSONP requests, so we recommend using that component for JSONP rather than using Get directly.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   560
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   561
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   562
<h2 id="how-is-the-get-utility-different-from-io">How is the Get Utility Different From IO?</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   563
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   564
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   565
In simple terms, the Get Utility loads new JS or CSS resources into a document by creating new DOM nodes and setting the <code>src</code> or <code>href</code> attribute. Files loaded in this manner are processed (and, in the case of scripts, executed) as soon as they load.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   566
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   567
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   568
<p>While query parameters can be passed in the URL, no data can be sent to the server via HTTP POST using this method; the Get Utility can only make HTTP GET requests. This makes the Get Utility ideal for loading scripts or CSS progressively (lazy loading) or for retrieving cross-domain JSON data from trusted sources, but somewhat less ideal for more sophisticated communication.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   569
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   570
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   571
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   572
The basic version of the <a href="../io/index.html">IO Utility</a> (<code>io-base</code>) uses the <code>XMLHttpRequest</code> object to interact with the server. <code>XMLHttpRequest</code> is limited by a strict <a href="http://en.wikipedia.org/wiki/Same_origin_policy">same origin policy</a>, but it supports a greater range of HTTP methods (including POST). As a result, IO is a more appropriate choice for rich two-way communication between browser and server and gives you more control over data before it's processed within the browser.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   573
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   574
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   575
<p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   576
The IO Utility also supports cross domain requests through the <code>io-xdr</code> module. However, there are specific trust requirements as described in the documentation for the <a href="../io/index.html#xdr">IO Utility</a>. The <code>io-xdr</code> submodule may be a better choice than the Get Utility for cross-domain communication if the service you are accessing can be configured to trust the server that is hosting your application.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   577
</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   578
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   579
<h2 id="known-issues-in-win-8ie10-impacting-dynamic-script-inclusion">Known Issues in Win 8/IE10 Impacting Dynamic Script Inclusion</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   580
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   581
<p>The following tickets have been filed with Microsoft, and have been identified as being reproducible. However it's unlikely that fixes will make their way into the initial GA release. You may need to register with MS Connect to view them.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   582
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   583
<dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   584
    <dt>Multiple async erroring requests cause Get to hang.</dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   585
    <dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   586
       <p>Issuing multiple async Get requests to an erroring URL (404 for example), causes subsequent successful Get requests to hang, without invoking the onload (and hence onSuccess) handler.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   587
       <p><a href="http://connect.microsoft.com/IE/feedback/details/763466/ie10-dynamic-script-loading-bug-async-404s">MS Connect Ticket #763466</a></p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   588
       <p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   589
       We don't have a clean way to workaround this issue currently (e.g. blocking subsequent requests to an error'ing URL - since users may be re-issueing them to resolve transient issues such as network problems).
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   590
       If this issue is not addressed in subsequent IE10 releases/patches, we may end up block error'ing URLs in IE10, and provide an API to override the block if required for use cases such as the one above.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   591
       </p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   592
    </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   593
    <dt>Load handlers for cached scripts (e.g. 304s) are executed synchronously.</dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   594
    <dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   595
       <p>A workaround for this issue has been rolled into Get with the 3.7.3 release, and end users should always see their callbacks invoked asynchronously regardless of whether or not a script comes back with a cached or non-cached response.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   596
       <p><a href="http://connect.microsoft.com/IE/feedback/details/763871/dynamically-loaded-scripts-with-304s-responses-interrupt-the-currently-executing-js-thread-onload">MS Connect Ticket #763871</a></p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   597
    </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   598
</dl></div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   599
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   600
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   601
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   602
        <div class="yui3-u-1-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   603
            <div class="sidebar">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   604
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   605
                    <div id="toc" class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   606
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   607
                            <h2 class="no-toc">Table of Contents</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   608
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   609
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   610
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   611
                            <ul class="toc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   612
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   613
<a href="#getting-started">Getting Started</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   614
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   615
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   616
<a href="#using-the-get-utility">Using the Get Utility</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   617
<ul class="toc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   618
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   619
<a href="#loading-css-and-javascript">Loading CSS and JavaScript</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   620
<ul class="toc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   621
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   622
<a href="#js"><code>js()</code></a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   623
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   624
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   625
<a href="#css"><code>css()</code></a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   626
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   627
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   628
<a href="#load"><code>load()</code></a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   629
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   630
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   631
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   632
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   633
<a href="#serial-vs-parallel-loading">Serial vs. Parallel Loading</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   634
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   635
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   636
<a href="#working-with-transactions">Working With Transactions</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   637
<ul class="toc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   638
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   639
<a href="#aborting-transactions">Aborting Transactions</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   640
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   641
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   642
<a href="#purging-inserted-nodes">Purging Inserted Nodes</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   643
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   644
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   645
<a href="#manually-executing-transactions">Manually Executing Transactions</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   646
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   647
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   648
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   649
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   650
<a href="#configuration-options">Configuration Options</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   651
<ul class="toc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   652
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   653
<a href="#using-transaction-specific-options">Using Transaction-Specific Options</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   654
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   655
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   656
<a href="#using-request-specific-options">Using Request-Specific Options</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   657
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   658
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   659
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   660
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   661
<a href="#granular-callbacks">Granular Callbacks</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   662
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   663
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   664
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   665
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   666
<a href="#using-jsonp-apis">Using JSONP APIs</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   667
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   668
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   669
<a href="#how-is-the-get-utility-different-from-io">How is the Get Utility Different From IO?</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   670
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   671
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   672
<a href="#known-issues-in-win-8ie10-impacting-dynamic-script-inclusion">Known Issues in Win 8/IE10 Impacting Dynamic Script Inclusion</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   673
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   674
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   675
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   676
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   677
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   678
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   679
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   680
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   681
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   682
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   683
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   684
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   685
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   686
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   687
<script src="../assets/vendor/prettify/prettify-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   688
<script>prettyPrint();</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   689
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   690
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   691
YUI.Env.Tests = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   692
    examples: [],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   693
    project: '../assets',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   694
    assets: '../assets/get',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   695
    name: 'get',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   696
    title: 'Get',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   697
    newWindow: '',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   698
    auto:  false 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   699
};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   700
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   701
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   702
<script src="../assets/yui/test-runner.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   703
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   704
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   705
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   706
</body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   707
</html>