update YUI to 2.8.0r4
This commit is contained in:
parent
27f474ec64
commit
2d28e0c0ba
2007 changed files with 344487 additions and 210070 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,8 +1,12 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: cookie Cookie.js (YUI Library)</title>
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
|
@ -10,34 +14,40 @@
|
|||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
|
||||
<div id="hd">
|
||||
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
||||
<h3>cookie <span class="subtitle">2.6.0</span></h3>
|
||||
<p>
|
||||
<a href="./index.html">Yahoo! UI Library</a>
|
||||
> <a href="./module_cookie.html">cookie</a>
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>cookie <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_cookie.html" title="cookie">cookie</a>
|
||||
|
||||
> Cookie.js (source view)
|
||||
</p>
|
||||
|
||||
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form name="yui-classopts-form">
|
||||
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> <label for="showprivate">Show Private</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div id="srcout">
|
||||
<style>
|
||||
#doc3 #classopts { display:none; }
|
||||
#doc3 .classopts { display:none; }
|
||||
</style>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<span class="c"> * Utilities for cookie management</span>
|
||||
<span class="c"> * @namespace YAHOO.util</span>
|
||||
<span class="c"> * @module cookie</span>
|
||||
|
|
@ -59,7 +69,7 @@
|
|||
<span class="c"> * Creates a cookie string that can be assigned into document.cookie.</span>
|
||||
<span class="c"> * @param {String} name The name of the cookie.</span>
|
||||
<span class="c"> * @param {String} value The value of the cookie.</span>
|
||||
<span class="c"> * @param {encodeValue} encodeValue True to encode the value, false to leave as-is.</span>
|
||||
<span class="c"> * @param {Boolean} encodeValue True to encode the value, false to leave as-is.</span>
|
||||
<span class="c"> * @param {Object} options (Optional) Options for the cookie.</span>
|
||||
<span class="c"> * @return {String} The formatted cookie string.</span>
|
||||
<span class="c"> * @method _createCookieString</span>
|
||||
|
|
@ -67,26 +77,25 @@
|
|||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">_createCookieString</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">name</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">value</span> <span class="c">/*:Variant*/</span><span class="o">,</span> <span class="nx">encodeValue</span> <span class="c">/*:Boolean*/</span><span class="o">,</span> <span class="nx">options</span> <span class="c">/*:Object*/</span><span class="o">)</span> <span class="c">/*:String*/</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">//shortcut</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">;</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">text</span> <span class="c">/*:String*/</span> <span class="o">=</span> <span class="nb">encodeURIComponent</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">+</span> <span class="s2">"="</span> <span class="o">+</span> <span class="o">(</span><span class="nx">encodeValue</span> <span class="o">?</span> <span class="nb">encodeURIComponent</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">:</span> <span class="nx">value</span><span class="o">);</span>
|
||||
|
||||
|
||||
<span class="c">//shortcut</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">,</span>
|
||||
<span class="nx">text</span> <span class="o">=</span> <span class="nb">encodeURIComponent</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">+</span> <span class="s2">"="</span> <span class="o">+</span> <span class="o">(</span><span class="nx">encodeValue</span> <span class="o">?</span> <span class="nb">encodeURIComponent</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">:</span> <span class="nx">value</span><span class="o">);</span>
|
||||
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isObject</span><span class="o">(</span><span class="nx">options</span><span class="o">)){</span>
|
||||
<span class="c">//expiration date</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">options</span><span class="o">.</span><span class="nx">expires</span> <span class="k">instanceof</span> <span class="nb">Date</span><span class="o">){</span>
|
||||
<span class="nx">text</span> <span class="o">+=</span> <span class="s2">"; expires="</span> <span class="o">+</span> <span class="nx">options</span><span class="o">.</span><span class="nx">expires</span><span class="o">.</span><span class="nx">toGMTString</span><span class="o">();</span>
|
||||
<span class="nx">text</span> <span class="o">+=</span> <span class="s2">"; expires="</span> <span class="o">+</span> <span class="nx">options</span><span class="o">.</span><span class="nx">expires</span><span class="o">.</span><span class="nx">toUTCString</span><span class="o">();</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="c">//path</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">options</span><span class="o">.</span><span class="nx">path</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">options</span><span class="o">.</span><span class="nx">path</span> <span class="o">!=</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">options</span><span class="o">.</span><span class="nx">path</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">options</span><span class="o">.</span><span class="nx">path</span> <span class="o">!==</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="nx">text</span> <span class="o">+=</span> <span class="s2">"; path="</span> <span class="o">+</span> <span class="nx">options</span><span class="o">.</span><span class="nx">path</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="c">//domain</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">options</span><span class="o">.</span><span class="nx">domain</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">options</span><span class="o">.</span><span class="nx">domain</span> <span class="o">!=</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">options</span><span class="o">.</span><span class="nx">domain</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">options</span><span class="o">.</span><span class="nx">domain</span> <span class="o">!==</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="nx">text</span> <span class="o">+=</span> <span class="s2">"; domain="</span> <span class="o">+</span> <span class="nx">options</span><span class="o">.</span><span class="nx">domain</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
|
@ -103,7 +112,7 @@
|
|||
<span class="c"> * Formats a cookie value for an object containing multiple values.</span>
|
||||
<span class="c"> * @param {Object} hash An object of key-value pairs to create a string for.</span>
|
||||
<span class="c"> * @return {String} A string suitable for use as a cookie value.</span>
|
||||
<span class="c"> * @method _createCookieHash</span>
|
||||
<span class="c"> * @method _createCookieHashString</span>
|
||||
<span class="c"> * @private</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
|
|
@ -116,7 +125,7 @@
|
|||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie._createCookieHashString(): Argument must be an object."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">text</span> <span class="c">/*:Array*/</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Array</span><span class="o">();</span>
|
||||
<span class="k">var</span> <span class="nx">text</span> <span class="c">/*:Array*/</span> <span class="o">=</span> <span class="o">[];</span>
|
||||
|
||||
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">key</span> <span class="k">in</span> <span class="nx">hash</span><span class="o">){</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="nx">hash</span><span class="o">,</span> <span class="nx">key</span><span class="o">)</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isFunction</span><span class="o">(</span><span class="nx">hash</span><span class="o">[</span><span class="nx">key</span><span class="o">])</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isUndefined</span><span class="o">(</span><span class="nx">hash</span><span class="o">[</span><span class="nx">key</span><span class="o">])){</span>
|
||||
|
|
@ -136,10 +145,10 @@
|
|||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">_parseCookieHash</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">text</span> <span class="c">/*:String*/</span><span class="o">)</span> <span class="c">/*:Object*/</span> <span class="o">{</span>
|
||||
|
||||
|
||||
<span class="k">var</span> <span class="nx">hashParts</span> <span class="c">/*:Array*/</span> <span class="o">=</span> <span class="nx">text</span><span class="o">.</span><span class="nx">split</span><span class="o">(</span><span class="s2">"&"</span><span class="o">),</span>
|
||||
<span class="nx">hashPart</span> <span class="c">/*:Array*/</span> <span class="o">=</span> <span class="kc">null</span><span class="o">,</span>
|
||||
<span class="nx">hash</span> <span class="c">/*:Object*/</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Object</span><span class="o">();</span>
|
||||
<span class="nx">hash</span> <span class="c">/*:Object*/</span> <span class="o">=</span> <span class="o">{};</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">text</span><span class="o">.</span><span class="nx">length</span> <span class="o">></span> <span class="m">0</span><span class="o">){</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">,</span> <span class="nx">len</span><span class="o">=</span><span class="nx">hashParts</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="o">;</span> <span class="nx">i</span><span class="o">++){</span>
|
||||
|
|
@ -149,7 +158,7 @@
|
|||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">hash</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Parses a cookie string into an object representing all accessible cookies.</span>
|
||||
|
|
@ -161,58 +170,94 @@
|
|||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">_parseCookieString</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">text</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">decode</span> <span class="c">/*:Boolean*/</span><span class="o">)</span> <span class="c">/*:Object*/</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">cookies</span> <span class="c">/*:Object*/</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Object</span><span class="o">();</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">cookies</span> <span class="c">/*:Object*/</span> <span class="o">=</span> <span class="o">{};</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">text</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">text</span><span class="o">.</span><span class="nx">length</span> <span class="o">></span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
|
||||
<span class="k">var</span> <span class="nx">decodeValue</span> <span class="o">=</span> <span class="o">(</span><span class="nx">decode</span> <span class="o">===</span> <span class="kc">false</span> <span class="o">?</span> <span class="k">function</span><span class="o">(</span><span class="nx">s</span><span class="o">){</span><span class="k">return</span> <span class="nx">s</span><span class="o">;}</span> <span class="o">:</span> <span class="nb">decodeURIComponent</span><span class="o">);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="sr">/[^=]+=[^=;]?(?:; [^=]+=[^=]?)?/</span><span class="o">.</span><span class="nx">test</span><span class="o">(</span><span class="nx">text</span><span class="o">)){</span>
|
||||
<span class="k">var</span> <span class="nx">cookieParts</span> <span class="c">/*:Array*/</span> <span class="o">=</span> <span class="nx">text</span><span class="o">.</span><span class="nx">split</span><span class="o">(</span><span class="sr">/;\s/g</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">cookieName</span> <span class="c">/*:String*/</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">cookieValue</span> <span class="c">/*:String*/</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">cookieNameValue</span> <span class="c">/*:Array*/</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">cookieParts</span> <span class="c">/*:Array*/</span> <span class="o">=</span> <span class="nx">text</span><span class="o">.</span><span class="nx">split</span><span class="o">(</span><span class="sr">/;\s/g</span><span class="o">),</span>
|
||||
<span class="nx">cookieName</span> <span class="c">/*:String*/</span> <span class="o">=</span> <span class="kc">null</span><span class="o">,</span>
|
||||
<span class="nx">cookieValue</span> <span class="c">/*:String*/</span> <span class="o">=</span> <span class="kc">null</span><span class="o">,</span>
|
||||
<span class="nx">cookieNameValue</span> <span class="c">/*:Array*/</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
||||
|
||||
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">,</span> <span class="nx">len</span><span class="o">=</span><span class="nx">cookieParts</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="o">;</span> <span class="nx">i</span><span class="o">++){</span>
|
||||
|
||||
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">,</span> <span class="nx">len</span><span class="o">=</span><span class="nx">cookieParts</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="o">;</span> <span class="nx">i</span><span class="o">++){</span>
|
||||
|
||||
<span class="c">//check for normally-formatted cookie (name-value)</span>
|
||||
<span class="c"></span> <span class="nx">cookieNameValue</span> <span class="o">=</span> <span class="nx">cookieParts</span><span class="o">[</span><span class="nx">i</span><span class="o">].</span><span class="nx">match</span><span class="o">(</span><span class="sr">/([^=]+)=/i</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">cookieNameValue</span> <span class="k">instanceof</span> <span class="nb">Array</span><span class="o">){</span>
|
||||
<span class="c">//check for normally-formatted cookie (name-value)</span>
|
||||
<span class="c"></span> <span class="nx">cookieNameValue</span> <span class="o">=</span> <span class="nx">cookieParts</span><span class="o">[</span><span class="nx">i</span><span class="o">].</span><span class="nx">match</span><span class="o">(</span><span class="sr">/([^=]+)=/i</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">cookieNameValue</span> <span class="k">instanceof</span> <span class="nb">Array</span><span class="o">){</span>
|
||||
<span class="k">try</span> <span class="o">{</span>
|
||||
<span class="nx">cookieName</span> <span class="o">=</span> <span class="nb">decodeURIComponent</span><span class="o">(</span><span class="nx">cookieNameValue</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
||||
<span class="nx">cookieValue</span> <span class="o">=</span> <span class="nx">decodeValue</span><span class="o">(</span><span class="nx">cookieParts</span><span class="o">[</span><span class="nx">i</span><span class="o">].</span><span class="nx">substring</span><span class="o">(</span><span class="nx">cookieNameValue</span><span class="o">[</span><span class="m">1</span><span class="o">].</span><span class="nx">length</span><span class="o">+</span><span class="m">1</span><span class="o">));</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="c">//means the cookie does not have an "=", so treat it as a boolean flag</span>
|
||||
<span class="c"></span> <span class="nx">cookieName</span> <span class="o">=</span> <span class="nb">decodeURIComponent</span><span class="o">(</span><span class="nx">cookieParts</span><span class="o">[</span><span class="nx">i</span><span class="o">]);</span>
|
||||
<span class="nx">cookieValue</span> <span class="o">=</span> <span class="nx">cookieName</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="nx">cookies</span><span class="o">[</span><span class="nx">cookieName</span><span class="o">]</span> <span class="o">=</span> <span class="nx">cookieValue</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">catch</span> <span class="o">(</span><span class="nx">ex</span><span class="o">){</span>
|
||||
<span class="c">//ignore the entire cookie - encoding is likely invalid</span>
|
||||
<span class="c"></span> <span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="c">//means the cookie does not have an "=", so treat it as a boolean flag</span>
|
||||
<span class="c"></span> <span class="nx">cookieName</span> <span class="o">=</span> <span class="nb">decodeURIComponent</span><span class="o">(</span><span class="nx">cookieParts</span><span class="o">[</span><span class="nx">i</span><span class="o">]);</span>
|
||||
<span class="nx">cookieValue</span> <span class="o">=</span> <span class="s2">""</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="nx">cookies</span><span class="o">[</span><span class="nx">cookieName</span><span class="o">]</span> <span class="o">=</span> <span class="nx">cookieValue</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">cookies</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">//-------------------------------------------------------------------------</span>
|
||||
<span class="c"></span> <span class="c">// Public Methods</span>
|
||||
<span class="c"></span> <span class="c">//-------------------------------------------------------------------------</span>
|
||||
<span class="c"></span>
|
||||
<span class="c"></span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines if the cookie with the given name exists. This is useful for</span>
|
||||
<span class="c"> * Boolean cookies (those that do not follow the name=value convention).</span>
|
||||
<span class="c"> * @param {String} name The name of the cookie to check.</span>
|
||||
<span class="c"> * @return {Boolean} True if the cookie exists, false if not.</span>
|
||||
<span class="c"> * @method exists</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">exists</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">||</span> <span class="nx">name</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.exists(): Cookie name must be a non-empty string."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">cookies</span> <span class="c">/*:Object*/</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseCookieString</span><span class="o">(</span><span class="nb">document</span><span class="o">.</span><span class="nx">cookie</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">cookies</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="nx">name</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Returns the cookie value for the given name.</span>
|
||||
<span class="c"> * @param {String} name The name of the cookie to retrieve.</span>
|
||||
<span class="c"> * @param {Function} converter (Optional) A function to run on the value before returning</span>
|
||||
<span class="c"> * it. The function is not used if the cookie doesn't exist.</span>
|
||||
<span class="c"> * @param {Object|Function} options (Optional) An object containing one or more</span>
|
||||
<span class="c"> * cookie options: raw (true/false) and converter (a function).</span>
|
||||
<span class="c"> * The converter function is run on the value before returning it. The</span>
|
||||
<span class="c"> * function is not used if the cookie doesn't exist. The function can be</span>
|
||||
<span class="c"> * passed instead of the options object for backwards compatibility.</span>
|
||||
<span class="c"> * @return {Variant} If no converter is specified, returns a string or null if</span>
|
||||
<span class="c"> * the cookie doesn't exist. If the converter is specified, returns the value</span>
|
||||
<span class="c"> * returned from the converter or null if the cookie doesn't exist.</span>
|
||||
<span class="c"> * @method get</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">get</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">name</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">converter</span> <span class="c">/*:Function*/</span><span class="o">)</span> <span class="c">/*:Variant*/</span><span class="o">{</span>
|
||||
<span class="nx">get</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">name</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">options</span> <span class="c">/*:Variant*/</span><span class="o">)</span> <span class="c">/*:Variant*/</span><span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">cookies</span> <span class="c">/*:Object*/</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseCookieString</span><span class="o">(</span><span class="nb">document</span><span class="o">.</span><span class="nx">cookie</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">,</span>
|
||||
<span class="nx">converter</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isFunction</span><span class="o">(</span><span class="nx">options</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">converter</span> <span class="o">=</span> <span class="nx">options</span><span class="o">;</span>
|
||||
<span class="nx">options</span> <span class="o">=</span> <span class="o">{};</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isObject</span><span class="o">(</span><span class="nx">options</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">converter</span> <span class="o">=</span> <span class="nx">options</span><span class="o">.</span><span class="nx">converter</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">options</span> <span class="o">=</span> <span class="o">{};</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">cookies</span> <span class="c">/*:Object*/</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseCookieString</span><span class="o">(</span><span class="nb">document</span><span class="o">.</span><span class="nx">cookie</span><span class="o">,</span> <span class="o">!</span><span class="nx">options</span><span class="o">.</span><span class="nx">raw</span><span class="o">);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">||</span> <span class="nx">name</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.get(): Cookie name must be a non-empty string."</span><span class="o">);</span>
|
||||
|
|
@ -242,11 +287,11 @@
|
|||
<span class="c"> * @method getSub</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getSub</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">name</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">subName</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">converter</span> <span class="c">/*:Function*/</span><span class="o">)</span> <span class="c">/*:Variant*/</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">hash</span> <span class="c">/*:Variant*/</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getSubs</span><span class="o">(</span><span class="nx">name</span><span class="o">);</span>
|
||||
|
||||
<span class="nx">getSub</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="nx">subName</span><span class="o">,</span> <span class="nx">converter</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">,</span>
|
||||
<span class="nx">hash</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getSubs</span><span class="o">(</span><span class="nx">name</span><span class="o">);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">hash</span> <span class="o">!==</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">subName</span><span class="o">)</span> <span class="o">||</span> <span class="nx">subName</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
|
|
@ -255,8 +300,8 @@
|
|||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isUndefined</span><span class="o">(</span><span class="nx">hash</span><span class="o">[</span><span class="nx">subName</span><span class="o">])){</span>
|
||||
<span class="k">return</span> <span class="kc">null</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isFunction</span><span class="o">(</span><span class="nx">converter</span><span class="o">)){</span>
|
||||
<span class="k">return</span> <span class="nx">hash</span><span class="o">[</span><span class="nx">subName</span><span class="o">];</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
|
|
@ -273,18 +318,20 @@
|
|||
<span class="c"> * @param {String} name The name of the cookie to retrieve.</span>
|
||||
<span class="c"> * @return {Object} An object of name-value pairs if the cookie with the given name</span>
|
||||
<span class="c"> * exists, null if it does not.</span>
|
||||
<span class="c"> * @method getHash</span>
|
||||
<span class="c"> * @method getSubs</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getSubs</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">name</span> <span class="c">/*:String*/</span><span class="o">)</span> <span class="c">/*:Object*/</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">isString</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">;</span>
|
||||
|
||||
<span class="c">//check cookie name</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(!</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">||</span> <span class="nx">name</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(!</span><span class="nx">isString</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">||</span> <span class="nx">name</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.getSubs(): Cookie name must be a non-empty string."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">cookies</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseCookieString</span><span class="o">(</span><span class="nb">document</span><span class="o">.</span><span class="nx">cookie</span><span class="o">,</span> <span class="kc">false</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">cookies</span><span class="o">[</span><span class="nx">name</span><span class="o">])){</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">isString</span><span class="o">(</span><span class="nx">cookies</span><span class="o">[</span><span class="nx">name</span><span class="o">])){</span>
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">_parseCookieHash</span><span class="o">(</span><span class="nx">cookies</span><span class="o">[</span><span class="nx">name</span><span class="o">]);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="kc">null</span><span class="o">;</span>
|
||||
|
|
@ -295,7 +342,7 @@
|
|||
<span class="c"> * sometime in the past.</span>
|
||||
<span class="c"> * @param {String} name The name of the cookie to remove.</span>
|
||||
<span class="c"> * @param {Object} options (Optional) An object containing one or more</span>
|
||||
<span class="c"> * cookie options: path (a string), domain (a string), </span>
|
||||
<span class="c"> * cookie options: path (a string), domain (a string),</span>
|
||||
<span class="c"> * and secure (true/false). The expires option will be overwritten</span>
|
||||
<span class="c"> * by the method.</span>
|
||||
<span class="c"> * @return {String} The created cookie string.</span>
|
||||
|
|
@ -309,35 +356,41 @@
|
|||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.remove(): Cookie name must be a non-empty string."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">//set options</span>
|
||||
<span class="c"></span> <span class="nx">options</span> <span class="o">=</span> <span class="nx">options</span> <span class="o">||</span> <span class="o">{};</span>
|
||||
<span class="nx">options</span><span class="o">.</span><span class="nx">expires</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="m">0</span><span class="o">);</span>
|
||||
<span class="c">//set options - clone options so the original isn't affected</span>
|
||||
<span class="c"></span> <span class="nx">options</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">merge</span><span class="o">(</span><span class="nx">options</span> <span class="o">||</span> <span class="o">{},</span> <span class="o">{</span>
|
||||
<span class="nx">expires</span><span class="o">:</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="m">0</span><span class="o">)</span>
|
||||
<span class="o">});</span>
|
||||
|
||||
<span class="c">//set cookie</span>
|
||||
<span class="c"></span> <span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="s2">""</span><span class="o">,</span> <span class="nx">options</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Removes a sub cookie with a given name.</span>
|
||||
<span class="c"> * Removes a subcookie with a given name. Removing the last subcookie</span>
|
||||
<span class="c"> * won't remove the entire cookie unless options.removeIfEmpty is true.</span>
|
||||
<span class="c"> * @param {String} name The name of the cookie in which the subcookie exists.</span>
|
||||
<span class="c"> * @param {String} subName The name of the subcookie to remove.</span>
|
||||
<span class="c"> * @param {Object} options (Optional) An object containing one or more</span>
|
||||
<span class="c"> * cookie options: path (a string), domain (a string), expires (a Date object),</span>
|
||||
<span class="c"> * and secure (true/false). This must be the same settings as the original</span>
|
||||
<span class="c"> * subcookie.</span>
|
||||
<span class="c"> * removeIfEmpty (true/false), and secure (true/false). This must be the same</span>
|
||||
<span class="c"> * settings as the original subcookie.</span>
|
||||
<span class="c"> * @return {String} The created cookie string.</span>
|
||||
<span class="c"> * @method removeSub</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">removeSub</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">name</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">subName</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">options</span> <span class="c">/*:Object*/</span><span class="o">)</span> <span class="c">/*:String*/</span> <span class="o">{</span>
|
||||
|
||||
|
||||
<span class="k">var</span> <span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">;</span>
|
||||
|
||||
<span class="nx">options</span> <span class="o">=</span> <span class="nx">options</span> <span class="o">||</span> <span class="o">{};</span>
|
||||
|
||||
<span class="c">//check cookie name</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(!</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">||</span> <span class="nx">name</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">||</span> <span class="nx">name</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.removeSub(): Cookie name must be a non-empty string."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">//check subcookie name</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(!</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">subName</span><span class="o">)</span> <span class="o">||</span> <span class="nx">subName</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">subName</span><span class="o">)</span> <span class="o">||</span> <span class="nx">subName</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.removeSub(): Subcookie name must be a non-empty string."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
|
@ -345,32 +398,46 @@
|
|||
<span class="c"></span> <span class="k">var</span> <span class="nx">subs</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getSubs</span><span class="o">(</span><span class="nx">name</span><span class="o">);</span>
|
||||
|
||||
<span class="c">//delete the indicated subcookie</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isObject</span><span class="o">(</span><span class="nx">subs</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="nx">subs</span><span class="o">,</span> <span class="nx">subName</span><span class="o">)){</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isObject</span><span class="o">(</span><span class="nx">subs</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">lang</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="nx">subs</span><span class="o">,</span> <span class="nx">subName</span><span class="o">)){</span>
|
||||
<span class="nx">delete</span> <span class="nx">subs</span><span class="o">[</span><span class="nx">subName</span><span class="o">];</span>
|
||||
|
||||
<span class="c">//reset the cookie</span>
|
||||
<span class="c"></span> <span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">setSubs</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="nx">subs</span><span class="o">,</span> <span class="nx">options</span><span class="o">);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">options</span><span class="o">.</span><span class="nx">removeIfEmpty</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">//reset the cookie</span>
|
||||
<span class="c"></span>
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">setSubs</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="nx">subs</span><span class="o">,</span> <span class="nx">options</span><span class="o">);</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="c">//reset the cookie if there are subcookies left, else remove</span>
|
||||
<span class="c"></span> <span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">key</span> <span class="k">in</span> <span class="nx">subs</span><span class="o">){</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="nx">subs</span><span class="o">,</span> <span class="nx">key</span><span class="o">)</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isFunction</span><span class="o">(</span><span class="nx">subs</span><span class="o">[</span><span class="nx">key</span><span class="o">])</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isUndefined</span><span class="o">(</span><span class="nx">subs</span><span class="o">[</span><span class="nx">key</span><span class="o">])){</span>
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">setSubs</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="nx">subs</span><span class="o">,</span> <span class="nx">options</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">remove</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="nx">options</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="s2">""</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">},</span>
|
||||
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Sets a cookie with a given name and value.</span>
|
||||
<span class="c"> * @param {String} name The name of the cookie to set.</span>
|
||||
<span class="c"> * @param {Variant} value The value to set for the cookie.</span>
|
||||
<span class="c"> * @param {Object} options (Optional) An object containing one or more</span>
|
||||
<span class="c"> * cookie options: path (a string), domain (a string), expires (a Date object),</span>
|
||||
<span class="c"> * and secure (true/false).</span>
|
||||
<span class="c"> * raw (true/false), and secure (true/false).</span>
|
||||
<span class="c"> * @return {String} The created cookie string.</span>
|
||||
<span class="c"> * @method set</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">set</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">name</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">value</span> <span class="c">/*:Variant*/</span><span class="o">,</span> <span class="nx">options</span> <span class="c">/*:Object*/</span><span class="o">)</span> <span class="c">/*:String*/</span> <span class="o">{</span>
|
||||
|
||||
|
||||
<span class="k">var</span> <span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">;</span>
|
||||
|
||||
|
||||
<span class="nx">options</span> <span class="o">=</span> <span class="nx">options</span> <span class="o">||</span> <span class="o">{};</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">name</span><span class="o">)){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.set(): Cookie name must be a string."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
|
@ -379,12 +446,11 @@
|
|||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.set(): Value cannot be undefined."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="k">var</span> <span class="nx">text</span> <span class="c">/*:String*/</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_createCookieString</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="nx">value</span><span class="o">,</span> <span class="kc">true</span><span class="o">,</span> <span class="nx">options</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">text</span> <span class="c">/*:String*/</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_createCookieString</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="nx">value</span><span class="o">,</span> <span class="o">!</span><span class="nx">options</span><span class="o">.</span><span class="nx">raw</span><span class="o">,</span> <span class="nx">options</span><span class="o">);</span>
|
||||
<span class="nb">document</span><span class="o">.</span><span class="nx">cookie</span> <span class="o">=</span> <span class="nx">text</span><span class="o">;</span>
|
||||
<span class="k">return</span> <span class="nx">text</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Sets a sub cookie with a given name to a particular value.</span>
|
||||
<span class="c"> * @param {String} name The name of the cookie to set.</span>
|
||||
|
|
@ -400,11 +466,11 @@
|
|||
<span class="nx">setSub</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">name</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">subName</span> <span class="c">/*:String*/</span><span class="o">,</span> <span class="nx">value</span> <span class="c">/*:Variant*/</span><span class="o">,</span> <span class="nx">options</span> <span class="c">/*:Object*/</span><span class="o">)</span> <span class="c">/*:String*/</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">;</span>
|
||||
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">name</span><span class="o">)</span> <span class="o">||</span> <span class="nx">name</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.setSub(): Cookie name must be a non-empty string."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">subName</span><span class="o">)</span> <span class="o">||</span> <span class="nx">subName</span> <span class="o">===</span> <span class="s2">""</span><span class="o">){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.setSub(): Subcookie name must be a non-empty string."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
|
@ -412,14 +478,14 @@
|
|||
<span class="k">if</span> <span class="o">(</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isUndefined</span><span class="o">(</span><span class="nx">value</span><span class="o">)){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.setSub(): Subcookie value cannot be undefined."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="k">var</span> <span class="nx">hash</span> <span class="c">/*:Object*/</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getSubs</span><span class="o">(</span><span class="nx">name</span><span class="o">);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isObject</span><span class="o">(</span><span class="nx">hash</span><span class="o">)){</span>
|
||||
<span class="nx">hash</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Object</span><span class="o">();</span>
|
||||
<span class="nx">hash</span> <span class="o">=</span> <span class="o">{};</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">hash</span><span class="o">[</span><span class="nx">subName</span><span class="o">]</span> <span class="o">=</span> <span class="nx">value</span><span class="o">;</span>
|
||||
<span class="nx">hash</span><span class="o">[</span><span class="nx">subName</span><span class="o">]</span> <span class="o">=</span> <span class="nx">value</span><span class="o">;</span>
|
||||
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">setSubs</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="nx">hash</span><span class="o">,</span> <span class="nx">options</span><span class="o">);</span>
|
||||
|
||||
|
|
@ -447,111 +513,86 @@
|
|||
<span class="k">if</span> <span class="o">(!</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isObject</span><span class="o">(</span><span class="nx">value</span><span class="o">)){</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"Cookie.setSubs(): Cookie value must be an object."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="k">var</span> <span class="nx">text</span> <span class="c">/*:String*/</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_createCookieString</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">_createCookieHashString</span><span class="o">(</span><span class="nx">value</span><span class="o">),</span> <span class="kc">false</span><span class="o">,</span> <span class="nx">options</span><span class="o">);</span>
|
||||
<span class="nb">document</span><span class="o">.</span><span class="nx">cookie</span> <span class="o">=</span> <span class="nx">text</span><span class="o">;</span>
|
||||
<span class="k">return</span> <span class="nx">text</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">text</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">};</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div class="module">
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
|
||||
<li class=""><a href="module_animation.html">animation</a></li>
|
||||
|
||||
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
||||
|
||||
<li class=""><a href="module_button.html">button</a></li>
|
||||
|
||||
<li class=""><a href="module_calendar.html">calendar</a></li>
|
||||
|
||||
<li class=""><a href="module_carousel.html">carousel</a></li>
|
||||
|
||||
<li class=""><a href="module_charts.html">charts</a></li>
|
||||
|
||||
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
||||
|
||||
<li class=""><a href="module_connection.html">connection</a></li>
|
||||
|
||||
<li class=""><a href="module_container.html">container</a></li>
|
||||
|
||||
<li class="selected"><a href="module_cookie.html">cookie</a></li>
|
||||
|
||||
<li class=""><a href="module_datasource.html">datasource</a></li>
|
||||
|
||||
<li class=""><a href="module_datatable.html">datatable</a></li>
|
||||
|
||||
<li class=""><a href="module_dom.html">dom</a></li>
|
||||
|
||||
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
||||
|
||||
<li class=""><a href="module_editor.html">editor</a></li>
|
||||
|
||||
<li class=""><a href="module_element.html">element</a></li>
|
||||
|
||||
<li class=""><a href="module_event.html">event</a></li>
|
||||
|
||||
<li class=""><a href="module_get.html">get</a></li>
|
||||
|
||||
<li class=""><a href="module_history.html">history</a></li>
|
||||
|
||||
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
||||
|
||||
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
||||
|
||||
<li class=""><a href="module_json.html">json</a></li>
|
||||
|
||||
<li class=""><a href="module_layout.html">layout</a></li>
|
||||
|
||||
<li class=""><a href="module_logger.html">logger</a></li>
|
||||
|
||||
<li class=""><a href="module_menu.html">menu</a></li>
|
||||
|
||||
<li class=""><a href="module_paginator.html">paginator</a></li>
|
||||
|
||||
<li class=""><a href="module_profiler.html">profiler</a></li>
|
||||
|
||||
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
||||
|
||||
<li class=""><a href="module_resize.html">resize</a></li>
|
||||
|
||||
<li class=""><a href="module_selector.html">selector</a></li>
|
||||
|
||||
<li class=""><a href="module_slider.html">slider</a></li>
|
||||
|
||||
<li class=""><a href="module_tabview.html">tabview</a></li>
|
||||
|
||||
<li class=""><a href="module_treeview.html">treeview</a></li>
|
||||
|
||||
<li class=""><a href="module_uploader.html">uploader</a></li>
|
||||
|
||||
<li class=""><a href="module_yahoo.html">yahoo</a></li>
|
||||
|
||||
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
||||
|
||||
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class="selected"><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="classList" class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="YAHOO.util.Cookie.html">YAHOO.util.Cookie</a></li>
|
||||
<li class=""><a href="YAHOO.util.Cookie.html" title="YAHOO.util.Cookie">YAHOO.util.Cookie</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class="selected"><a href="Cookie.js.html">Cookie.js</a></li>
|
||||
<li class="selected"><a href="Cookie.js.html" title="Cookie.js">Cookie.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -564,8 +605,11 @@
|
|||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2008 Yahoo! Inc. All rights reserved.
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [{"access": "private", "host": "YAHOO.util.Cookie", "name": "_createCookieHashString", "url": "YAHOO.util.Cookie.html#method__createCookieHashString", "type": "method"}, {"access": "private", "host": "YAHOO.util.Cookie", "name": "_createCookieString", "url": "YAHOO.util.Cookie.html#method__createCookieString", "type": "method"}, {"access": "", "host": "YAHOO.util.Cookie", "name": "exists", "url": "YAHOO.util.Cookie.html#method_exists", "type": "method"}, {"access": "", "host": "YAHOO.util.Cookie", "name": "get", "url": "YAHOO.util.Cookie.html#method_get", "type": "method"}, {"access": "", "host": "YAHOO.util.Cookie", "name": "getSub", "url": "YAHOO.util.Cookie.html#method_getSub", "type": "method"}, {"access": "", "host": "YAHOO.util.Cookie", "name": "getSubs", "url": "YAHOO.util.Cookie.html#method_getSubs", "type": "method"}, {"access": "private", "host": "YAHOO.util.Cookie", "name": "_parseCookieHash", "url": "YAHOO.util.Cookie.html#method__parseCookieHash", "type": "method"}, {"access": "private", "host": "YAHOO.util.Cookie", "name": "_parseCookieString", "url": "YAHOO.util.Cookie.html#method__parseCookieString", "type": "method"}, {"access": "", "host": "YAHOO.util.Cookie", "name": "remove", "url": "YAHOO.util.Cookie.html#method_remove", "type": "method"}, {"access": "", "host": "YAHOO.util.Cookie", "name": "removeSub", "url": "YAHOO.util.Cookie.html#method_removeSub", "type": "method"}, {"access": "", "host": "YAHOO.util.Cookie", "name": "set", "url": "YAHOO.util.Cookie.html#method_set", "type": "method"}, {"access": "", "host": "YAHOO.util.Cookie", "name": "setSub", "url": "YAHOO.util.Cookie.html#method_setSub", "type": "method"}, {"access": "", "host": "YAHOO.util.Cookie", "name": "setSubs", "url": "YAHOO.util.Cookie.html#method_setSubs", "type": "method"}];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,8 +1,12 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<title>API: calendar DateMath.js (YUI Library)</title>
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: datemath DateMath.js (YUI Library)</title>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
|
@ -10,534 +14,513 @@
|
|||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
|
||||
<div id="hd">
|
||||
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
||||
<h3>Calendar <span class="subtitle">2.6.0</span></h3>
|
||||
<p>
|
||||
<a href="./index.html">Yahoo! UI Library</a>
|
||||
> <a href="./module_calendar.html">calendar</a>
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>datemath <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_datemath.html" title="datemath">datemath</a>
|
||||
|
||||
> DateMath.js (source view)
|
||||
</p>
|
||||
|
||||
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form name="yui-classopts-form">
|
||||
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> <label for="showprivate">Show Private</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div id="srcout">
|
||||
<style>
|
||||
#doc3 #classopts { display:none; }
|
||||
#doc3 .classopts { display:none; }
|
||||
</style>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<span class="c">* The datemath module provides utility methods for basic JavaScript Date object manipulation and </span>
|
||||
<span class="c">* comparison. </span>
|
||||
<span class="c">* </span>
|
||||
<span class="c">* @module datemath</span>
|
||||
<span class="c">*/</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c">* YAHOO.widget.DateMath is used for simple date manipulation. The class is a static utility</span>
|
||||
<span class="c">* used for adding, subtracting, and comparing dates.</span>
|
||||
<span class="c">* @namespace YAHOO.widget</span>
|
||||
<span class="c">* @class DateMath</span>
|
||||
<span class="c">*/</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">DateMath</span> <span class="o">=</span> <span class="o">{</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing Day</span>
|
||||
<span class="c"> * @property DAY</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type String</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">DAY</span> <span class="o">:</span> <span class="s2">"D"</span><span class="o">,</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing Day</span>
|
||||
<span class="c"> * @property DAY</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type String</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">DAY</span> <span class="o">:</span> <span class="s2">"D"</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing Week</span>
|
||||
<span class="c"> * @property WEEK</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type String</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">WEEK</span> <span class="o">:</span> <span class="s2">"W"</span><span class="o">,</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing Week</span>
|
||||
<span class="c"> * @property WEEK</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type String</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">WEEK</span> <span class="o">:</span> <span class="s2">"W"</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing Year</span>
|
||||
<span class="c"> * @property YEAR</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type String</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">YEAR</span> <span class="o">:</span> <span class="s2">"Y"</span><span class="o">,</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing Year</span>
|
||||
<span class="c"> * @property YEAR</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type String</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">YEAR</span> <span class="o">:</span> <span class="s2">"Y"</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing Month</span>
|
||||
<span class="c"> * @property MONTH</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type String</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">MONTH</span> <span class="o">:</span> <span class="s2">"M"</span><span class="o">,</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing Month</span>
|
||||
<span class="c"> * @property MONTH</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type String</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">MONTH</span> <span class="o">:</span> <span class="s2">"M"</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing one day, in milliseconds</span>
|
||||
<span class="c"> * @property ONE_DAY_MS</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type Number</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">ONE_DAY_MS</span> <span class="o">:</span> <span class="m">1000</span><span class="o">*</span><span class="m">60</span><span class="o">*</span><span class="m">60</span><span class="o">*</span><span class="m">24</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing the date in first week of January</span>
|
||||
<span class="c"> * which identifies the first week of the year.</span>
|
||||
<span class="c"> * <p></span>
|
||||
<span class="c"> * In the U.S, Jan 1st is normally used based on a Sunday start of week.</span>
|
||||
<span class="c"> * ISO 8601, used widely throughout Europe, uses Jan 4th, based on a Monday start of week.</span>
|
||||
<span class="c"> * </p></span>
|
||||
<span class="c"> * @property WEEK_ONE_JAN_DATE</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @type Number</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">WEEK_ONE_JAN_DATE</span> <span class="o">:</span> <span class="m">1</span><span class="o">,</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing one day, in milliseconds</span>
|
||||
<span class="c"> * @property ONE_DAY_MS</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @final</span>
|
||||
<span class="c"> * @type Number</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">ONE_DAY_MS</span> <span class="o">:</span> <span class="m">1000</span><span class="o">*</span><span class="m">60</span><span class="o">*</span><span class="m">60</span><span class="o">*</span><span class="m">24</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Constant field representing the date in first week of January</span>
|
||||
<span class="c"> * which identifies the first week of the year.</span>
|
||||
<span class="c"> * <p></span>
|
||||
<span class="c"> * In the U.S, Jan 1st is normally used based on a Sunday start of week.</span>
|
||||
<span class="c"> * ISO 8601, used widely throughout Europe, uses Jan 4th, based on a Monday start of week.</span>
|
||||
<span class="c"> * </p></span>
|
||||
<span class="c"> * @property WEEK_ONE_JAN_DATE</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @type Number</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">WEEK_ONE_JAN_DATE</span> <span class="o">:</span> <span class="m">1</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Adds the specified amount of time to the this instance.</span>
|
||||
<span class="c"> * @method add</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date object to perform addition on</span>
|
||||
<span class="c"> * @param {String} field The field constant to be used for performing addition.</span>
|
||||
<span class="c"> * @param {Number} amount The number of units (measured in the field constant) to add to the date.</span>
|
||||
<span class="c"> * @return {Date} The resulting Date object</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">add</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">field</span><span class="o">,</span> <span class="nx">amount</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">d</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getTime</span><span class="o">());</span>
|
||||
<span class="nx">switch</span> <span class="o">(</span><span class="nx">field</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">MONTH</span><span class="o">:</span>
|
||||
<span class="k">var</span> <span class="nx">newMonth</span> <span class="o">=</span> <span class="nx">date</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">+</span> <span class="nx">amount</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">years</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Adds the specified amount of time to the this instance.</span>
|
||||
<span class="c"> * @method add</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date object to perform addition on</span>
|
||||
<span class="c"> * @param {String} field The field constant to be used for performing addition.</span>
|
||||
<span class="c"> * @param {Number} amount The number of units (measured in the field constant) to add to the date.</span>
|
||||
<span class="c"> * @return {Date} The resulting Date object</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">add</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">field</span><span class="o">,</span> <span class="nx">amount</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">d</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getTime</span><span class="o">());</span>
|
||||
<span class="nx">switch</span> <span class="o">(</span><span class="nx">field</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">MONTH</span><span class="o">:</span>
|
||||
<span class="k">var</span> <span class="nx">newMonth</span> <span class="o">=</span> <span class="nx">date</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">+</span> <span class="nx">amount</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">years</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">newMonth</span> <span class="o"><</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">while</span> <span class="o">(</span><span class="nx">newMonth</span> <span class="o"><</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">newMonth</span> <span class="o">+=</span> <span class="m">12</span><span class="o">;</span>
|
||||
<span class="nx">years</span> <span class="o">-=</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">newMonth</span> <span class="o">></span> <span class="m">11</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">while</span> <span class="o">(</span><span class="nx">newMonth</span> <span class="o">></span> <span class="m">11</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">newMonth</span> <span class="o">-=</span> <span class="m">12</span><span class="o">;</span>
|
||||
<span class="nx">years</span> <span class="o">+=</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">newMonth</span> <span class="o"><</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">while</span> <span class="o">(</span><span class="nx">newMonth</span> <span class="o"><</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">newMonth</span> <span class="o">+=</span> <span class="m">12</span><span class="o">;</span>
|
||||
<span class="nx">years</span> <span class="o">-=</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">newMonth</span> <span class="o">></span> <span class="m">11</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">while</span> <span class="o">(</span><span class="nx">newMonth</span> <span class="o">></span> <span class="m">11</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">newMonth</span> <span class="o">-=</span> <span class="m">12</span><span class="o">;</span>
|
||||
<span class="nx">years</span> <span class="o">+=</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setMonth</span><span class="o">(</span><span class="nx">newMonth</span><span class="o">);</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setFullYear</span><span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">+</span> <span class="nx">years</span><span class="o">);</span>
|
||||
<span class="k">break</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">:</span>
|
||||
<span class="k">this</span><span class="o">.</span><span class="nx">_addDays</span><span class="o">(</span><span class="nx">d</span><span class="o">,</span> <span class="nx">amount</span><span class="o">);</span>
|
||||
<span class="c">// d.setDate(date.getDate() + amount);</span>
|
||||
<span class="c"></span> <span class="k">break</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">YEAR</span><span class="o">:</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setFullYear</span><span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">+</span> <span class="nx">amount</span><span class="o">);</span>
|
||||
<span class="k">break</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">WEEK</span><span class="o">:</span>
|
||||
<span class="k">this</span><span class="o">.</span><span class="nx">_addDays</span><span class="o">(</span><span class="nx">d</span><span class="o">,</span> <span class="o">(</span><span class="nx">amount</span> <span class="o">*</span> <span class="m">7</span><span class="o">));</span>
|
||||
<span class="c">// d.setDate(date.getDate() + (amount * 7));</span>
|
||||
<span class="c"></span> <span class="k">break</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">d</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setMonth</span><span class="o">(</span><span class="nx">newMonth</span><span class="o">);</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setFullYear</span><span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">+</span> <span class="nx">years</span><span class="o">);</span>
|
||||
<span class="k">break</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">:</span>
|
||||
<span class="k">this</span><span class="o">.</span><span class="nx">_addDays</span><span class="o">(</span><span class="nx">d</span><span class="o">,</span> <span class="nx">amount</span><span class="o">);</span>
|
||||
<span class="c">// d.setDate(date.getDate() + amount);</span>
|
||||
<span class="c"></span> <span class="k">break</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">YEAR</span><span class="o">:</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setFullYear</span><span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">+</span> <span class="nx">amount</span><span class="o">);</span>
|
||||
<span class="k">break</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">WEEK</span><span class="o">:</span>
|
||||
<span class="k">this</span><span class="o">.</span><span class="nx">_addDays</span><span class="o">(</span><span class="nx">d</span><span class="o">,</span> <span class="o">(</span><span class="nx">amount</span> <span class="o">*</span> <span class="m">7</span><span class="o">));</span>
|
||||
<span class="c">// d.setDate(date.getDate() + (amount * 7));</span>
|
||||
<span class="c"></span> <span class="k">break</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">d</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Private helper method to account for bug in Safari 2 (webkit < 420)</span>
|
||||
<span class="c"> * when Date.setDate(n) is called with n less than -128 or greater than 127.</span>
|
||||
<span class="c"> * <p></span>
|
||||
<span class="c"> * Fix approach and original findings are available here:</span>
|
||||
<span class="c"> * http://brianary.blogspot.com/2006/03/safari-date-bug.html</span>
|
||||
<span class="c"> * </p></span>
|
||||
<span class="c"> * @method _addDays</span>
|
||||
<span class="c"> * @param {Date} d JavaScript date object</span>
|
||||
<span class="c"> * @param {Number} nDays The number of days to add to the date object (can be negative)</span>
|
||||
<span class="c"> * @private</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">_addDays</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">d</span><span class="o">,</span> <span class="nx">nDays</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">webkit</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">webkit</span> <span class="o"><</span> <span class="m">420</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">nDays</span> <span class="o"><</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">// Ensure we don't go below -128 (getDate() is always 1 to 31, so we won't go above 127)</span>
|
||||
<span class="c"></span> <span class="k">for</span><span class="o">(</span><span class="k">var</span> <span class="nx">min</span> <span class="o">=</span> <span class="o">-</span><span class="m">128</span><span class="o">;</span> <span class="nx">nDays</span> <span class="o"><</span> <span class="nx">min</span><span class="o">;</span> <span class="nx">nDays</span> <span class="o">-=</span> <span class="nx">min</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setDate</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">+</span> <span class="nx">min</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="c">// Ensure we don't go above 96 + 31 = 127</span>
|
||||
<span class="c"></span> <span class="k">for</span><span class="o">(</span><span class="k">var</span> <span class="nx">max</span> <span class="o">=</span> <span class="m">96</span><span class="o">;</span> <span class="nx">nDays</span> <span class="o">></span> <span class="nx">max</span><span class="o">;</span> <span class="nx">nDays</span> <span class="o">-=</span> <span class="nx">max</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setDate</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">+</span> <span class="nx">max</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="c">// nDays should be remainder between -128 and 96</span>
|
||||
<span class="c"></span> <span class="o">}</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setDate</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">+</span> <span class="nx">nDays</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Private helper method to account for bug in Safari 2 (webkit < 420)</span>
|
||||
<span class="c"> * when Date.setDate(n) is called with n less than -128 or greater than 127.</span>
|
||||
<span class="c"> * <p></span>
|
||||
<span class="c"> * Fix approach and original findings are available here:</span>
|
||||
<span class="c"> * http://brianary.blogspot.com/2006/03/safari-date-bug.html</span>
|
||||
<span class="c"> * </p></span>
|
||||
<span class="c"> * @method _addDays</span>
|
||||
<span class="c"> * @param {Date} d JavaScript date object</span>
|
||||
<span class="c"> * @param {Number} nDays The number of days to add to the date object (can be negative)</span>
|
||||
<span class="c"> * @private</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">_addDays</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">d</span><span class="o">,</span> <span class="nx">nDays</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">webkit</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">webkit</span> <span class="o"><</span> <span class="m">420</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">nDays</span> <span class="o"><</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">// Ensure we don't go below -128 (getDate() is always 1 to 31, so we won't go above 127)</span>
|
||||
<span class="c"></span> <span class="k">for</span><span class="o">(</span><span class="k">var</span> <span class="nx">min</span> <span class="o">=</span> <span class="o">-</span><span class="m">128</span><span class="o">;</span> <span class="nx">nDays</span> <span class="o"><</span> <span class="nx">min</span><span class="o">;</span> <span class="nx">nDays</span> <span class="o">-=</span> <span class="nx">min</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setDate</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">+</span> <span class="nx">min</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="c">// Ensure we don't go above 96 + 31 = 127</span>
|
||||
<span class="c"></span> <span class="k">for</span><span class="o">(</span><span class="k">var</span> <span class="nx">max</span> <span class="o">=</span> <span class="m">96</span><span class="o">;</span> <span class="nx">nDays</span> <span class="o">></span> <span class="nx">max</span><span class="o">;</span> <span class="nx">nDays</span> <span class="o">-=</span> <span class="nx">max</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setDate</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">+</span> <span class="nx">max</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="c">// nDays should be remainder between -128 and 96</span>
|
||||
<span class="c"></span> <span class="o">}</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setDate</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">+</span> <span class="nx">nDays</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Subtracts the specified amount of time from the this instance.</span>
|
||||
<span class="c"> * @method subtract</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date object to perform subtraction on</span>
|
||||
<span class="c"> * @param {Number} field The this field constant to be used for performing subtraction.</span>
|
||||
<span class="c"> * @param {Number} amount The number of units (measured in the field constant) to subtract from the date.</span>
|
||||
<span class="c"> * @return {Date} The resulting Date object</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">subtract</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">field</span><span class="o">,</span> <span class="nx">amount</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">field</span><span class="o">,</span> <span class="o">(</span><span class="nx">amount</span><span class="o">*-</span><span class="m">1</span><span class="o">));</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Subtracts the specified amount of time from the this instance.</span>
|
||||
<span class="c"> * @method subtract</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date object to perform subtraction on</span>
|
||||
<span class="c"> * @param {Number} field The this field constant to be used for performing subtraction.</span>
|
||||
<span class="c"> * @param {Number} amount The number of units (measured in the field constant) to subtract from the date.</span>
|
||||
<span class="c"> * @return {Date} The resulting Date object</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">subtract</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">field</span><span class="o">,</span> <span class="nx">amount</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">field</span><span class="o">,</span> <span class="o">(</span><span class="nx">amount</span><span class="o">*-</span><span class="m">1</span><span class="o">));</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines whether a given date is before another date on the calendar.</span>
|
||||
<span class="c"> * @method before</span>
|
||||
<span class="c"> * @param {Date} date The Date object to compare with the compare argument</span>
|
||||
<span class="c"> * @param {Date} compareTo The Date object to use for the comparison</span>
|
||||
<span class="c"> * @return {Boolean} true if the date occurs before the compared date; false if not.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">before</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">compareTo</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">ms</span> <span class="o">=</span> <span class="nx">compareTo</span><span class="o">.</span><span class="nx">getTime</span><span class="o">();</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o"><</span> <span class="nx">ms</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines whether a given date is before another date on the calendar.</span>
|
||||
<span class="c"> * @method before</span>
|
||||
<span class="c"> * @param {Date} date The Date object to compare with the compare argument</span>
|
||||
<span class="c"> * @param {Date} compareTo The Date object to use for the comparison</span>
|
||||
<span class="c"> * @return {Boolean} true if the date occurs before the compared date; false if not.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">before</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">compareTo</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">ms</span> <span class="o">=</span> <span class="nx">compareTo</span><span class="o">.</span><span class="nx">getTime</span><span class="o">();</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o"><</span> <span class="nx">ms</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines whether a given date is after another date on the calendar.</span>
|
||||
<span class="c"> * @method after</span>
|
||||
<span class="c"> * @param {Date} date The Date object to compare with the compare argument</span>
|
||||
<span class="c"> * @param {Date} compareTo The Date object to use for the comparison</span>
|
||||
<span class="c"> * @return {Boolean} true if the date occurs after the compared date; false if not.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">after</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">compareTo</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">ms</span> <span class="o">=</span> <span class="nx">compareTo</span><span class="o">.</span><span class="nx">getTime</span><span class="o">();</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">></span> <span class="nx">ms</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines whether a given date is after another date on the calendar.</span>
|
||||
<span class="c"> * @method after</span>
|
||||
<span class="c"> * @param {Date} date The Date object to compare with the compare argument</span>
|
||||
<span class="c"> * @param {Date} compareTo The Date object to use for the comparison</span>
|
||||
<span class="c"> * @return {Boolean} true if the date occurs after the compared date; false if not.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">after</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">compareTo</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">ms</span> <span class="o">=</span> <span class="nx">compareTo</span><span class="o">.</span><span class="nx">getTime</span><span class="o">();</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">></span> <span class="nx">ms</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines whether a given date is between two other dates on the calendar.</span>
|
||||
<span class="c"> * @method between</span>
|
||||
<span class="c"> * @param {Date} date The date to check for</span>
|
||||
<span class="c"> * @param {Date} dateBegin The start of the range</span>
|
||||
<span class="c"> * @param {Date} dateEnd The end of the range</span>
|
||||
<span class="c"> * @return {Boolean} true if the date occurs between the compared dates; false if not.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">between</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">dateBegin</span><span class="o">,</span> <span class="nx">dateEnd</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">after</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">dateBegin</span><span class="o">)</span> <span class="o">&&</span> <span class="k">this</span><span class="o">.</span><span class="nx">before</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">dateEnd</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Retrieves a JavaScript Date object representing January 1 of any given year.</span>
|
||||
<span class="c"> * @method getJan1</span>
|
||||
<span class="c"> * @param {Number} calendarYear The calendar year for which to retrieve January 1</span>
|
||||
<span class="c"> * @return {Date} January 1 of the calendar year specified.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getJan1</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">calendarYear</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">getDate</span><span class="o">(</span><span class="nx">calendarYear</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">1</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines whether a given date is between two other dates on the calendar.</span>
|
||||
<span class="c"> * @method between</span>
|
||||
<span class="c"> * @param {Date} date The date to check for</span>
|
||||
<span class="c"> * @param {Date} dateBegin The start of the range</span>
|
||||
<span class="c"> * @param {Date} dateEnd The end of the range</span>
|
||||
<span class="c"> * @return {Boolean} true if the date occurs between the compared dates; false if not.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">between</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">dateBegin</span><span class="o">,</span> <span class="nx">dateEnd</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">after</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">dateBegin</span><span class="o">)</span> <span class="o">&&</span> <span class="k">this</span><span class="o">.</span><span class="nx">before</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">dateEnd</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Retrieves a JavaScript Date object representing January 1 of any given year.</span>
|
||||
<span class="c"> * @method getJan1</span>
|
||||
<span class="c"> * @param {Number} calendarYear The calendar year for which to retrieve January 1</span>
|
||||
<span class="c"> * @return {Date} January 1 of the calendar year specified.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getJan1</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">calendarYear</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">getDate</span><span class="o">(</span><span class="nx">calendarYear</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">1</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Calculates the number of days the specified date is from January 1 of the specified calendar year.</span>
|
||||
<span class="c"> * Passing January 1 to this function would return an offset value of zero.</span>
|
||||
<span class="c"> * @method getDayOffset</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript date for which to find the offset</span>
|
||||
<span class="c"> * @param {Number} calendarYear The calendar year to use for determining the offset</span>
|
||||
<span class="c"> * @return {Number} The number of days since January 1 of the given year</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getDayOffset</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">calendarYear</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">beginYear</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getJan1</span><span class="o">(</span><span class="nx">calendarYear</span><span class="o">);</span> <span class="c">// Find the start of the year. This will be in week 1.</span>
|
||||
<span class="c"></span>
|
||||
<span class="c">// Find the number of days the passed in date is away from the calendar year start</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">dayOffset</span> <span class="o">=</span> <span class="nb">Math</span><span class="o">.</span><span class="nx">ceil</span><span class="o">((</span><span class="nx">date</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()-</span><span class="nx">beginYear</span><span class="o">.</span><span class="nx">getTime</span><span class="o">())</span> <span class="o">/</span> <span class="k">this</span><span class="o">.</span><span class="nx">ONE_DAY_MS</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="nx">dayOffset</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Calculates the number of days the specified date is from January 1 of the specified calendar year.</span>
|
||||
<span class="c"> * Passing January 1 to this function would return an offset value of zero.</span>
|
||||
<span class="c"> * @method getDayOffset</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript date for which to find the offset</span>
|
||||
<span class="c"> * @param {Number} calendarYear The calendar year to use for determining the offset</span>
|
||||
<span class="c"> * @return {Number} The number of days since January 1 of the given year</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getDayOffset</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">calendarYear</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">beginYear</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getJan1</span><span class="o">(</span><span class="nx">calendarYear</span><span class="o">);</span> <span class="c">// Find the start of the year. This will be in week 1.</span>
|
||||
<span class="c"></span>
|
||||
<span class="c">// Find the number of days the passed in date is away from the calendar year start</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">dayOffset</span> <span class="o">=</span> <span class="nb">Math</span><span class="o">.</span><span class="nx">ceil</span><span class="o">((</span><span class="nx">date</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()-</span><span class="nx">beginYear</span><span class="o">.</span><span class="nx">getTime</span><span class="o">())</span> <span class="o">/</span> <span class="k">this</span><span class="o">.</span><span class="nx">ONE_DAY_MS</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="nx">dayOffset</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Calculates the week number for the given date. Can currently support standard</span>
|
||||
<span class="c"> * U.S. week numbers, based on Jan 1st defining the 1st week of the year, and </span>
|
||||
<span class="c"> * ISO8601 week numbers, based on Jan 4th defining the 1st week of the year.</span>
|
||||
<span class="c"> * </span>
|
||||
<span class="c"> * @method getWeekNumber</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript date for which to find the week number</span>
|
||||
<span class="c"> * @param {Number} firstDayOfWeek The index of the first day of the week (0 = Sun, 1 = Mon ... 6 = Sat).</span>
|
||||
<span class="c"> * Defaults to 0</span>
|
||||
<span class="c"> * @param {Number} janDate The date in the first week of January which defines week one for the year</span>
|
||||
<span class="c"> * Defaults to the value of YAHOO.widget.DateMath.WEEK_ONE_JAN_DATE, which is 1 (Jan 1st). </span>
|
||||
<span class="c"> * For the U.S, this is normally Jan 1st. ISO8601 uses Jan 4th to define the first week of the year.</span>
|
||||
<span class="c"> * </span>
|
||||
<span class="c"> * @return {Number} The number of the week containing the given date.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getWeekNumber</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">firstDayOfWeek</span><span class="o">,</span> <span class="nx">janDate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Calculates the week number for the given date. Can currently support standard</span>
|
||||
<span class="c"> * U.S. week numbers, based on Jan 1st defining the 1st week of the year, and </span>
|
||||
<span class="c"> * ISO8601 week numbers, based on Jan 4th defining the 1st week of the year.</span>
|
||||
<span class="c"> * </span>
|
||||
<span class="c"> * @method getWeekNumber</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript date for which to find the week number</span>
|
||||
<span class="c"> * @param {Number} firstDayOfWeek The index of the first day of the week (0 = Sun, 1 = Mon ... 6 = Sat).</span>
|
||||
<span class="c"> * Defaults to 0</span>
|
||||
<span class="c"> * @param {Number} janDate The date in the first week of January which defines week one for the year</span>
|
||||
<span class="c"> * Defaults to the value of YAHOO.widget.DateMath.WEEK_ONE_JAN_DATE, which is 1 (Jan 1st). </span>
|
||||
<span class="c"> * For the U.S, this is normally Jan 1st. ISO8601 uses Jan 4th to define the first week of the year.</span>
|
||||
<span class="c"> * </span>
|
||||
<span class="c"> * @return {Number} The number of the week containing the given date.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getWeekNumber</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">,</span> <span class="nx">firstDayOfWeek</span><span class="o">,</span> <span class="nx">janDate</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">// Setup Defaults</span>
|
||||
<span class="c"></span> <span class="nx">firstDayOfWeek</span> <span class="o">=</span> <span class="nx">firstDayOfWeek</span> <span class="o">||</span> <span class="m">0</span><span class="o">;</span>
|
||||
<span class="nx">janDate</span> <span class="o">=</span> <span class="nx">janDate</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">WEEK_ONE_JAN_DATE</span><span class="o">;</span>
|
||||
<span class="c">// Setup Defaults</span>
|
||||
<span class="c"></span> <span class="nx">firstDayOfWeek</span> <span class="o">=</span> <span class="nx">firstDayOfWeek</span> <span class="o">||</span> <span class="m">0</span><span class="o">;</span>
|
||||
<span class="nx">janDate</span> <span class="o">=</span> <span class="nx">janDate</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">WEEK_ONE_JAN_DATE</span><span class="o">;</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">targetDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">clearTime</span><span class="o">(</span><span class="nx">date</span><span class="o">),</span>
|
||||
<span class="nx">startOfWeek</span><span class="o">,</span>
|
||||
<span class="nx">endOfWeek</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">targetDate</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">clearTime</span><span class="o">(</span><span class="nx">date</span><span class="o">),</span>
|
||||
<span class="nx">startOfWeek</span><span class="o">,</span>
|
||||
<span class="nx">endOfWeek</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">targetDate</span><span class="o">.</span><span class="nx">getDay</span><span class="o">()</span> <span class="o">===</span> <span class="nx">firstDayOfWeek</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">startOfWeek</span> <span class="o">=</span> <span class="nx">targetDate</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">startOfWeek</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getFirstDayOfWeek</span><span class="o">(</span><span class="nx">targetDate</span><span class="o">,</span> <span class="nx">firstDayOfWeek</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">targetDate</span><span class="o">.</span><span class="nx">getDay</span><span class="o">()</span> <span class="o">===</span> <span class="nx">firstDayOfWeek</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">startOfWeek</span> <span class="o">=</span> <span class="nx">targetDate</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">startOfWeek</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getFirstDayOfWeek</span><span class="o">(</span><span class="nx">targetDate</span><span class="o">,</span> <span class="nx">firstDayOfWeek</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">startYear</span> <span class="o">=</span> <span class="nx">startOfWeek</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span>
|
||||
<span class="nx">startTime</span> <span class="o">=</span> <span class="nx">startOfWeek</span><span class="o">.</span><span class="nx">getTime</span><span class="o">();</span>
|
||||
<span class="k">var</span> <span class="nx">startYear</span> <span class="o">=</span> <span class="nx">startOfWeek</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">();</span>
|
||||
|
||||
<span class="c">// DST shouldn't be a problem here, math is quicker than setDate();</span>
|
||||
<span class="c"></span> <span class="nx">endOfWeek</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">startOfWeek</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">+</span> <span class="m">6</span><span class="o">*</span><span class="k">this</span><span class="o">.</span><span class="nx">ONE_DAY_MS</span><span class="o">);</span>
|
||||
<span class="c">// DST shouldn't be a problem here, math is quicker than setDate();</span>
|
||||
<span class="c"></span> <span class="nx">endOfWeek</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">startOfWeek</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">+</span> <span class="m">6</span><span class="o">*</span><span class="k">this</span><span class="o">.</span><span class="nx">ONE_DAY_MS</span><span class="o">);</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">weekNum</span><span class="o">;</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">startYear</span> <span class="o">!==</span> <span class="nx">endOfWeek</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">&&</span> <span class="nx">endOfWeek</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">>=</span> <span class="nx">janDate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">// If years don't match, endOfWeek is in Jan. and if the </span>
|
||||
<span class="c"></span> <span class="c">// week has WEEK_ONE_JAN_DATE in it, it's week one by definition.</span>
|
||||
<span class="c"></span> <span class="nx">weekNum</span> <span class="o">=</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="c">// Get the 1st day of the 1st week, and </span>
|
||||
<span class="c"></span> <span class="c">// find how many days away we are from it.</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">weekOne</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">clearTime</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">getDate</span><span class="o">(</span><span class="nx">startYear</span><span class="o">,</span> <span class="m">0</span><span class="o">,</span> <span class="nx">janDate</span><span class="o">)),</span>
|
||||
<span class="nx">weekOneDayOne</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getFirstDayOfWeek</span><span class="o">(</span><span class="nx">weekOne</span><span class="o">,</span> <span class="nx">firstDayOfWeek</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">weekNum</span><span class="o">;</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">startYear</span> <span class="o">!==</span> <span class="nx">endOfWeek</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">&&</span> <span class="nx">endOfWeek</span><span class="o">.</span><span class="nx">getDate</span><span class="o">()</span> <span class="o">>=</span> <span class="nx">janDate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">// If years don't match, endOfWeek is in Jan. and if the </span>
|
||||
<span class="c"></span> <span class="c">// week has WEEK_ONE_JAN_DATE in it, it's week one by definition.</span>
|
||||
<span class="c"></span> <span class="nx">weekNum</span> <span class="o">=</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="c">// Get the 1st day of the 1st week, and </span>
|
||||
<span class="c"></span> <span class="c">// find how many days away we are from it.</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">weekOne</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">clearTime</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">getDate</span><span class="o">(</span><span class="nx">startYear</span><span class="o">,</span> <span class="m">0</span><span class="o">,</span> <span class="nx">janDate</span><span class="o">)),</span>
|
||||
<span class="nx">weekOneDayOne</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getFirstDayOfWeek</span><span class="o">(</span><span class="nx">weekOne</span><span class="o">,</span> <span class="nx">firstDayOfWeek</span><span class="o">);</span>
|
||||
|
||||
<span class="c">// Round days to smoothen out 1 hr DST diff</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">daysDiff</span> <span class="o">=</span> <span class="nb">Math</span><span class="o">.</span><span class="nx">round</span><span class="o">((</span><span class="nx">targetDate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">-</span> <span class="nx">weekOneDayOne</span><span class="o">.</span><span class="nx">getTime</span><span class="o">())/</span><span class="k">this</span><span class="o">.</span><span class="nx">ONE_DAY_MS</span><span class="o">);</span>
|
||||
<span class="c">// Round days to smoothen out 1 hr DST diff</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">daysDiff</span> <span class="o">=</span> <span class="nb">Math</span><span class="o">.</span><span class="nx">round</span><span class="o">((</span><span class="nx">targetDate</span><span class="o">.</span><span class="nx">getTime</span><span class="o">()</span> <span class="o">-</span> <span class="nx">weekOneDayOne</span><span class="o">.</span><span class="nx">getTime</span><span class="o">())/</span><span class="k">this</span><span class="o">.</span><span class="nx">ONE_DAY_MS</span><span class="o">);</span>
|
||||
|
||||
<span class="c">// Calc. Full Weeks</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">rem</span> <span class="o">=</span> <span class="nx">daysDiff</span> <span class="o">%</span> <span class="m">7</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">weeksDiff</span> <span class="o">=</span> <span class="o">(</span><span class="nx">daysDiff</span> <span class="o">-</span> <span class="nx">rem</span><span class="o">)/</span><span class="m">7</span><span class="o">;</span>
|
||||
<span class="nx">weekNum</span> <span class="o">=</span> <span class="nx">weeksDiff</span> <span class="o">+</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">weekNum</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">// Calc. Full Weeks</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">rem</span> <span class="o">=</span> <span class="nx">daysDiff</span> <span class="o">%</span> <span class="m">7</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">weeksDiff</span> <span class="o">=</span> <span class="o">(</span><span class="nx">daysDiff</span> <span class="o">-</span> <span class="nx">rem</span><span class="o">)/</span><span class="m">7</span><span class="o">;</span>
|
||||
<span class="nx">weekNum</span> <span class="o">=</span> <span class="nx">weeksDiff</span> <span class="o">+</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">weekNum</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Get the first day of the week, for the give date. </span>
|
||||
<span class="c"> * @param {Date} dt The date in the week for which the first day is required.</span>
|
||||
<span class="c"> * @param {Number} startOfWeek The index for the first day of the week, 0 = Sun, 1 = Mon ... 6 = Sat (defaults to 0)</span>
|
||||
<span class="c"> * @return {Date} The first day of the week</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getFirstDayOfWeek</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">dt</span><span class="o">,</span> <span class="nx">startOfWeek</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">startOfWeek</span> <span class="o">=</span> <span class="nx">startOfWeek</span> <span class="o">||</span> <span class="m">0</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">dayOfWeekIndex</span> <span class="o">=</span> <span class="nx">dt</span><span class="o">.</span><span class="nx">getDay</span><span class="o">(),</span>
|
||||
<span class="nx">dayOfWeek</span> <span class="o">=</span> <span class="o">(</span><span class="nx">dayOfWeekIndex</span> <span class="o">-</span> <span class="nx">startOfWeek</span> <span class="o">+</span> <span class="m">7</span><span class="o">)</span> <span class="o">%</span> <span class="m">7</span><span class="o">;</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Get the first day of the week, for the give date. </span>
|
||||
<span class="c"> * @param {Date} dt The date in the week for which the first day is required.</span>
|
||||
<span class="c"> * @param {Number} startOfWeek The index for the first day of the week, 0 = Sun, 1 = Mon ... 6 = Sat (defaults to 0)</span>
|
||||
<span class="c"> * @return {Date} The first day of the week</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getFirstDayOfWeek</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">dt</span><span class="o">,</span> <span class="nx">startOfWeek</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">startOfWeek</span> <span class="o">=</span> <span class="nx">startOfWeek</span> <span class="o">||</span> <span class="m">0</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">dayOfWeekIndex</span> <span class="o">=</span> <span class="nx">dt</span><span class="o">.</span><span class="nx">getDay</span><span class="o">(),</span>
|
||||
<span class="nx">dayOfWeek</span> <span class="o">=</span> <span class="o">(</span><span class="nx">dayOfWeekIndex</span> <span class="o">-</span> <span class="nx">startOfWeek</span> <span class="o">+</span> <span class="m">7</span><span class="o">)</span> <span class="o">%</span> <span class="m">7</span><span class="o">;</span>
|
||||
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">subtract</span><span class="o">(</span><span class="nx">dt</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span> <span class="nx">dayOfWeek</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">subtract</span><span class="o">(</span><span class="nx">dt</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span> <span class="nx">dayOfWeek</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines if a given week overlaps two different years.</span>
|
||||
<span class="c"> * @method isYearOverlapWeek</span>
|
||||
<span class="c"> * @param {Date} weekBeginDate The JavaScript Date representing the first day of the week.</span>
|
||||
<span class="c"> * @return {Boolean} true if the date overlaps two different years.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">isYearOverlapWeek</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">weekBeginDate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">overlaps</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">nextWeek</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="nx">weekBeginDate</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span> <span class="m">6</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">nextWeek</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">!=</span> <span class="nx">weekBeginDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">())</span> <span class="o">{</span>
|
||||
<span class="nx">overlaps</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">overlaps</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines if a given week overlaps two different years.</span>
|
||||
<span class="c"> * @method isYearOverlapWeek</span>
|
||||
<span class="c"> * @param {Date} weekBeginDate The JavaScript Date representing the first day of the week.</span>
|
||||
<span class="c"> * @return {Boolean} true if the date overlaps two different years.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">isYearOverlapWeek</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">weekBeginDate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">overlaps</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">nextWeek</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="nx">weekBeginDate</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span> <span class="m">6</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">nextWeek</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">()</span> <span class="o">!=</span> <span class="nx">weekBeginDate</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">())</span> <span class="o">{</span>
|
||||
<span class="nx">overlaps</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">overlaps</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines if a given week overlaps two different months.</span>
|
||||
<span class="c"> * @method isMonthOverlapWeek</span>
|
||||
<span class="c"> * @param {Date} weekBeginDate The JavaScript Date representing the first day of the week.</span>
|
||||
<span class="c"> * @return {Boolean} true if the date overlaps two different months.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">isMonthOverlapWeek</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">weekBeginDate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">overlaps</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">nextWeek</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="nx">weekBeginDate</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span> <span class="m">6</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">nextWeek</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">!=</span> <span class="nx">weekBeginDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">())</span> <span class="o">{</span>
|
||||
<span class="nx">overlaps</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">overlaps</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines if a given week overlaps two different months.</span>
|
||||
<span class="c"> * @method isMonthOverlapWeek</span>
|
||||
<span class="c"> * @param {Date} weekBeginDate The JavaScript Date representing the first day of the week.</span>
|
||||
<span class="c"> * @return {Boolean} true if the date overlaps two different months.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">isMonthOverlapWeek</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">weekBeginDate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">overlaps</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">nextWeek</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="nx">weekBeginDate</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span> <span class="m">6</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">nextWeek</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">()</span> <span class="o">!=</span> <span class="nx">weekBeginDate</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">())</span> <span class="o">{</span>
|
||||
<span class="nx">overlaps</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">overlaps</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Gets the first day of a month containing a given date.</span>
|
||||
<span class="c"> * @method findMonthStart</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date used to calculate the month start</span>
|
||||
<span class="c"> * @return {Date} The JavaScript Date representing the first day of the month</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">findMonthStart</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">start</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getDate</span><span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span> <span class="nx">date</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">(),</span> <span class="m">1</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="nx">start</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Gets the first day of a month containing a given date.</span>
|
||||
<span class="c"> * @method findMonthStart</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date used to calculate the month start</span>
|
||||
<span class="c"> * @return {Date} The JavaScript Date representing the first day of the month</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">findMonthStart</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">start</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getDate</span><span class="o">(</span><span class="nx">date</span><span class="o">.</span><span class="nx">getFullYear</span><span class="o">(),</span> <span class="nx">date</span><span class="o">.</span><span class="nx">getMonth</span><span class="o">(),</span> <span class="m">1</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="nx">start</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Gets the last day of a month containing a given date.</span>
|
||||
<span class="c"> * @method findMonthEnd</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date used to calculate the month end</span>
|
||||
<span class="c"> * @return {Date} The JavaScript Date representing the last day of the month</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">findMonthEnd</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">start</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">findMonthStart</span><span class="o">(</span><span class="nx">date</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">nextMonth</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="nx">start</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">MONTH</span><span class="o">,</span> <span class="m">1</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">end</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">subtract</span><span class="o">(</span><span class="nx">nextMonth</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span> <span class="m">1</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="nx">end</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Gets the last day of a month containing a given date.</span>
|
||||
<span class="c"> * @method findMonthEnd</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date used to calculate the month end</span>
|
||||
<span class="c"> * @return {Date} The JavaScript Date representing the last day of the month</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">findMonthEnd</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">start</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">findMonthStart</span><span class="o">(</span><span class="nx">date</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">nextMonth</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">add</span><span class="o">(</span><span class="nx">start</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">MONTH</span><span class="o">,</span> <span class="m">1</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">end</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">subtract</span><span class="o">(</span><span class="nx">nextMonth</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">DAY</span><span class="o">,</span> <span class="m">1</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="nx">end</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Clears the time fields from a given date, effectively setting the time to 12 noon.</span>
|
||||
<span class="c"> * @method clearTime</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date for which the time fields will be cleared</span>
|
||||
<span class="c"> * @return {Date} The JavaScript Date cleared of all time fields</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">clearTime</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">date</span><span class="o">.</span><span class="nx">setHours</span><span class="o">(</span><span class="m">12</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="nx">date</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Clears the time fields from a given date, effectively setting the time to 12 noon.</span>
|
||||
<span class="c"> * @method clearTime</span>
|
||||
<span class="c"> * @param {Date} date The JavaScript Date for which the time fields will be cleared</span>
|
||||
<span class="c"> * @return {Date} The JavaScript Date cleared of all time fields</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">clearTime</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">date</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">date</span><span class="o">.</span><span class="nx">setHours</span><span class="o">(</span><span class="m">12</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="nx">date</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Returns a new JavaScript Date object, representing the given year, month and date. Time fields (hr, min, sec, ms) on the new Date object</span>
|
||||
<span class="c"> * are set to 0. The method allows Date instances to be created with the a year less than 100. "new Date(year, month, date)" implementations </span>
|
||||
<span class="c"> * set the year to 19xx if a year (xx) which is less than 100 is provided.</span>
|
||||
<span class="c"> * <p></span>
|
||||
<span class="c"> * <em>NOTE:</em>Validation on argument values is not performed. It is the caller's responsibility to ensure</span>
|
||||
<span class="c"> * arguments are valid as per the ECMAScript-262 Date object specification for the new Date(year, month[, date]) constructor.</span>
|
||||
<span class="c"> * </p></span>
|
||||
<span class="c"> * @method getDate</span>
|
||||
<span class="c"> * @param {Number} y Year.</span>
|
||||
<span class="c"> * @param {Number} m Month index from 0 (Jan) to 11 (Dec).</span>
|
||||
<span class="c"> * @param {Number} d (optional) Date from 1 to 31. If not provided, defaults to 1.</span>
|
||||
<span class="c"> * @return {Date} The JavaScript date object with year, month, date set as provided.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getDate</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">y</span><span class="o">,</span> <span class="nx">m</span><span class="o">,</span> <span class="nx">d</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">dt</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isUndefined</span><span class="o">(</span><span class="nx">d</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">d</span> <span class="o">=</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">y</span> <span class="o">>=</span> <span class="m">100</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">dt</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">y</span><span class="o">,</span> <span class="nx">m</span><span class="o">,</span> <span class="nx">d</span><span class="o">);</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">dt</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">();</span>
|
||||
<span class="nx">dt</span><span class="o">.</span><span class="nx">setFullYear</span><span class="o">(</span><span class="nx">y</span><span class="o">);</span>
|
||||
<span class="nx">dt</span><span class="o">.</span><span class="nx">setMonth</span><span class="o">(</span><span class="nx">m</span><span class="o">);</span>
|
||||
<span class="nx">dt</span><span class="o">.</span><span class="nx">setDate</span><span class="o">(</span><span class="nx">d</span><span class="o">);</span>
|
||||
<span class="nx">dt</span><span class="o">.</span><span class="nx">setHours</span><span class="o">(</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">dt</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Returns a new JavaScript Date object, representing the given year, month and date. Time fields (hr, min, sec, ms) on the new Date object</span>
|
||||
<span class="c"> * are set to 0. The method allows Date instances to be created with the a year less than 100. "new Date(year, month, date)" implementations </span>
|
||||
<span class="c"> * set the year to 19xx if a year (xx) which is less than 100 is provided.</span>
|
||||
<span class="c"> * <p></span>
|
||||
<span class="c"> * <em>NOTE:</em>Validation on argument values is not performed. It is the caller's responsibility to ensure</span>
|
||||
<span class="c"> * arguments are valid as per the ECMAScript-262 Date object specification for the new Date(year, month[, date]) constructor.</span>
|
||||
<span class="c"> * </p></span>
|
||||
<span class="c"> * @method getDate</span>
|
||||
<span class="c"> * @param {Number} y Year.</span>
|
||||
<span class="c"> * @param {Number} m Month index from 0 (Jan) to 11 (Dec).</span>
|
||||
<span class="c"> * @param {Number} d (optional) Date from 1 to 31. If not provided, defaults to 1.</span>
|
||||
<span class="c"> * @return {Date} The JavaScript date object with year, month, date set as provided.</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">getDate</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">y</span><span class="o">,</span> <span class="nx">m</span><span class="o">,</span> <span class="nx">d</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">dt</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isUndefined</span><span class="o">(</span><span class="nx">d</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">d</span> <span class="o">=</span> <span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">y</span> <span class="o">>=</span> <span class="m">100</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">dt</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">(</span><span class="nx">y</span><span class="o">,</span> <span class="nx">m</span><span class="o">,</span> <span class="nx">d</span><span class="o">);</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">dt</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">();</span>
|
||||
<span class="nx">dt</span><span class="o">.</span><span class="nx">setFullYear</span><span class="o">(</span><span class="nx">y</span><span class="o">);</span>
|
||||
<span class="nx">dt</span><span class="o">.</span><span class="nx">setMonth</span><span class="o">(</span><span class="nx">m</span><span class="o">);</span>
|
||||
<span class="nx">dt</span><span class="o">.</span><span class="nx">setDate</span><span class="o">(</span><span class="nx">d</span><span class="o">);</span>
|
||||
<span class="nx">dt</span><span class="o">.</span><span class="nx">setHours</span><span class="o">(</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">dt</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">};</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div class="module">
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
|
||||
<li class=""><a href="module_animation.html">animation</a></li>
|
||||
|
||||
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
||||
|
||||
<li class=""><a href="module_button.html">button</a></li>
|
||||
|
||||
<li class="selected"><a href="module_calendar.html">calendar</a></li>
|
||||
|
||||
<li class=""><a href="module_carousel.html">carousel</a></li>
|
||||
|
||||
<li class=""><a href="module_charts.html">charts</a></li>
|
||||
|
||||
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
||||
|
||||
<li class=""><a href="module_connection.html">connection</a></li>
|
||||
|
||||
<li class=""><a href="module_container.html">container</a></li>
|
||||
|
||||
<li class=""><a href="module_cookie.html">cookie</a></li>
|
||||
|
||||
<li class=""><a href="module_datasource.html">datasource</a></li>
|
||||
|
||||
<li class=""><a href="module_datatable.html">datatable</a></li>
|
||||
|
||||
<li class=""><a href="module_dom.html">dom</a></li>
|
||||
|
||||
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
||||
|
||||
<li class=""><a href="module_editor.html">editor</a></li>
|
||||
|
||||
<li class=""><a href="module_element.html">element</a></li>
|
||||
|
||||
<li class=""><a href="module_event.html">event</a></li>
|
||||
|
||||
<li class=""><a href="module_get.html">get</a></li>
|
||||
|
||||
<li class=""><a href="module_history.html">history</a></li>
|
||||
|
||||
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
||||
|
||||
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
||||
|
||||
<li class=""><a href="module_json.html">json</a></li>
|
||||
|
||||
<li class=""><a href="module_layout.html">layout</a></li>
|
||||
|
||||
<li class=""><a href="module_logger.html">logger</a></li>
|
||||
|
||||
<li class=""><a href="module_menu.html">menu</a></li>
|
||||
|
||||
<li class=""><a href="module_paginator.html">paginator</a></li>
|
||||
|
||||
<li class=""><a href="module_profiler.html">profiler</a></li>
|
||||
|
||||
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
||||
|
||||
<li class=""><a href="module_resize.html">resize</a></li>
|
||||
|
||||
<li class=""><a href="module_selector.html">selector</a></li>
|
||||
|
||||
<li class=""><a href="module_slider.html">slider</a></li>
|
||||
|
||||
<li class=""><a href="module_tabview.html">tabview</a></li>
|
||||
|
||||
<li class=""><a href="module_treeview.html">treeview</a></li>
|
||||
|
||||
<li class=""><a href="module_uploader.html">uploader</a></li>
|
||||
|
||||
<li class=""><a href="module_yahoo.html">yahoo</a></li>
|
||||
|
||||
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
||||
|
||||
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class="selected"><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="classList" class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="YAHOO.widget.Calendar.html">YAHOO.widget.Calendar</a></li>
|
||||
<li class=""><a href="YAHOO.widget.Calendar2up.html">YAHOO.widget.Calendar2up</a></li>
|
||||
<li class=""><a href="YAHOO.widget.Calendar_Core.html">YAHOO.widget.Calendar_Core</a></li>
|
||||
<li class=""><a href="YAHOO.widget.CalendarGroup.html">YAHOO.widget.CalendarGroup</a></li>
|
||||
<li class=""><a href="YAHOO.widget.CalendarNavigator.html">YAHOO.widget.CalendarNavigator</a></li>
|
||||
<li class=""><a href="YAHOO.widget.DateMath.html">YAHOO.widget.DateMath</a></li>
|
||||
<li class=""><a href="YAHOO.widget.DateMath.html" title="YAHOO.widget.DateMath">YAHOO.widget.DateMath</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="Calendar.js.html">Calendar.js</a></li>
|
||||
<li class=""><a href="CalendarGroup.js.html">CalendarGroup.js</a></li>
|
||||
<li class=""><a href="CalendarNavigator.js.html">CalendarNavigator.js</a></li>
|
||||
<li class="selected"><a href="DateMath.js.html">DateMath.js</a></li>
|
||||
<li class="selected"><a href="DateMath.js.html" title="DateMath.js">DateMath.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -550,8 +533,11 @@
|
|||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2008 Yahoo! Inc. All rights reserved.
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [{"access": "", "host": "YAHOO.widget.DateMath", "name": "add", "url": "YAHOO.widget.DateMath.html#method_add", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DateMath", "name": "_addDays", "url": "YAHOO.widget.DateMath.html#method__addDays", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "after", "url": "YAHOO.widget.DateMath.html#method_after", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "before", "url": "YAHOO.widget.DateMath.html#method_before", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "between", "url": "YAHOO.widget.DateMath.html#method_between", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "clearTime", "url": "YAHOO.widget.DateMath.html#method_clearTime", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "DAY", "url": "YAHOO.widget.DateMath.html#property_DAY", "type": "property"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "findMonthEnd", "url": "YAHOO.widget.DateMath.html#method_findMonthEnd", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "findMonthStart", "url": "YAHOO.widget.DateMath.html#method_findMonthStart", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "getDate", "url": "YAHOO.widget.DateMath.html#method_getDate", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "getDayOffset", "url": "YAHOO.widget.DateMath.html#method_getDayOffset", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "getFirstDayOfWeek", "url": "YAHOO.widget.DateMath.html#method_getFirstDayOfWeek", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "getJan1", "url": "YAHOO.widget.DateMath.html#method_getJan1", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "getWeekNumber", "url": "YAHOO.widget.DateMath.html#method_getWeekNumber", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "isMonthOverlapWeek", "url": "YAHOO.widget.DateMath.html#method_isMonthOverlapWeek", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "isYearOverlapWeek", "url": "YAHOO.widget.DateMath.html#method_isYearOverlapWeek", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "MONTH", "url": "YAHOO.widget.DateMath.html#property_MONTH", "type": "property"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "ONE_DAY_MS", "url": "YAHOO.widget.DateMath.html#property_ONE_DAY_MS", "type": "property"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "subtract", "url": "YAHOO.widget.DateMath.html#method_subtract", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "WEEK", "url": "YAHOO.widget.DateMath.html#property_WEEK", "type": "property"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "WEEK_ONE_JAN_DATE", "url": "YAHOO.widget.DateMath.html#property_WEEK_ONE_JAN_DATE", "type": "property"}, {"access": "", "host": "YAHOO.widget.DateMath", "name": "YEAR", "url": "YAHOO.widget.DateMath.html#property_YEAR", "type": "property"}];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
412
www/extras/yui/docs/Delegate.js.html
Normal file
412
www/extras/yui/docs/Delegate.js.html
Normal file
|
|
@ -0,0 +1,412 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: event-delegate Delegate.js (YUI Library)</title>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
||||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
<div id="hd">
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>Event Utility Event Delegation Module <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_event-delegate.html" title="event-delegate">event-delegate</a>
|
||||
|
||||
> Delegate.js (source view)
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div id="srcout">
|
||||
<style>
|
||||
#doc3 .classopts { display:none; }
|
||||
</style>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<span class="c"> * Augments the Event Utility with a <code>delegate</code> method that </span>
|
||||
<span class="c"> * facilitates easy creation of delegated event listeners. (Note: Using CSS </span>
|
||||
<span class="c"> * selectors as the filtering criteria for delegated event listeners requires </span>
|
||||
<span class="c"> * inclusion of the Selector Utility.)</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @module event-delegate</span>
|
||||
<span class="c"> * @title Event Utility Event Delegation Module</span>
|
||||
<span class="c"> * @namespace YAHOO.util</span>
|
||||
<span class="c"> * @requires event</span>
|
||||
<span class="c"> */</span>
|
||||
|
||||
<span class="o">(</span><span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">Event</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">,</span>
|
||||
<span class="nx">Lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">,</span>
|
||||
<span class="nx">delegates</span> <span class="o">=</span> <span class="o">[],</span>
|
||||
|
||||
|
||||
<span class="nx">getMatch</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">selector</span><span class="o">,</span> <span class="nx">container</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">el</span> <span class="o">||</span> <span class="nx">el</span> <span class="o">===</span> <span class="nx">container</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">returnVal</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Selector</span><span class="o">.</span><span class="nx">test</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">selector</span><span class="o">)</span> <span class="o">?</span> <span class="nx">el</span><span class="o">:</span> <span class="nx">getMatch</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">,</span> <span class="nx">selector</span><span class="o">,</span> <span class="nx">container</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="o">};</span>
|
||||
|
||||
|
||||
<span class="nx">Lang</span><span class="o">.</span><span class="nx">augmentObject</span><span class="o">(</span><span class="nx">Event</span><span class="o">,</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Creates a delegate function used to call event listeners specified </span>
|
||||
<span class="c"> * via the <code>YAHOO.util.Event.delegate</code> method.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method _createDelegate</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @param {Function} fn The method (event listener) to call.</span>
|
||||
<span class="c"> * @param {Function|string} filter Function or CSS selector used to </span>
|
||||
<span class="c"> * determine for what element(s) the event listener should be called. </span>
|
||||
<span class="c"> * @param {Object} obj An arbitrary object that will be </span>
|
||||
<span class="c"> * passed as a parameter to the listener.</span>
|
||||
<span class="c"> * @param {Boolean|object} overrideContext If true, the value of the </span>
|
||||
<span class="c"> * obj parameter becomes the execution context</span>
|
||||
<span class="c"> * of the listener. If an object, this object</span>
|
||||
<span class="c"> * becomes the execution context.</span>
|
||||
<span class="c"> * @return {Function} Function that will call the event listener </span>
|
||||
<span class="c"> * specified by the <code>YAHOO.util.Event.delegate</code> method.</span>
|
||||
<span class="c"> * @private</span>
|
||||
<span class="c"> * @for Event</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">_createDelegate</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">fn</span><span class="o">,</span> <span class="nx">filter</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">return</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">container</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
|
||||
<span class="nx">target</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">getTarget</span><span class="o">(</span><span class="nx">event</span><span class="o">),</span>
|
||||
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">filter</span><span class="o">,</span>
|
||||
|
||||
<span class="c">// The user might have specified the document object </span>
|
||||
<span class="c"></span> <span class="c">// as the delegation container, in which case it is not </span>
|
||||
<span class="c"></span> <span class="c">// nessary to scope the provided CSS selector(s) to the </span>
|
||||
<span class="c"></span> <span class="c">// delegation container</span>
|
||||
<span class="c"></span> <span class="nx">bDocument</span> <span class="o">=</span> <span class="o">(</span><span class="nx">container</span><span class="o">.</span><span class="nx">nodeType</span> <span class="o">===</span> <span class="m">9</span><span class="o">),</span>
|
||||
|
||||
<span class="nx">matchedEl</span><span class="o">,</span>
|
||||
<span class="nx">context</span><span class="o">,</span>
|
||||
<span class="nx">sID</span><span class="o">,</span>
|
||||
<span class="nx">sIDSelector</span><span class="o">;</span>
|
||||
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">Lang</span><span class="o">.</span><span class="nx">isFunction</span><span class="o">(</span><span class="nx">filter</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">matchedEl</span> <span class="o">=</span> <span class="nx">filter</span><span class="o">(</span><span class="nx">target</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">Lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">filter</span><span class="o">))</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">bDocument</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="nx">sID</span> <span class="o">=</span> <span class="nx">container</span><span class="o">.</span><span class="nx">id</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">sID</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">sID</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">generateId</span><span class="o">(</span><span class="nx">container</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Scope all selectors to the container</span>
|
||||
<span class="c"></span> <span class="nx">sIDSelector</span> <span class="o">=</span> <span class="o">(</span><span class="s2">"#"</span> <span class="o">+</span> <span class="nx">sID</span> <span class="o">+</span> <span class="s2">" "</span><span class="o">);</span>
|
||||
<span class="nx">selector</span> <span class="o">=</span> <span class="o">(</span><span class="nx">sIDSelector</span> <span class="o">+</span> <span class="nx">filter</span><span class="o">).</span><span class="nx">replace</span><span class="o">(</span><span class="sr">/,/gi</span><span class="o">,</span> <span class="o">(</span><span class="s2">","</span> <span class="o">+</span> <span class="nx">sIDSelector</span><span class="o">));</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Selector</span><span class="o">.</span><span class="nx">test</span><span class="o">(</span><span class="nx">target</span><span class="o">,</span> <span class="nx">selector</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">matchedEl</span> <span class="o">=</span> <span class="nx">target</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Selector</span><span class="o">.</span><span class="nx">test</span><span class="o">(</span><span class="nx">target</span><span class="o">,</span> <span class="o">((</span><span class="nx">selector</span><span class="o">.</span><span class="nx">replace</span><span class="o">(</span><span class="sr">/,/gi</span><span class="o">,</span> <span class="s2">" *,"</span><span class="o">))</span> <span class="o">+</span> <span class="s2">" *"</span><span class="o">)))</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">// The target is a descendant of an element matching </span>
|
||||
<span class="c"></span> <span class="c">// the selector, so crawl up to find the ancestor that </span>
|
||||
<span class="c"></span> <span class="c">// matches the selector</span>
|
||||
<span class="c"></span>
|
||||
<span class="nx">matchedEl</span> <span class="o">=</span> <span class="nx">getMatch</span><span class="o">(</span><span class="nx">target</span><span class="o">,</span> <span class="nx">selector</span><span class="o">,</span> <span class="nx">container</span><span class="o">);</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">matchedEl</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">// The default context for delegated listeners is the </span>
|
||||
<span class="c"></span> <span class="c">// element that matched the filter.</span>
|
||||
<span class="c"></span>
|
||||
<span class="nx">context</span> <span class="o">=</span> <span class="nx">matchedEl</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">overrideContext</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">overrideContext</span> <span class="o">===</span> <span class="kc">true</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">context</span> <span class="o">=</span> <span class="nx">obj</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">context</span> <span class="o">=</span> <span class="nx">overrideContext</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Call the listener passing in the container and the </span>
|
||||
<span class="c"></span> <span class="c">// element that matched the filter in case the user </span>
|
||||
<span class="c"></span> <span class="c">// needs those.</span>
|
||||
<span class="c"></span>
|
||||
<span class="k">return</span> <span class="nx">fn</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">context</span><span class="o">,</span> <span class="nx">event</span><span class="o">,</span> <span class="nx">matchedEl</span><span class="o">,</span> <span class="nx">container</span><span class="o">,</span> <span class="nx">obj</span><span class="o">);</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="o">},</span>
|
||||
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Appends a delegated event listener. Delegated event listeners </span>
|
||||
<span class="c"> * receive three arguments by default: the DOM event, the element </span>
|
||||
<span class="c"> * specified by the filtering function or CSS selector, and the </span>
|
||||
<span class="c"> * container element (the element to which the event listener is </span>
|
||||
<span class="c"> * bound). (Note: Using the delegate method requires the event-delegate </span>
|
||||
<span class="c"> * module. Using CSS selectors as the filtering criteria for delegated </span>
|
||||
<span class="c"> * event listeners requires inclusion of the Selector Utility.)</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method delegate</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @param {String|HTMLElement|Array|NodeList} container An id, an element </span>
|
||||
<span class="c"> * reference, or a collection of ids and/or elements to assign the </span>
|
||||
<span class="c"> * listener to.</span>
|
||||
<span class="c"> * @param {String} type The type of event listener to append</span>
|
||||
<span class="c"> * @param {Function} fn The method the event invokes</span>
|
||||
<span class="c"> * @param {Function|string} filter Function or CSS selector used to </span>
|
||||
<span class="c"> * determine for what element(s) the event listener should be called. </span>
|
||||
<span class="c"> * When a function is specified, the function should return an </span>
|
||||
<span class="c"> * HTML element. Using a CSS Selector requires the inclusion of the </span>
|
||||
<span class="c"> * CSS Selector Utility.</span>
|
||||
<span class="c"> * @param {Object} obj An arbitrary object that will be </span>
|
||||
<span class="c"> * passed as a parameter to the listener</span>
|
||||
<span class="c"> * @param {Boolean|object} overrideContext If true, the value of the obj parameter becomes</span>
|
||||
<span class="c"> * the execution context of the listener. If an</span>
|
||||
<span class="c"> * object, this object becomes the execution</span>
|
||||
<span class="c"> * context.</span>
|
||||
<span class="c"> * @return {Boolean} Returns true if the action was successful or defered,</span>
|
||||
<span class="c"> * false if one or more of the elements </span>
|
||||
<span class="c"> * could not have the listener attached,</span>
|
||||
<span class="c"> * or if the operation throws an exception.</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @for Event</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">delegate</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">container</span><span class="o">,</span> <span class="nx">type</span><span class="o">,</span> <span class="nx">fn</span><span class="o">,</span> <span class="nx">filter</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">sType</span> <span class="o">=</span> <span class="nx">type</span><span class="o">,</span>
|
||||
<span class="nx">fnMouseDelegate</span><span class="o">,</span>
|
||||
<span class="nx">fnDelegate</span><span class="o">;</span>
|
||||
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">Lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">filter</span><span class="o">)</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Selector</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Using a CSS selector to define the filtering criteria for a delegated listener requires the Selector Utility."</span><span class="o">,</span> <span class="s2">"error"</span><span class="o">,</span> <span class="s2">"Event"</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">type</span> <span class="o">==</span> <span class="s2">"mouseenter"</span> <span class="o">||</span> <span class="nx">type</span> <span class="o">==</span> <span class="s2">"mouseleave"</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">Event</span><span class="o">.</span><span class="nx">_createMouseDelegate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Delegating a "</span> <span class="o">+</span> <span class="nx">type</span> <span class="o">+</span> <span class="s2">" event requires the event-mouseenter module."</span><span class="o">,</span> <span class="s2">"error"</span><span class="o">,</span> <span class="s2">"Event"</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Look up the real event--either mouseover or mouseout</span>
|
||||
<span class="c"></span> <span class="nx">sType</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_getType</span><span class="o">(</span><span class="nx">type</span><span class="o">);</span>
|
||||
|
||||
<span class="nx">fnMouseDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_createMouseDelegate</span><span class="o">(</span><span class="nx">fn</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">);</span>
|
||||
|
||||
<span class="nx">fnDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_createDelegate</span><span class="o">(</span><span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">,</span> <span class="nx">matchedEl</span><span class="o">,</span> <span class="nx">container</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">fnMouseDelegate</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">matchedEl</span><span class="o">,</span> <span class="nx">event</span><span class="o">,</span> <span class="nx">container</span><span class="o">);</span>
|
||||
|
||||
<span class="o">},</span> <span class="nx">filter</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">);</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
<span class="k">else</span> <span class="o">{</span>
|
||||
|
||||
<span class="nx">fnDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_createDelegate</span><span class="o">(</span><span class="nx">fn</span><span class="o">,</span> <span class="nx">filter</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">);</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">delegates</span><span class="o">.</span><span class="nx">push</span><span class="o">([</span><span class="nx">container</span><span class="o">,</span> <span class="nx">sType</span><span class="o">,</span> <span class="nx">fn</span><span class="o">,</span> <span class="nx">fnDelegate</span><span class="o">]);</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nx">container</span><span class="o">,</span> <span class="nx">sType</span><span class="o">,</span> <span class="nx">fnDelegate</span><span class="o">);</span>
|
||||
|
||||
<span class="o">},</span>
|
||||
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Removes a delegated event listener.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method removeDelegate</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @param {String|HTMLElement|Array|NodeList} container An id, an element </span>
|
||||
<span class="c"> * reference, or a collection of ids and/or elements to remove</span>
|
||||
<span class="c"> * the listener from.</span>
|
||||
<span class="c"> * @param {String} type The type of event to remove.</span>
|
||||
<span class="c"> * @param {Function} fn The method the event invokes. If fn is</span>
|
||||
<span class="c"> * undefined, then all event listeners for the type of event are </span>
|
||||
<span class="c"> * removed.</span>
|
||||
<span class="c"> * @return {boolean} Returns true if the unbind was successful, false </span>
|
||||
<span class="c"> * otherwise.</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @for Event</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">removeDelegate</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">container</span><span class="o">,</span> <span class="nx">type</span><span class="o">,</span> <span class="nx">fn</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">sType</span> <span class="o">=</span> <span class="nx">type</span><span class="o">,</span>
|
||||
<span class="nx">returnVal</span> <span class="o">=</span> <span class="kc">false</span><span class="o">,</span>
|
||||
<span class="nx">index</span><span class="o">,</span>
|
||||
<span class="nx">cacheItem</span><span class="o">;</span>
|
||||
|
||||
<span class="c">// Look up the real event--either mouseover or mouseout</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">type</span> <span class="o">==</span> <span class="s2">"mouseenter"</span> <span class="o">||</span> <span class="nx">type</span> <span class="o">==</span> <span class="s2">"mouseleave"</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">sType</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_getType</span><span class="o">(</span><span class="nx">type</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">index</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_getCacheIndex</span><span class="o">(</span><span class="nx">delegates</span><span class="o">,</span> <span class="nx">container</span><span class="o">,</span> <span class="nx">sType</span><span class="o">,</span> <span class="nx">fn</span><span class="o">);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">index</span> <span class="o">>=</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">cacheItem</span> <span class="o">=</span> <span class="nx">delegates</span><span class="o">[</span><span class="nx">index</span><span class="o">];</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">container</span> <span class="o">&&</span> <span class="nx">cacheItem</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">removeListener</span><span class="o">(</span><span class="nx">cacheItem</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="nx">cacheItem</span><span class="o">[</span><span class="m">1</span><span class="o">],</span> <span class="nx">cacheItem</span><span class="o">[</span><span class="m">3</span><span class="o">]);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">returnVal</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">delete</span> <span class="nx">delegates</span><span class="o">[</span><span class="nx">index</span><span class="o">][</span><span class="m">2</span><span class="o">];</span>
|
||||
<span class="nx">delete</span> <span class="nx">delegates</span><span class="o">[</span><span class="nx">index</span><span class="o">][</span><span class="m">3</span><span class="o">];</span>
|
||||
<span class="nx">delegates</span><span class="o">.</span><span class="nx">splice</span><span class="o">(</span><span class="nx">index</span><span class="o">,</span> <span class="m">1</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">});</span>
|
||||
|
||||
<span class="o">}());</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class="selected"><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class="selected"><a href="Delegate.js.html" title="Delegate.js">Delegate.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
270
www/extras/yui/docs/Element-Delegate.js.html
Normal file
270
www/extras/yui/docs/Element-Delegate.js.html
Normal file
|
|
@ -0,0 +1,270 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: element-delegate Element-Delegate.js (YUI Library)</title>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
||||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
<div id="hd">
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>Element Event Delegation Module <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_element-delegate.html" title="element-delegate">element-delegate</a>
|
||||
|
||||
> Element-Delegate.js (source view)
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div id="srcout">
|
||||
<style>
|
||||
#doc3 .classopts { display:none; }
|
||||
</style>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<span class="c"> * Augments the Element Utility with a <code>delegate</code> method that </span>
|
||||
<span class="c"> * facilitates easy creation of delegated event listeners. (Note: Using CSS </span>
|
||||
<span class="c"> * selectors as the filtering criteria for delegated event listeners requires </span>
|
||||
<span class="c"> * inclusion of the Selector Utility.)</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @module element-delegate</span>
|
||||
<span class="c"> * @title Element Event Delegation Module</span>
|
||||
<span class="c"> * @namespace YAHOO.util</span>
|
||||
<span class="c"> * @requires element, event-delegate</span>
|
||||
<span class="c"> */</span>
|
||||
|
||||
<span class="o">(</span><span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">Event</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">,</span>
|
||||
<span class="nx">delegates</span> <span class="o">=</span> <span class="o">[],</span>
|
||||
<span class="nx">specialTypes</span> <span class="o">=</span> <span class="o">{</span>
|
||||
<span class="nx">mouseenter</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
|
||||
<span class="nx">mouseleave</span><span class="o">:</span> <span class="kc">true</span>
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">augmentObject</span><span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Element</span><span class="o">.</span><span class="nx">prototype</span><span class="o">,</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Appends a delegated event listener. Delegated event listeners </span>
|
||||
<span class="c"> * receive two arguments by default: the DOM event and the element </span>
|
||||
<span class="c"> * specified by the filtering function or CSS selector.</span>
|
||||
<span class="c"> * (Note: Using the delegate method requires the element-delegate </span>
|
||||
<span class="c"> * module. Using CSS selectors as the filtering criteria for delegated </span>
|
||||
<span class="c"> * event listeners requires inclusion of the Selector Utility.)</span>
|
||||
<span class="c"> * @method delegate</span>
|
||||
<span class="c"> * @param {String} type The name of the event to listen for</span>
|
||||
<span class="c"> * @param {Function} fn The handler to call when the event fires</span>
|
||||
<span class="c"> * @param {Function|string} filter Function or CSS selector used to </span>
|
||||
<span class="c"> * determine for what element(s) the event listener should be called. </span>
|
||||
<span class="c"> * When a function is specified, the function should return an </span>
|
||||
<span class="c"> * HTML element. Using a CSS Selector requires the inclusion of the </span>
|
||||
<span class="c"> * CSS Selector Utility.</span>
|
||||
<span class="c"> * @param {Any} obj A variable to pass to the handler</span>
|
||||
<span class="c"> * @param {Object} scope The object to use for the scope of the handler </span>
|
||||
<span class="c"> * @return {boolean} Returns true if the delegated event listener </span>
|
||||
<span class="c"> * was added successfully</span>
|
||||
<span class="c"> * @for Element</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">delegate</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">fn</span><span class="o">,</span> <span class="nx">filter</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">filter</span><span class="o">)</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Selector</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Using a CSS selector to define the filtering criteria for a delegated listener requires the Selector Utility."</span><span class="o">,</span> <span class="s2">"error"</span><span class="o">,</span> <span class="s2">"Element"</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">Event</span><span class="o">.</span><span class="nx">_createDelegate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Using delegate functionality requires the event-delegate module."</span><span class="o">,</span> <span class="s2">"error"</span><span class="o">,</span> <span class="s2">"Element"</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">sType</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_getType</span><span class="o">(</span><span class="nx">type</span><span class="o">),</span>
|
||||
<span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s2">"element"</span><span class="o">),</span>
|
||||
<span class="nx">fnDelegate</span><span class="o">,</span>
|
||||
<span class="nx">fnMouseDelegate</span><span class="o">,</span>
|
||||
|
||||
<span class="nx">fnWrapper</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">e</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">fnDelegate</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">e</span><span class="o">);</span>
|
||||
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">specialTypes</span><span class="o">[</span><span class="nx">type</span><span class="o">])</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">Event</span><span class="o">.</span><span class="nx">_createMouseDelegate</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Delegating a "</span> <span class="o">+</span> <span class="nx">type</span> <span class="o">+</span> <span class="s2">" event requires the event-mouseleave module."</span><span class="o">,</span> <span class="s2">"error"</span><span class="o">,</span> <span class="s2">"Element"</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">fnMouseDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_createMouseDelegate</span><span class="o">(</span><span class="nx">fn</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">);</span>
|
||||
|
||||
<span class="nx">fnDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_createDelegate</span><span class="o">(</span><span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">,</span> <span class="nx">matchedEl</span><span class="o">,</span> <span class="nx">container</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">fnMouseDelegate</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">matchedEl</span><span class="o">,</span> <span class="nx">event</span><span class="o">,</span> <span class="nx">container</span><span class="o">);</span>
|
||||
|
||||
<span class="o">},</span> <span class="nx">filter</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">);</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
<span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">fnDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_createDelegate</span><span class="o">(</span><span class="nx">fn</span><span class="o">,</span> <span class="nx">filter</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="nx">delegates</span><span class="o">.</span><span class="nx">push</span><span class="o">([</span><span class="nx">el</span><span class="o">,</span> <span class="nx">sType</span><span class="o">,</span> <span class="nx">fn</span><span class="o">,</span> <span class="nx">fnWrapper</span><span class="o">]);</span>
|
||||
|
||||
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nx">sType</span><span class="o">,</span> <span class="nx">fnWrapper</span><span class="o">);</span>
|
||||
|
||||
<span class="o">},</span>
|
||||
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Remove a delegated event listener</span>
|
||||
<span class="c"> * @method removeDelegate</span>
|
||||
<span class="c"> * @param {String} type The name of the event to listen for</span>
|
||||
<span class="c"> * @param {Function} fn The function call when the event fires</span>
|
||||
<span class="c"> * @return {boolean} Returns true if the unbind was successful, false </span>
|
||||
<span class="c"> * otherwise.</span>
|
||||
<span class="c"> * @for Element</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">removeDelegate</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">fn</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">sType</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_getType</span><span class="o">(</span><span class="nx">type</span><span class="o">),</span>
|
||||
<span class="nx">index</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_getCacheIndex</span><span class="o">(</span><span class="nx">delegates</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s2">"element"</span><span class="o">),</span> <span class="nx">sType</span><span class="o">,</span> <span class="nx">fn</span><span class="o">),</span>
|
||||
<span class="nx">returnVal</span><span class="o">,</span>
|
||||
<span class="nx">cacheItem</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">index</span> <span class="o">>=</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">cacheItem</span> <span class="o">=</span> <span class="nx">delegates</span><span class="o">[</span><span class="nx">index</span><span class="o">];</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">cacheItem</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="nx">returnVal</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">removeListener</span><span class="o">(</span><span class="nx">cacheItem</span><span class="o">[</span><span class="m">1</span><span class="o">],</span> <span class="nx">cacheItem</span><span class="o">[</span><span class="m">3</span><span class="o">]);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">returnVal</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">delete</span> <span class="nx">delegates</span><span class="o">[</span><span class="nx">index</span><span class="o">][</span><span class="m">2</span><span class="o">];</span>
|
||||
<span class="nx">delete</span> <span class="nx">delegates</span><span class="o">[</span><span class="nx">index</span><span class="o">][</span><span class="m">3</span><span class="o">];</span>
|
||||
<span class="nx">delegates</span><span class="o">.</span><span class="nx">splice</span><span class="o">(</span><span class="nx">index</span><span class="o">,</span> <span class="m">1</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">});</span>
|
||||
|
||||
<span class="o">}());</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class="selected"><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class="selected"><a href="Element-Delegate.js.html" title="Element-Delegate.js">Element-Delegate.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -1,8 +1,12 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: yahoo Env.js (YUI Library)</title>
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
|
@ -10,34 +14,40 @@
|
|||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
|
||||
<div id="hd">
|
||||
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
||||
<h3>YAHOO Global <span class="subtitle">2.6.0</span></h3>
|
||||
<p>
|
||||
<a href="./index.html">Yahoo! UI Library</a>
|
||||
> <a href="./module_yahoo.html">yahoo</a>
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>YAHOO Global <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_yahoo.html" title="yahoo">yahoo</a>
|
||||
|
||||
> Env.js (source view)
|
||||
</p>
|
||||
|
||||
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form name="yui-classopts-form">
|
||||
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> <label for="showprivate">Show Private</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div id="srcout">
|
||||
<style>
|
||||
#doc3 #classopts { display:none; }
|
||||
#doc3 .classopts { display:none; }
|
||||
</style>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<span class="c"> * YAHOO.env is used to keep track of what is known about the YUI library and</span>
|
||||
<span class="c"> * the browsing environment</span>
|
||||
<span class="c"> * @class YAHOO.env</span>
|
||||
|
|
@ -98,21 +108,31 @@
|
|||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">o</span><span class="o">={</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">numberfy</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">c</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
|
||||
<span class="k">return</span> <span class="nb">parseFloat</span><span class="o">(</span><span class="nx">s</span><span class="o">.</span><span class="nx">replace</span><span class="o">(</span><span class="sr">/\./g</span><span class="o">,</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="o">(</span><span class="nx">c</span><span class="o">++</span> <span class="o">==</span> <span class="m">1</span><span class="o">)</span> <span class="o">?</span> <span class="s1">''</span> <span class="o">:</span> <span class="s1">'.'</span><span class="o">;</span>
|
||||
<span class="o">}));</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="nx">nav</span> <span class="o">=</span> <span class="nx">navigator</span><span class="o">,</span>
|
||||
|
||||
<span class="nx">o</span> <span class="o">=</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Internet Explorer version number or 0. Example: 6</span>
|
||||
<span class="c"> * @property ie</span>
|
||||
<span class="c"> * @type float</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">ie</span><span class="o">:</span><span class="m">0</span><span class="o">,</span>
|
||||
<span class="nx">ie</span><span class="o">:</span> <span class="m">0</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Opera version number or 0. Example: 9.2</span>
|
||||
<span class="c"> * @property opera</span>
|
||||
<span class="c"> * @type float</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">opera</span><span class="o">:</span><span class="m">0</span><span class="o">,</span>
|
||||
<span class="nx">opera</span><span class="o">:</span> <span class="m">0</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Gecko engine revision number. Will evaluate to 1 if Gecko </span>
|
||||
|
|
@ -127,7 +147,7 @@
|
|||
<span class="c"> * @property gecko</span>
|
||||
<span class="c"> * @type float</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">gecko</span><span class="o">:</span><span class="m">0</span><span class="o">,</span>
|
||||
<span class="nx">gecko</span><span class="o">:</span> <span class="m">0</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * AppleWebKit version. KHTML browsers that are not WebKit browsers </span>
|
||||
|
|
@ -175,64 +195,105 @@
|
|||
<span class="c"> * @property air</span>
|
||||
<span class="c"> * @type float</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">air</span><span class="o">:</span> <span class="m">0</span>
|
||||
<span class="nx">air</span><span class="o">:</span> <span class="m">0</span><span class="o">,</span>
|
||||
|
||||
<span class="o">};</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Google Caja version number or 0.</span>
|
||||
<span class="c"> * @property caja</span>
|
||||
<span class="c"> * @type float</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">caja</span><span class="o">:</span> <span class="nx">nav</span><span class="o">.</span><span class="nx">cajaVersion</span><span class="o">,</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">ua</span><span class="o">=</span><span class="nx">navigator</span><span class="o">.</span><span class="nx">userAgent</span><span class="o">,</span> <span class="nx">m</span><span class="o">;</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Set to true if the page appears to be in SSL</span>
|
||||
<span class="c"> * @property secure</span>
|
||||
<span class="c"> * @type boolean</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">secure</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
|
||||
|
||||
<span class="c">// Modern KHTML browsers should qualify as Safari X-Grade</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">((</span><span class="sr">/KHTML/</span><span class="o">).</span><span class="nx">test</span><span class="o">(</span><span class="nx">ua</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">webkit</span><span class="o">=</span><span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="c">// Modern WebKit browsers are at least X-Grade</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/AppleWebKit\/([^\s]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">&&</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">webkit</span><span class="o">=</span><span class="nb">parseFloat</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * The operating system. Currently only detecting windows or macintosh</span>
|
||||
<span class="c"> * @property os</span>
|
||||
<span class="c"> * @type string</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">os</span><span class="o">:</span> <span class="kc">null</span>
|
||||
|
||||
<span class="c">// Mobile browser check</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="sr">/ Mobile\//</span><span class="o">.</span><span class="nx">test</span><span class="o">(</span><span class="nx">ua</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">mobile</span> <span class="o">=</span> <span class="s2">"Apple"</span><span class="o">;</span> <span class="c">// iPhone or iPod Touch</span>
|
||||
<span class="c"></span> <span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/NokiaN[^\/]*/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">mobile</span> <span class="o">=</span> <span class="nx">m</span><span class="o">[</span><span class="m">0</span><span class="o">];</span> <span class="c">// Nokia N-series, ex: NokiaN95</span>
|
||||
<span class="c"></span> <span class="o">}</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="nx">ua</span> <span class="o">=</span> <span class="nx">navigator</span> <span class="o">&&</span> <span class="nx">navigator</span><span class="o">.</span><span class="nx">userAgent</span><span class="o">,</span>
|
||||
|
||||
<span class="nx">loc</span> <span class="o">=</span> <span class="nb">window</span> <span class="o">&&</span> <span class="nb">window</span><span class="o">.</span><span class="nx">location</span><span class="o">,</span>
|
||||
|
||||
<span class="nx">href</span> <span class="o">=</span> <span class="nx">loc</span> <span class="o">&&</span> <span class="nx">loc</span><span class="o">.</span><span class="nx">href</span><span class="o">,</span>
|
||||
|
||||
<span class="nx">m</span><span class="o">;</span>
|
||||
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">secure</span> <span class="o">=</span> <span class="nx">href</span> <span class="o">&&</span> <span class="o">(</span><span class="nx">href</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">().</span><span class="nx">indexOf</span><span class="o">(</span><span class="s2">"https"</span><span class="o">)</span> <span class="o">===</span> <span class="m">0</span><span class="o">);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">ua</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">((</span><span class="sr">/windows|win32/i</span><span class="o">).</span><span class="nx">test</span><span class="o">(</span><span class="nx">ua</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">os</span> <span class="o">=</span> <span class="s1">'windows'</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">((</span><span class="sr">/macintosh/i</span><span class="o">).</span><span class="nx">test</span><span class="o">(</span><span class="nx">ua</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">os</span> <span class="o">=</span> <span class="s1">'macintosh'</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Modern KHTML browsers should qualify as Safari X-Grade</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">((</span><span class="sr">/KHTML/</span><span class="o">).</span><span class="nx">test</span><span class="o">(</span><span class="nx">ua</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">webkit</span><span class="o">=</span><span class="m">1</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/AdobeAIR\/([^\s]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">air</span> <span class="o">=</span> <span class="nx">m</span><span class="o">[</span><span class="m">0</span><span class="o">];</span> <span class="c">// Adobe AIR 1.0 or better</span>
|
||||
<span class="c"></span> <span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">o</span><span class="o">.</span><span class="nx">webkit</span><span class="o">)</span> <span class="o">{</span> <span class="c">// not webkit</span>
|
||||
<span class="c"></span> <span class="c">// @todo check Opera/8.01 (J2ME/MIDP; Opera Mini/2.0.4509/1316; fi; U; ssr)</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/Opera[\s\/]([^\s]*)/</span><span class="o">);</span>
|
||||
<span class="c">// Modern WebKit browsers are at least X-Grade</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/AppleWebKit\/([^\s]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">&&</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">opera</span><span class="o">=</span><span class="nb">parseFloat</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
||||
<span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/Opera Mini[^;]*/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">mobile</span> <span class="o">=</span> <span class="nx">m</span><span class="o">[</span><span class="m">0</span><span class="o">];</span> <span class="c">// ex: Opera Mini/2.0.4509/1316</span>
|
||||
<span class="c"></span> <span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// not opera or webkit</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/MSIE\s([^;]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">&&</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">ie</span><span class="o">=</span><span class="nb">parseFloat</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// not opera, webkit, or ie</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/Gecko\/([^\s]*)/</span><span class="o">);</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">webkit</span><span class="o">=</span><span class="nx">numberfy</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
||||
|
||||
<span class="c">// Mobile browser check</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="sr">/ Mobile\//</span><span class="o">.</span><span class="nx">test</span><span class="o">(</span><span class="nx">ua</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">mobile</span> <span class="o">=</span> <span class="s2">"Apple"</span><span class="o">;</span> <span class="c">// iPhone or iPod Touch</span>
|
||||
<span class="c"></span> <span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/NokiaN[^\/]*/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">gecko</span><span class="o">=</span><span class="m">1</span><span class="o">;</span> <span class="c">// Gecko detected, look for revision</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/rv:([^\s\)]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">&&</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">gecko</span><span class="o">=</span><span class="nb">parseFloat</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">mobile</span> <span class="o">=</span> <span class="nx">m</span><span class="o">[</span><span class="m">0</span><span class="o">];</span> <span class="c">// Nokia N-series, ex: NokiaN95</span>
|
||||
<span class="c"></span> <span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/AdobeAIR\/([^\s]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">air</span> <span class="o">=</span> <span class="nx">m</span><span class="o">[</span><span class="m">0</span><span class="o">];</span> <span class="c">// Adobe AIR 1.0 or better</span>
|
||||
<span class="c"></span> <span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">o</span><span class="o">.</span><span class="nx">webkit</span><span class="o">)</span> <span class="o">{</span> <span class="c">// not webkit</span>
|
||||
<span class="c"></span> <span class="c">// @todo check Opera/8.01 (J2ME/MIDP; Opera Mini/2.0.4509/1316; fi; U; ssr)</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/Opera[\s\/]([^\s]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">&&</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">opera</span><span class="o">=</span><span class="nx">numberfy</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
||||
<span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/Opera Mini[^;]*/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">mobile</span> <span class="o">=</span> <span class="nx">m</span><span class="o">[</span><span class="m">0</span><span class="o">];</span> <span class="c">// ex: Opera Mini/2.0.4509/1316</span>
|
||||
<span class="c"></span> <span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// not opera or webkit</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/MSIE\s([^;]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">&&</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">ie</span><span class="o">=</span><span class="nx">numberfy</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// not opera, webkit, or ie</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/Gecko\/([^\s]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">gecko</span><span class="o">=</span><span class="m">1</span><span class="o">;</span> <span class="c">// Gecko detected, look for revision</span>
|
||||
<span class="c"></span> <span class="nx">m</span><span class="o">=</span><span class="nx">ua</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/rv:([^\s\)]*)/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">&&</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">o</span><span class="o">.</span><span class="nx">gecko</span><span class="o">=</span><span class="nx">numberfy</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="k">return</span> <span class="nx">o</span><span class="o">;</span>
|
||||
<span class="o">}();</span>
|
||||
|
||||
|
|
@ -246,18 +307,20 @@
|
|||
<span class="c"> */</span>
|
||||
<span class="o">(</span><span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">namespace</span><span class="o">(</span><span class="s2">"util"</span><span class="o">,</span> <span class="s2">"widget"</span><span class="o">,</span> <span class="s2">"example"</span><span class="o">);</span>
|
||||
<span class="c">/*global YAHOO_config*/</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="s2">"undefined"</span> <span class="o">!==</span> <span class="k">typeof</span> <span class="nx">YAHOO_config</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">l</span><span class="o">=</span><span class="nx">YAHOO_config</span><span class="o">.</span><span class="nx">listener</span><span class="o">,</span><span class="nx">ls</span><span class="o">=</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">listeners</span><span class="o">,</span><span class="nx">unique</span><span class="o">=</span><span class="kc">true</span><span class="o">,</span><span class="nx">i</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">l</span><span class="o">=</span><span class="nx">YAHOO_config</span><span class="o">.</span><span class="nx">listener</span><span class="o">,</span> <span class="nx">ls</span><span class="o">=</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">listeners</span><span class="o">,</span><span class="nx">unique</span><span class="o">=</span><span class="kc">true</span><span class="o">,</span> <span class="nx">i</span><span class="o">;</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">l</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">// if YAHOO is loaded multiple times we need to check to see if</span>
|
||||
<span class="c"></span> <span class="c">// this is a new config object. If it is, add the new component</span>
|
||||
<span class="c"></span> <span class="c">// load listener to the stack</span>
|
||||
<span class="c"></span> <span class="k">for</span> <span class="o">(</span><span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="nx">ls</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span><span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">ls</span><span class="o">[</span><span class="nx">i</span><span class="o">]==</span><span class="nx">l</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">unique</span><span class="o">=</span><span class="kc">false</span><span class="o">;</span>
|
||||
<span class="c"></span> <span class="k">for</span> <span class="o">(</span><span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">ls</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span><span class="o">++)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">ls</span><span class="o">[</span><span class="nx">i</span><span class="o">]</span> <span class="o">==</span> <span class="nx">l</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">unique</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="k">break</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">unique</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">ls</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">l</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
|
@ -265,109 +328,84 @@
|
|||
<span class="o">}</span>
|
||||
<span class="o">})();</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div class="module">
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
|
||||
<li class=""><a href="module_animation.html">animation</a></li>
|
||||
|
||||
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
||||
|
||||
<li class=""><a href="module_button.html">button</a></li>
|
||||
|
||||
<li class=""><a href="module_calendar.html">calendar</a></li>
|
||||
|
||||
<li class=""><a href="module_carousel.html">carousel</a></li>
|
||||
|
||||
<li class=""><a href="module_charts.html">charts</a></li>
|
||||
|
||||
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
||||
|
||||
<li class=""><a href="module_connection.html">connection</a></li>
|
||||
|
||||
<li class=""><a href="module_container.html">container</a></li>
|
||||
|
||||
<li class=""><a href="module_cookie.html">cookie</a></li>
|
||||
|
||||
<li class=""><a href="module_datasource.html">datasource</a></li>
|
||||
|
||||
<li class=""><a href="module_datatable.html">datatable</a></li>
|
||||
|
||||
<li class=""><a href="module_dom.html">dom</a></li>
|
||||
|
||||
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
||||
|
||||
<li class=""><a href="module_editor.html">editor</a></li>
|
||||
|
||||
<li class=""><a href="module_element.html">element</a></li>
|
||||
|
||||
<li class=""><a href="module_event.html">event</a></li>
|
||||
|
||||
<li class=""><a href="module_get.html">get</a></li>
|
||||
|
||||
<li class=""><a href="module_history.html">history</a></li>
|
||||
|
||||
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
||||
|
||||
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
||||
|
||||
<li class=""><a href="module_json.html">json</a></li>
|
||||
|
||||
<li class=""><a href="module_layout.html">layout</a></li>
|
||||
|
||||
<li class=""><a href="module_logger.html">logger</a></li>
|
||||
|
||||
<li class=""><a href="module_menu.html">menu</a></li>
|
||||
|
||||
<li class=""><a href="module_paginator.html">paginator</a></li>
|
||||
|
||||
<li class=""><a href="module_profiler.html">profiler</a></li>
|
||||
|
||||
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
||||
|
||||
<li class=""><a href="module_resize.html">resize</a></li>
|
||||
|
||||
<li class=""><a href="module_selector.html">selector</a></li>
|
||||
|
||||
<li class=""><a href="module_slider.html">slider</a></li>
|
||||
|
||||
<li class=""><a href="module_tabview.html">tabview</a></li>
|
||||
|
||||
<li class=""><a href="module_treeview.html">treeview</a></li>
|
||||
|
||||
<li class=""><a href="module_uploader.html">uploader</a></li>
|
||||
|
||||
<li class="selected"><a href="module_yahoo.html">yahoo</a></li>
|
||||
|
||||
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
||||
|
||||
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class="selected"><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="classList" class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="YAHOO.html">YAHOO</a></li>
|
||||
<li class=""><a href="YAHOO.env.html">YAHOO.env</a></li>
|
||||
<li class=""><a href="YAHOO.env.ua.html">YAHOO.env.ua</a></li>
|
||||
<li class=""><a href="YAHOO.lang.html">YAHOO.lang</a></li>
|
||||
<li class=""><a href="YAHOO_config.html">YAHOO_config</a></li>
|
||||
<li class=""><a href="YAHOO.html" title="YAHOO">YAHOO</a></li>
|
||||
<li class=""><a href="YAHOO.env.html" title="YAHOO.env">YAHOO.env</a></li>
|
||||
<li class=""><a href="YAHOO.env.ua.html" title="YAHOO.env.ua">YAHOO.env.ua</a></li>
|
||||
<li class=""><a href="YAHOO.lang.html" title="YAHOO.lang">YAHOO.lang</a></li>
|
||||
<li class=""><a href="YAHOO_config.html" title="YAHOO_config">YAHOO_config</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class="selected"><a href="Env.js.html">Env.js</a></li>
|
||||
<li class=""><a href="Lang.js.html">Lang.js</a></li>
|
||||
<li class=""><a href="YAHOO.js.html">YAHOO.js</a></li>
|
||||
<li class="selected"><a href="Env.js.html" title="Env.js">Env.js</a></li>
|
||||
<li class=""><a href="Lang.js.html" title="Lang.js">Lang.js</a></li>
|
||||
<li class=""><a href="YAHOO.js.html" title="YAHOO.js">YAHOO.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -380,8 +418,11 @@
|
|||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2008 Yahoo! Inc. All rights reserved.
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [{"access": "", "host": "YAHOO.env.ua", "name": "air", "url": "YAHOO.env.ua.html#property_air", "type": "property"}, {"access": "", "host": "YAHOO.lang", "name": "augment", "url": "YAHOO.lang.html#method_augment", "type": "method"}, {"access": "", "host": "YAHOO", "name": "augment", "url": "YAHOO.html#method_augment", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "augmentObject", "url": "YAHOO.lang.html#method_augmentObject", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "augmentProto", "url": "YAHOO.lang.html#method_augmentProto", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "caja", "url": "YAHOO.env.ua.html#property_caja", "type": "property"}, {"access": "", "host": "YAHOO.lang", "name": "dump", "url": "YAHOO.lang.html#method_dump", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "extend", "url": "YAHOO.lang.html#method_extend", "type": "method"}, {"access": "", "host": "YAHOO", "name": "extend", "url": "YAHOO.html#method_extend", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "gecko", "url": "YAHOO.env.ua.html#property_gecko", "type": "property"}, {"access": "", "host": "YAHOO.env", "name": "getVersion", "url": "YAHOO.env.html#method_getVersion", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "hasOwnProperty", "url": "YAHOO.lang.html#method_hasOwnProperty", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "ie", "url": "YAHOO.env.ua.html#property_ie", "type": "property"}, {"access": "private", "host": "YAHOO.lang", "name": "_IEEnumFix", "url": "YAHOO.lang.html#property__IEEnumFix", "type": "property"}, {"access": "", "host": "YAHOO_config", "name": "injecting", "url": "YAHOO_config.html#property_injecting", "type": "property"}, {"access": "", "host": "YAHOO.lang", "name": "isArray", "url": "YAHOO.lang.html#method_isArray", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isBoolean", "url": "YAHOO.lang.html#method_isBoolean", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isFunction", "url": "YAHOO.lang.html#method_isFunction", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isNull", "url": "YAHOO.lang.html#method_isNull", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isNumber", "url": "YAHOO.lang.html#method_isNumber", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isObject", "url": "YAHOO.lang.html#method_isObject", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isString", "url": "YAHOO.lang.html#method_isString", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isUndefined", "url": "YAHOO.lang.html#method_isUndefined", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isValue", "url": "YAHOO.lang.html#method_isValue", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "later", "url": "YAHOO.lang.html#method_later", "type": "method"}, {"access": "", "host": "YAHOO_config", "name": "listener", "url": "YAHOO_config.html#property_listener", "type": "property"}, {"access": "", "host": "YAHOO.env", "name": "listeners", "url": "YAHOO.env.html#property_listeners", "type": "property"}, {"access": "", "host": "YAHOO_config", "name": "load", "url": "YAHOO_config.html#property_load", "type": "property"}, {"access": "", "host": "YAHOO_config", "name": "locale", "url": "YAHOO_config.html#property_locale", "type": "property"}, {"access": "", "host": "YAHOO", "name": "log", "url": "YAHOO.html#method_log", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "merge", "url": "YAHOO.lang.html#method_merge", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "mobile", "url": "YAHOO.env.ua.html#property_mobile", "type": "property"}, {"access": "", "host": "YAHOO.env", "name": "modules", "url": "YAHOO.env.html#property_modules", "type": "property"}, {"access": "", "host": "YAHOO", "name": "namespace", "url": "YAHOO.html#method_namespace", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "opera", "url": "YAHOO.env.ua.html#property_opera", "type": "property"}, {"access": "", "host": "YAHOO.env.ua", "name": "os", "url": "YAHOO.env.ua.html#property_os", "type": "property"}, {"access": "", "host": "YAHOO", "name": "register", "url": "YAHOO.html#method_register", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "secure", "url": "YAHOO.env.ua.html#property_secure", "type": "property"}, {"access": "", "host": "YAHOO.lang", "name": "substitute", "url": "YAHOO.lang.html#method_substitute", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "trim", "url": "YAHOO.lang.html#method_trim", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "webkit", "url": "YAHOO.env.ua.html#property_webkit", "type": "property"}];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1,8 +1,12 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<title>API: event YAHOO.util.EventProvider (YUI Library)</title>
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: event EventProvider (YUI Library)</title>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
|
@ -10,27 +14,33 @@
|
|||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
|
||||
<div id="hd">
|
||||
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
||||
<h3>Event Utility <span class="subtitle">2.6.0</span></h3>
|
||||
<p>
|
||||
<a href="./index.html">Yahoo! UI Library</a>
|
||||
> <a href="./module_event.html">event</a>
|
||||
> YAHOO.util.EventProvider
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>Event Utility <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_event.html" title="event">event</a>
|
||||
> EventProvider
|
||||
|
||||
</p>
|
||||
|
||||
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form name="yui-classopts-form">
|
||||
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> <label for="showprivate">Show Private</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<h2>
|
||||
|
|
@ -38,21 +48,17 @@
|
|||
|
||||
|
||||
|
||||
Class <b>YAHOO.util.EventProvider</b>
|
||||
Class <b property="yui:name">EventProvider</b>
|
||||
<span class="extends">
|
||||
</span>
|
||||
|
||||
<span class="extends">
|
||||
</span>
|
||||
|
||||
</code>
|
||||
</h2>
|
||||
<!-- class tree goes here -->
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="summary description">
|
||||
<div class="summary description" property="yui:description">
|
||||
EventProvider is designed to be used with YAHOO.augment to wrap
|
||||
CustomEvents in an interface that allows events to be subscribed to
|
||||
and fired by name. This makes it possible for implementing code to
|
||||
|
|
@ -60,16 +66,17 @@ subscribe to an event that either has not been created yet, or will
|
|||
not be created at all.
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div rel="yui:properties" resource="#properties">
|
||||
<div class="section field details">
|
||||
<h3 id="properties">Properties</h3>
|
||||
<div class="content">
|
||||
<div class="private">
|
||||
<h4><a name="property___yui_events">__yui_events</a>
|
||||
<code>- private Object[]</code>
|
||||
<div class="private" rel="yui:property" resource="#property___yui_events">
|
||||
<h4><a name="property___yui_events" property="yui:name">__yui_events</a>
|
||||
- <code>private <span property="yui:type">Object[]</span></code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Private storage of custom events
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -79,12 +86,12 @@ not be created at all.
|
|||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4><a name="property___yui_subscribers">__yui_subscribers</a>
|
||||
<code>- private Object[]</code>
|
||||
<div class="private" rel="yui:property" resource="#property___yui_subscribers">
|
||||
<h4><a name="property___yui_subscribers" property="yui:name">__yui_subscribers</a>
|
||||
- <code>private <span property="yui:type">Object[]</span></code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Private storage of custom event subscribers
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -94,25 +101,25 @@ not be created at all.
|
|||
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div rel="yui:methods" resource="#methods">
|
||||
<div class="section method details">
|
||||
<h3 id="methods">Methods</h3>
|
||||
<div class="content">
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_createEvent">
|
||||
<h4>
|
||||
<a name="method_createEvent">createEvent</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
CustomEvent
|
||||
<strong>createEvent</strong>
|
||||
<strong property="yui:name">createEvent</strong>
|
||||
(
|
||||
|
||||
|
||||
|
|
@ -126,7 +133,7 @@ not be created at all.
|
|||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Creates a new custom event of the specified type. If a custom event
|
||||
by that name already exists, it will not be re-created. In either
|
||||
case the custom event is returned.
|
||||
|
|
@ -134,15 +141,19 @@ case the custom event is returned.
|
|||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>p_type <string></code>
|
||||
the type, or name of the event
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_type</span>
|
||||
<<span property="yui:type">string</span>>
|
||||
</code>
|
||||
<span property="yui:description"> the type, or name of the event</span>
|
||||
</dd>
|
||||
<dd>
|
||||
<code>p_config <object></code>
|
||||
optional config params. Valid properties are:
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_config</span>
|
||||
<<span property="yui:type">object</span>>
|
||||
</code>
|
||||
<span property="yui:description"> optional config params. Valid properties are:
|
||||
<ul>
|
||||
<li>
|
||||
scope: defines the default execution scope. If not defined
|
||||
|
|
@ -153,21 +164,28 @@ silent: if true, the custom event will not generate log messages.
|
|||
This is false by default.
|
||||
</li>
|
||||
<li>
|
||||
fireOnce: if true, the custom event will only notify subscribers
|
||||
once regardless of the number of times the event is fired. In
|
||||
addition, new subscribers will be executed immediately if the
|
||||
event has already fired.
|
||||
This is false by default.
|
||||
</li>
|
||||
<li>
|
||||
onSubscribeCallback: specifies a callback to execute when the
|
||||
event has a new subscriber. This will fire immediately for
|
||||
each queued subscriber if any exist prior to the creation of
|
||||
the event.
|
||||
</li>
|
||||
</ul>
|
||||
</ul></span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
CustomEvent
|
||||
</code></dt>
|
||||
<dd>the custom event</dd>
|
||||
<dd property="yui:returnInfo">the custom event</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -178,16 +196,16 @@ the event.
|
|||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_fireEvent">
|
||||
<h4>
|
||||
<a name="method_fireEvent">fireEvent</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
boolean
|
||||
<strong>fireEvent</strong>
|
||||
<strong property="yui:name">fireEvent</strong>
|
||||
(
|
||||
|
||||
|
||||
|
|
@ -201,7 +219,7 @@ the event.
|
|||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Fire a custom event by name. The callback functions will be executed
|
||||
from the scope specified when the event was created, and with the
|
||||
following parameters:
|
||||
|
|
@ -214,25 +232,29 @@ method</li>
|
|||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>p_type <string></code>
|
||||
the type, or name of the event
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_type</span>
|
||||
<<span property="yui:type">string</span>>
|
||||
</code>
|
||||
<span property="yui:description"> the type, or name of the event</span>
|
||||
</dd>
|
||||
<dd>
|
||||
<code>arguments <Object*></code>
|
||||
an arbitrary set of parameters to pass to
|
||||
the handler.
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">arguments</span>
|
||||
<<span property="yui:type">Object*</span>>
|
||||
</code>
|
||||
<span property="yui:description"> an arbitrary set of parameters to pass to
|
||||
the handler.</span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
boolean
|
||||
</code></dt>
|
||||
<dd>the return value from CustomEvent.fire</dd>
|
||||
<dd property="yui:returnInfo">the return value from CustomEvent.fire</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -243,16 +265,16 @@ the handler.
|
|||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_hasEvent">
|
||||
<h4>
|
||||
<a name="method_hasEvent">hasEvent</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
void
|
||||
<strong>hasEvent</strong>
|
||||
<strong property="yui:name">hasEvent</strong>
|
||||
(
|
||||
|
||||
|
||||
|
|
@ -262,27 +284,29 @@ the handler.
|
|||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Returns true if the custom event of the provided type has been created
|
||||
with createEvent.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>type <string></code>
|
||||
the type, or name of the event
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">type</span>
|
||||
<<span property="yui:type">string</span>>
|
||||
</code>
|
||||
<span property="yui:description"> the type, or name of the event</span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
void
|
||||
</code></dt>
|
||||
<dd></dd>
|
||||
<dd property="yui:returnInfo"></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -293,16 +317,16 @@ with createEvent.
|
|||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_subscribe">
|
||||
<h4>
|
||||
<a name="method_subscribe">subscribe</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
void
|
||||
<strong>subscribe</strong>
|
||||
<strong property="yui:name">subscribe</strong>
|
||||
(
|
||||
|
||||
|
||||
|
|
@ -318,46 +342,54 @@ with createEvent.
|
|||
|
||||
|
||||
,
|
||||
p_override
|
||||
overrideContext
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Subscribe to a CustomEvent by event type
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>p_type <string></code>
|
||||
the type, or name of the event
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_type</span>
|
||||
<<span property="yui:type">string</span>>
|
||||
</code>
|
||||
<span property="yui:description"> the type, or name of the event</span>
|
||||
</dd>
|
||||
<dd>
|
||||
<code>p_fn <function></code>
|
||||
the function to exectute when the event fires
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_fn</span>
|
||||
<<span property="yui:type">function</span>>
|
||||
</code>
|
||||
<span property="yui:description"> the function to exectute when the event fires</span>
|
||||
</dd>
|
||||
<dd>
|
||||
<code>p_obj <Object></code>
|
||||
An object to be passed along when the event
|
||||
fires
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_obj</span>
|
||||
<<span property="yui:type">Object</span>>
|
||||
</code>
|
||||
<span property="yui:description"> An object to be passed along when the event
|
||||
fires</span>
|
||||
</dd>
|
||||
<dd>
|
||||
<code>p_override <boolean></code>
|
||||
If true, the obj passed in becomes the
|
||||
execution scope of the listener
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">overrideContext</span>
|
||||
<<span property="yui:type">boolean</span>>
|
||||
</code>
|
||||
<span property="yui:description"> If true, the obj passed in becomes the
|
||||
execution scope of the listener</span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
void
|
||||
</code></dt>
|
||||
<dd></dd>
|
||||
<dd property="yui:returnInfo"></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -368,16 +400,16 @@ execution scope of the listener
|
|||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_unsubscribe">
|
||||
<h4>
|
||||
<a name="method_unsubscribe">unsubscribe</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
boolean
|
||||
<strong>unsubscribe</strong>
|
||||
<strong property="yui:name">unsubscribe</strong>
|
||||
(
|
||||
|
||||
|
||||
|
|
@ -395,41 +427,47 @@ execution scope of the listener
|
|||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Unsubscribes one or more listeners the from the specified event
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>p_type <string></code>
|
||||
The type, or name of the event. If the type
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_type</span>
|
||||
<<span property="yui:type">string</span>>
|
||||
</code>
|
||||
<span property="yui:description"> The type, or name of the event. If the type
|
||||
is not specified, it will attempt to remove
|
||||
the listener from all hosted events.
|
||||
the listener from all hosted events.</span>
|
||||
</dd>
|
||||
<dd>
|
||||
<code>p_fn <Function></code>
|
||||
The subscribed function to unsubscribe, if not
|
||||
supplied, all subscribers will be removed.
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_fn</span>
|
||||
<<span property="yui:type">Function</span>>
|
||||
</code>
|
||||
<span property="yui:description"> The subscribed function to unsubscribe, if not
|
||||
supplied, all subscribers will be removed.</span>
|
||||
</dd>
|
||||
<dd>
|
||||
<code>p_obj <Object></code>
|
||||
The custom object passed to subscribe. This is
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_obj</span>
|
||||
<<span property="yui:type">Object</span>>
|
||||
</code>
|
||||
<span property="yui:description"> The custom object passed to subscribe. This is
|
||||
optional, but if supplied will be used to
|
||||
disambiguate multiple listeners that are the same
|
||||
(e.g., you subscribe many object using a function
|
||||
that lives on the prototype)
|
||||
that lives on the prototype)</span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
boolean
|
||||
</code></dt>
|
||||
<dd>true if the subscriber was found and detached.</dd>
|
||||
<dd property="yui:returnInfo">true if the subscriber was found and detached.</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -440,16 +478,16 @@ that lives on the prototype)
|
|||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_unsubscribeAll">
|
||||
<h4>
|
||||
<a name="method_unsubscribeAll">unsubscribeAll</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
void
|
||||
<strong>unsubscribeAll</strong>
|
||||
<strong property="yui:name">unsubscribeAll</strong>
|
||||
(
|
||||
|
||||
|
||||
|
|
@ -459,7 +497,7 @@ that lives on the prototype)
|
|||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Removes all listeners from the specified event. If the event type
|
||||
is not specified, all listeners from all hosted custom events will
|
||||
be removed.
|
||||
|
|
@ -467,20 +505,22 @@ be removed.
|
|||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>p_type <string></code>
|
||||
The type, or name of the event
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">p_type</span>
|
||||
<<span property="yui:type">string</span>>
|
||||
</code>
|
||||
<span property="yui:description"> The type, or name of the event</span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
void
|
||||
</code></dt>
|
||||
<dd></dd>
|
||||
<dd property="yui:returnInfo"></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -494,151 +534,114 @@ be removed.
|
|||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div rel="yui:events" resource="#events">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div rel="yui:attributes" resource="#configattributes">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div class="module">
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
|
||||
<li class=""><a href="module_animation.html">animation</a></li>
|
||||
|
||||
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
||||
|
||||
<li class=""><a href="module_button.html">button</a></li>
|
||||
|
||||
<li class=""><a href="module_calendar.html">calendar</a></li>
|
||||
|
||||
<li class=""><a href="module_carousel.html">carousel</a></li>
|
||||
|
||||
<li class=""><a href="module_charts.html">charts</a></li>
|
||||
|
||||
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
||||
|
||||
<li class=""><a href="module_connection.html">connection</a></li>
|
||||
|
||||
<li class=""><a href="module_container.html">container</a></li>
|
||||
|
||||
<li class=""><a href="module_cookie.html">cookie</a></li>
|
||||
|
||||
<li class=""><a href="module_datasource.html">datasource</a></li>
|
||||
|
||||
<li class=""><a href="module_datatable.html">datatable</a></li>
|
||||
|
||||
<li class=""><a href="module_dom.html">dom</a></li>
|
||||
|
||||
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
||||
|
||||
<li class=""><a href="module_editor.html">editor</a></li>
|
||||
|
||||
<li class=""><a href="module_element.html">element</a></li>
|
||||
|
||||
<li class="selected"><a href="module_event.html">event</a></li>
|
||||
|
||||
<li class=""><a href="module_get.html">get</a></li>
|
||||
|
||||
<li class=""><a href="module_history.html">history</a></li>
|
||||
|
||||
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
||||
|
||||
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
||||
|
||||
<li class=""><a href="module_json.html">json</a></li>
|
||||
|
||||
<li class=""><a href="module_layout.html">layout</a></li>
|
||||
|
||||
<li class=""><a href="module_logger.html">logger</a></li>
|
||||
|
||||
<li class=""><a href="module_menu.html">menu</a></li>
|
||||
|
||||
<li class=""><a href="module_paginator.html">paginator</a></li>
|
||||
|
||||
<li class=""><a href="module_profiler.html">profiler</a></li>
|
||||
|
||||
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
||||
|
||||
<li class=""><a href="module_resize.html">resize</a></li>
|
||||
|
||||
<li class=""><a href="module_selector.html">selector</a></li>
|
||||
|
||||
<li class=""><a href="module_slider.html">slider</a></li>
|
||||
|
||||
<li class=""><a href="module_tabview.html">tabview</a></li>
|
||||
|
||||
<li class=""><a href="module_treeview.html">treeview</a></li>
|
||||
|
||||
<li class=""><a href="module_uploader.html">uploader</a></li>
|
||||
|
||||
<li class=""><a href="module_yahoo.html">yahoo</a></li>
|
||||
|
||||
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
||||
|
||||
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class="selected"><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="classList" class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="YAHOO.util.CustomEvent.html">YAHOO.util.CustomEvent</a></li>
|
||||
<li class=""><a href="YAHOO.util.Event.html">YAHOO.util.Event</a></li>
|
||||
<li class="selected"><a href="YAHOO.util.EventProvider.html">YAHOO.util.EventProvider</a></li>
|
||||
<li class=""><a href="YAHOO.util.KeyListener.html">YAHOO.util.KeyListener</a></li>
|
||||
<li class=""><a href="YAHOO.util.Subscriber.html">YAHOO.util.Subscriber</a></li>
|
||||
<li class="selected"><a href="EventProvider.html" title="EventProvider">EventProvider</a></li>
|
||||
<li class=""><a href="YAHOO.util.CustomEvent.html" title="YAHOO.util.CustomEvent">YAHOO.util.CustomEvent</a></li>
|
||||
<li class=""><a href="YAHOO.util.Event.html" title="YAHOO.util.Event">YAHOO.util.Event</a></li>
|
||||
<li class=""><a href="YAHOO.util.KeyListener.html" title="YAHOO.util.KeyListener">YAHOO.util.KeyListener</a></li>
|
||||
<li class=""><a href="YAHOO.util.Subscriber.html" title="YAHOO.util.Subscriber">YAHOO.util.Subscriber</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="CustomEvent.js.html">CustomEvent.js</a></li>
|
||||
<li class=""><a href="Event.js.html">Event.js</a></li>
|
||||
<li class=""><a href="EventProvider.js.html">EventProvider.js</a></li>
|
||||
<li class=""><a href="KeyListener.js.html">KeyListener.js</a></li>
|
||||
<li class=""><a href="CustomEvent.js.html" title="CustomEvent.js">CustomEvent.js</a></li>
|
||||
<li class=""><a href="Event.js.html" title="Event.js">Event.js</a></li>
|
||||
<li class=""><a href="EventProvider.js.html" title="EventProvider.js">EventProvider.js</a></li>
|
||||
<li class=""><a href="KeyListener.js.html" title="KeyListener.js">KeyListener.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="propertyList" class="module">
|
||||
<h4>Properties</h4>
|
||||
<ul class="content">
|
||||
<li class="private"><a href="#property___yui_events">__yui_events</a>
|
||||
<!--<code><Object[]></code>-->
|
||||
</li>
|
||||
<li class="private"><a href="#property___yui_subscribers">__yui_subscribers</a>
|
||||
<!--<code><Object[]></code>-->
|
||||
</li>
|
||||
<li class="private"><a href="#property___yui_events" title="__yui_events">__yui_events</a></li>
|
||||
<li class="private"><a href="#property___yui_subscribers" title="__yui_subscribers">__yui_subscribers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="methodsList" class="module">
|
||||
<h4>Methods</h4>
|
||||
<ul class="content">
|
||||
<li class=""><!--<code>CustomEvent</code>-->
|
||||
<a href="#method_createEvent">createEvent</a>
|
||||
</li>
|
||||
<li class=""><!--<code>boolean</code>-->
|
||||
<a href="#method_fireEvent">fireEvent</a>
|
||||
</li>
|
||||
<li class=""><!--<code>void</code>-->
|
||||
<a href="#method_hasEvent">hasEvent</a>
|
||||
</li>
|
||||
<li class=""><!--<code>void</code>-->
|
||||
<a href="#method_subscribe">subscribe</a>
|
||||
</li>
|
||||
<li class=""><!--<code>boolean</code>-->
|
||||
<a href="#method_unsubscribe">unsubscribe</a>
|
||||
</li>
|
||||
<li class=""><!--<code>void</code>-->
|
||||
<a href="#method_unsubscribeAll">unsubscribeAll</a>
|
||||
</li>
|
||||
<li class=""><a href="#method_createEvent" title="createEvent">createEvent</a></li>
|
||||
<li class=""><a href="#method_fireEvent" title="fireEvent">fireEvent</a></li>
|
||||
<li class=""><a href="#method_hasEvent" title="hasEvent">hasEvent</a></li>
|
||||
<li class=""><a href="#method_subscribe" title="subscribe">subscribe</a></li>
|
||||
<li class=""><a href="#method_unsubscribe" title="unsubscribe">unsubscribe</a></li>
|
||||
<li class=""><a href="#method_unsubscribeAll" title="unsubscribeAll">unsubscribeAll</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -649,8 +652,11 @@ be removed.
|
|||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2008 Yahoo! Inc. All rights reserved.
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [{"access": "", "host": "EventProvider", "name": "createEvent", "url": "EventProvider.html#method_createEvent", "type": "method"}, {"access": "", "host": "EventProvider", "name": "fireEvent", "url": "EventProvider.html#method_fireEvent", "type": "method"}, {"access": "", "host": "EventProvider", "name": "hasEvent", "url": "EventProvider.html#method_hasEvent", "type": "method"}, {"access": "", "host": "EventProvider", "name": "subscribe", "url": "EventProvider.html#method_subscribe", "type": "method"}, {"access": "", "host": "EventProvider", "name": "unsubscribe", "url": "EventProvider.html#method_unsubscribe", "type": "method"}, {"access": "", "host": "EventProvider", "name": "unsubscribeAll", "url": "EventProvider.html#method_unsubscribeAll", "type": "method"}, {"access": "private", "host": "EventProvider", "name": "__yui_events", "url": "EventProvider.html#property___yui_events", "type": "property"}, {"access": "private", "host": "EventProvider", "name": "__yui_subscribers", "url": "EventProvider.html#property___yui_subscribers", "type": "property"}];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,8 +1,12 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: get Get.js (YUI Library)</title>
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
|
@ -10,34 +14,40 @@
|
|||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
|
||||
<div id="hd">
|
||||
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
||||
<h3>get <span class="subtitle">2.6.0</span></h3>
|
||||
<p>
|
||||
<a href="./index.html">Yahoo! UI Library</a>
|
||||
> <a href="./module_get.html">get</a>
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>get <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_get.html" title="get">get</a>
|
||||
|
||||
> Get.js (source view)
|
||||
</p>
|
||||
|
||||
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form name="yui-classopts-form">
|
||||
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> <label for="showprivate">Show Private</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div id="srcout">
|
||||
<style>
|
||||
#doc3 #classopts { display:none; }
|
||||
#doc3 .classopts { display:none; }
|
||||
</style>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<span class="c"> * Provides a mechanism to fetch remote resources and</span>
|
||||
<span class="c"> * insert them into a document</span>
|
||||
<span class="c"> * @module get</span>
|
||||
|
|
@ -120,15 +130,20 @@
|
|||
<span class="c"> * @return {HTMLElement} the generated node</span>
|
||||
<span class="c"> * @private</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="k">var</span> <span class="nx">_linkNode</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="nx">win</span><span class="o">,</span> <span class="nx">charset</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">c</span> <span class="o">=</span> <span class="nx">charset</span> <span class="o">||</span> <span class="s2">"utf-8"</span><span class="o">;</span>
|
||||
<span class="k">return</span> <span class="nx">_node</span><span class="o">(</span><span class="s2">"link"</span><span class="o">,</span> <span class="o">{</span>
|
||||
<span class="s2">"id"</span><span class="o">:</span> <span class="s2">"yui__dyn_"</span> <span class="o">+</span> <span class="o">(</span><span class="nx">nidx</span><span class="o">++),</span>
|
||||
<span class="s2">"type"</span><span class="o">:</span> <span class="s2">"text/css"</span><span class="o">,</span>
|
||||
<span class="s2">"charset"</span><span class="o">:</span> <span class="nx">c</span><span class="o">,</span>
|
||||
<span class="s2">"rel"</span><span class="o">:</span> <span class="s2">"stylesheet"</span><span class="o">,</span>
|
||||
<span class="s2">"href"</span><span class="o">:</span> <span class="nx">url</span>
|
||||
<span class="o">},</span> <span class="nx">win</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">_linkNode</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="nx">win</span><span class="o">,</span> <span class="nx">attributes</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">o</span> <span class="o">=</span> <span class="o">{</span>
|
||||
<span class="nx">id</span><span class="o">:</span> <span class="s2">"yui__dyn_"</span> <span class="o">+</span> <span class="o">(</span><span class="nx">nidx</span><span class="o">++),</span>
|
||||
<span class="nx">type</span><span class="o">:</span> <span class="s2">"text/css"</span><span class="o">,</span>
|
||||
<span class="nx">rel</span><span class="o">:</span> <span class="s2">"stylesheet"</span><span class="o">,</span>
|
||||
<span class="nx">href</span><span class="o">:</span> <span class="nx">url</span>
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">attributes</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">lang</span><span class="o">.</span><span class="nx">augmentObject</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span> <span class="nx">attributes</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">_node</span><span class="o">(</span><span class="s2">"link"</span><span class="o">,</span> <span class="nx">o</span><span class="o">,</span> <span class="nx">win</span><span class="o">);</span>
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
|
|
@ -139,14 +154,18 @@
|
|||
<span class="c"> * @return {HTMLElement} the generated node</span>
|
||||
<span class="c"> * @private</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="k">var</span> <span class="nx">_scriptNode</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="nx">win</span><span class="o">,</span> <span class="nx">charset</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">c</span> <span class="o">=</span> <span class="nx">charset</span> <span class="o">||</span> <span class="s2">"utf-8"</span><span class="o">;</span>
|
||||
<span class="k">return</span> <span class="nx">_node</span><span class="o">(</span><span class="s2">"script"</span><span class="o">,</span> <span class="o">{</span>
|
||||
<span class="s2">"id"</span><span class="o">:</span> <span class="s2">"yui__dyn_"</span> <span class="o">+</span> <span class="o">(</span><span class="nx">nidx</span><span class="o">++),</span>
|
||||
<span class="s2">"type"</span><span class="o">:</span> <span class="s2">"text/javascript"</span><span class="o">,</span>
|
||||
<span class="s2">"charset"</span><span class="o">:</span> <span class="nx">c</span><span class="o">,</span>
|
||||
<span class="s2">"src"</span><span class="o">:</span> <span class="nx">url</span>
|
||||
<span class="o">},</span> <span class="nx">win</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">_scriptNode</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="nx">win</span><span class="o">,</span> <span class="nx">attributes</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">o</span> <span class="o">=</span> <span class="o">{</span>
|
||||
<span class="nx">id</span><span class="o">:</span> <span class="s2">"yui__dyn_"</span> <span class="o">+</span> <span class="o">(</span><span class="nx">nidx</span><span class="o">++),</span>
|
||||
<span class="nx">type</span><span class="o">:</span> <span class="s2">"text/javascript"</span><span class="o">,</span>
|
||||
<span class="nx">src</span><span class="o">:</span> <span class="nx">url</span>
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">attributes</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">lang</span><span class="o">.</span><span class="nx">augmentObject</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span> <span class="nx">attributes</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">_node</span><span class="o">(</span><span class="s2">"script"</span><span class="o">,</span> <span class="nx">o</span><span class="o">,</span> <span class="nx">win</span><span class="o">);</span>
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
|
|
@ -229,7 +248,7 @@
|
|||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s2">"Timeout "</span> <span class="o">+</span> <span class="nx">id</span><span class="o">,</span> <span class="s2">"info"</span><span class="o">,</span> <span class="s2">"get"</span><span class="o">);</span>
|
||||
<span class="k">var</span> <span class="nx">q</span> <span class="o">=</span> <span class="nx">queues</span><span class="o">[</span><span class="nx">id</span><span class="o">];</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">q</span><span class="o">.</span><span class="nx">onTimeout</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">sc</span><span class="o">=</span><span class="nx">q</span><span class="o">.</span><span class="nx">context</span> <span class="o">||</span> <span class="nx">q</span><span class="o">;</span>
|
||||
<span class="k">var</span> <span class="nx">sc</span><span class="o">=</span><span class="nx">q</span><span class="o">.</span><span class="nx">scope</span> <span class="o">||</span> <span class="nx">q</span><span class="o">;</span>
|
||||
<span class="nx">q</span><span class="o">.</span><span class="nx">onTimeout</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">sc</span><span class="o">,</span> <span class="nx">_returnData</span><span class="o">(</span><span class="nx">q</span><span class="o">));</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">};</span>
|
||||
|
|
@ -285,7 +304,7 @@
|
|||
<span class="c"></span> <span class="c">// arbitrary timeout. It is possible that the browser does</span>
|
||||
<span class="c"></span> <span class="c">// block subsequent script execution in this case for a limited</span>
|
||||
<span class="c"></span> <span class="c">// time.</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">extra</span> <span class="o">=</span> <span class="nx">_scriptNode</span><span class="o">(</span><span class="kc">null</span><span class="o">,</span> <span class="nx">q</span><span class="o">.</span><span class="nx">win</span><span class="o">,</span> <span class="nx">q</span><span class="o">.</span><span class="nx">charset</span><span class="o">);</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">extra</span> <span class="o">=</span> <span class="nx">_scriptNode</span><span class="o">(</span><span class="kc">null</span><span class="o">,</span> <span class="nx">q</span><span class="o">.</span><span class="nx">win</span><span class="o">,</span> <span class="nx">q</span><span class="o">.</span><span class="nx">attributes</span><span class="o">);</span>
|
||||
<span class="nx">extra</span><span class="o">.</span><span class="nx">innerHTML</span><span class="o">=</span><span class="s1">'YAHOO.util.Get._finalize("'</span> <span class="o">+</span> <span class="nx">id</span> <span class="o">+</span> <span class="s1">'");'</span><span class="o">;</span>
|
||||
<span class="nx">q</span><span class="o">.</span><span class="nx">nodes</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">extra</span><span class="o">);</span> <span class="nx">h</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">extra</span><span class="o">);</span>
|
||||
|
||||
|
|
@ -314,9 +333,9 @@
|
|||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">q</span><span class="o">.</span><span class="nx">type</span> <span class="o">===</span> <span class="s2">"script"</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">n</span> <span class="o">=</span> <span class="nx">_scriptNode</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="nx">w</span><span class="o">,</span> <span class="nx">q</span><span class="o">.</span><span class="nx">charset</span><span class="o">);</span>
|
||||
<span class="nx">n</span> <span class="o">=</span> <span class="nx">_scriptNode</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="nx">w</span><span class="o">,</span> <span class="nx">q</span><span class="o">.</span><span class="nx">attributes</span><span class="o">);</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">n</span> <span class="o">=</span> <span class="nx">_linkNode</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="nx">w</span><span class="o">,</span> <span class="nx">q</span><span class="o">.</span><span class="nx">charset</span><span class="o">);</span>
|
||||
<span class="nx">n</span> <span class="o">=</span> <span class="nx">_linkNode</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="nx">w</span><span class="o">,</span> <span class="nx">q</span><span class="o">.</span><span class="nx">attributes</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// track this node's load progress</span>
|
||||
|
|
@ -375,20 +394,33 @@
|
|||
<span class="c"> * @private</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="k">var</span> <span class="nx">_purge</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">tId</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">q</span><span class="o">=</span><span class="nx">queues</span><span class="o">[</span><span class="nx">tId</span><span class="o">];</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">q</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">n</span><span class="o">=</span><span class="nx">q</span><span class="o">.</span><span class="nx">nodes</span><span class="o">,</span> <span class="nx">l</span><span class="o">=</span><span class="nx">n</span><span class="o">.</span><span class="nx">length</span><span class="o">,</span> <span class="nx">d</span><span class="o">=</span><span class="nx">q</span><span class="o">.</span><span class="nx">win</span><span class="o">.</span><span class="nb">document</span><span class="o">,</span>
|
||||
<span class="nx">h</span><span class="o">=</span><span class="nx">d</span><span class="o">.</span><span class="nx">getElementsByTagName</span><span class="o">(</span><span class="s2">"head"</span><span class="o">)[</span><span class="m">0</span><span class="o">];</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">queues</span><span class="o">[</span><span class="nx">tId</span><span class="o">])</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">q</span> <span class="o">=</span> <span class="nx">queues</span><span class="o">[</span><span class="nx">tId</span><span class="o">],</span>
|
||||
<span class="nx">nodes</span> <span class="o">=</span> <span class="nx">q</span><span class="o">.</span><span class="nx">nodes</span><span class="o">,</span>
|
||||
<span class="nx">l</span> <span class="o">=</span> <span class="nx">nodes</span><span class="o">.</span><span class="nx">length</span><span class="o">,</span>
|
||||
<span class="nx">d</span> <span class="o">=</span> <span class="nx">q</span><span class="o">.</span><span class="nx">win</span><span class="o">.</span><span class="nb">document</span><span class="o">,</span>
|
||||
<span class="nx">h</span> <span class="o">=</span> <span class="nx">d</span><span class="o">.</span><span class="nx">getElementsByTagName</span><span class="o">(</span><span class="s2">"head"</span><span class="o">)[</span><span class="m">0</span><span class="o">],</span>
|
||||
<span class="nx">sib</span><span class="o">,</span> <span class="nx">i</span><span class="o">,</span> <span class="nx">node</span><span class="o">,</span> <span class="nx">attr</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">q</span><span class="o">.</span><span class="nx">insertBefore</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">s</span> <span class="o">=</span> <span class="nx">_get</span><span class="o">(</span><span class="nx">q</span><span class="o">.</span><span class="nx">insertBefore</span><span class="o">,</span> <span class="nx">tId</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">h</span> <span class="o">=</span> <span class="nx">s</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
||||
<span class="nx">sib</span> <span class="o">=</span> <span class="nx">_get</span><span class="o">(</span><span class="nx">q</span><span class="o">.</span><span class="nx">insertBefore</span><span class="o">,</span> <span class="nx">tId</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">sib</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">h</span> <span class="o">=</span> <span class="nx">sib</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">l</span><span class="o">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">h</span><span class="o">.</span><span class="nx">removeChild</span><span class="o">(</span><span class="nx">n</span><span class="o">[</span><span class="nx">i</span><span class="o">]);</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">l</span><span class="o">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">node</span> <span class="o">=</span> <span class="nx">nodes</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">node</span><span class="o">.</span><span class="nx">clearAttributes</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">node</span><span class="o">.</span><span class="nx">clearAttributes</span><span class="o">();</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">attr</span> <span class="k">in</span> <span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">delete</span> <span class="nx">node</span><span class="o">[</span><span class="nx">attr</span><span class="o">];</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">h</span><span class="o">.</span><span class="nx">removeChild</span><span class="o">(</span><span class="nx">node</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">q</span><span class="o">.</span><span class="nx">nodes</span> <span class="o">=</span> <span class="o">[];</span>
|
||||
|
|
@ -428,6 +460,11 @@
|
|||
<span class="nx">q</span><span class="o">.</span><span class="nx">autopurge</span> <span class="o">=</span> <span class="o">(</span><span class="s2">"autopurge"</span> <span class="k">in</span> <span class="nx">q</span><span class="o">)</span> <span class="o">?</span> <span class="nx">q</span><span class="o">.</span><span class="nx">autopurge</span> <span class="o">:</span>
|
||||
<span class="o">(</span><span class="nx">type</span> <span class="o">===</span> <span class="s2">"script"</span><span class="o">)</span> <span class="o">?</span> <span class="kc">true</span> <span class="o">:</span> <span class="kc">false</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">opts</span><span class="o">.</span><span class="nx">charset</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">q</span><span class="o">.</span><span class="nx">attributes</span> <span class="o">=</span> <span class="nx">q</span><span class="o">.</span><span class="nx">attributes</span> <span class="o">||</span> <span class="o">{};</span>
|
||||
<span class="nx">q</span><span class="o">.</span><span class="nx">attributes</span><span class="o">.</span><span class="nx">charset</span> <span class="o">=</span> <span class="nx">opts</span><span class="o">.</span><span class="nx">charset</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">lang</span><span class="o">.</span><span class="nx">later</span><span class="o">(</span><span class="m">0</span><span class="o">,</span> <span class="nx">q</span><span class="o">,</span> <span class="nx">_next</span><span class="o">,</span> <span class="nx">id</span><span class="o">);</span>
|
||||
|
||||
<span class="k">return</span> <span class="o">{</span>
|
||||
|
|
@ -687,14 +724,16 @@
|
|||
<span class="c"> * <dd>node or node id that will become the new node's nextSibling</dd></span>
|
||||
<span class="c"> * </dl></span>
|
||||
<span class="c"> * <dt>charset</dt></span>
|
||||
<span class="c"> * <dd>Node charset, default utf-8</dd></span>
|
||||
<span class="c"> * <dd>Node charset, deprecated, use 'attributes'</dd></span>
|
||||
<span class="c"> * <dt>attributes</dt></span>
|
||||
<span class="c"> * <dd>A hash of attributes to apply to dynamic nodes.</dd></span>
|
||||
<span class="c"> * <dt>timeout</dt></span>
|
||||
<span class="c"> * <dd>Number of milliseconds to wait before aborting and firing the timeout event</dd></span>
|
||||
<span class="c"> * <pre></span>
|
||||
<span class="c"> * // assumes yahoo, dom, and event are already on the page</span>
|
||||
<span class="c"> * &nbsp;&nbsp;YAHOO.util.Get.script(</span>
|
||||
<span class="c"> * &nbsp;&nbsp;["http://yui.yahooapis.com/2.3.1/build/dragdrop/dragdrop-min.js",</span>
|
||||
<span class="c"> * &nbsp;&nbsp;&nbsp;"http://yui.yahooapis.com/2.3.1/build/animation/animation-min.js"], &#123;</span>
|
||||
<span class="c"> * &nbsp;&nbsp;["http://yui.yahooapis.com/2.7.0/build/dragdrop/dragdrop-min.js",</span>
|
||||
<span class="c"> * &nbsp;&nbsp;&nbsp;"http://yui.yahooapis.com/2.7.0/build/animation/animation-min.js"], &#123;</span>
|
||||
<span class="c"> * &nbsp;&nbsp;&nbsp;&nbsp;onSuccess: function(o) &#123;</span>
|
||||
<span class="c"> * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;YAHOO.log(o.data); // foo</span>
|
||||
<span class="c"> * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;new YAHOO.util.DDProxy("dd1"); // also new o.reference("dd1"); would work</span>
|
||||
|
|
@ -755,14 +794,16 @@
|
|||
<span class="c"> * <dt>insertBefore</dt></span>
|
||||
<span class="c"> * <dd>node or node id that will become the new node's nextSibling</dd></span>
|
||||
<span class="c"> * <dt>charset</dt></span>
|
||||
<span class="c"> * <dd>Node charset, default utf-8</dd></span>
|
||||
<span class="c"> * <dd>Node charset, deprecated, use 'attributes'</dd></span>
|
||||
<span class="c"> * <dt>attributes</dt></span>
|
||||
<span class="c"> * <dd>A hash of attributes to apply to dynamic nodes.</dd></span>
|
||||
<span class="c"> * </dl></span>
|
||||
<span class="c"> * <pre></span>
|
||||
<span class="c"> * YAHOO.util.Get.css("http://yui.yahooapis.com/2.3.1/build/menu/assets/skins/sam/menu.css");</span>
|
||||
<span class="c"> * YAHOO.util.Get.css("http://yui.yahooapis.com/2.7.0/build/menu/assets/skins/sam/menu.css");</span>
|
||||
<span class="c"> * </pre></span>
|
||||
<span class="c"> * <pre></span>
|
||||
<span class="c"> * YAHOO.util.Get.css(["http://yui.yahooapis.com/2.3.1/build/menu/assets/skins/sam/menu.css",</span>
|
||||
<span class="c"> * "http://yui.yahooapis.com/2.3.1/build/logger/assets/skins/sam/logger.css"]);</span>
|
||||
<span class="c"> * YAHOO.util.Get.css(["http://yui.yahooapis.com/2.7.0/build/menu/assets/skins/sam/menu.css",</span>
|
||||
<span class="c"> * "http://yui.yahooapis.com/2.7.0/build/logger/assets/skins/sam/logger.css"]);</span>
|
||||
<span class="c"> * </pre></span>
|
||||
<span class="c"> * @return {tId: string} an object containing info about the transaction</span>
|
||||
<span class="c"> */</span>
|
||||
|
|
@ -772,103 +813,78 @@
|
|||
<span class="o">};</span>
|
||||
<span class="o">}();</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div class="module">
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
|
||||
<li class=""><a href="module_animation.html">animation</a></li>
|
||||
|
||||
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
||||
|
||||
<li class=""><a href="module_button.html">button</a></li>
|
||||
|
||||
<li class=""><a href="module_calendar.html">calendar</a></li>
|
||||
|
||||
<li class=""><a href="module_carousel.html">carousel</a></li>
|
||||
|
||||
<li class=""><a href="module_charts.html">charts</a></li>
|
||||
|
||||
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
||||
|
||||
<li class=""><a href="module_connection.html">connection</a></li>
|
||||
|
||||
<li class=""><a href="module_container.html">container</a></li>
|
||||
|
||||
<li class=""><a href="module_cookie.html">cookie</a></li>
|
||||
|
||||
<li class=""><a href="module_datasource.html">datasource</a></li>
|
||||
|
||||
<li class=""><a href="module_datatable.html">datatable</a></li>
|
||||
|
||||
<li class=""><a href="module_dom.html">dom</a></li>
|
||||
|
||||
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
||||
|
||||
<li class=""><a href="module_editor.html">editor</a></li>
|
||||
|
||||
<li class=""><a href="module_element.html">element</a></li>
|
||||
|
||||
<li class=""><a href="module_event.html">event</a></li>
|
||||
|
||||
<li class="selected"><a href="module_get.html">get</a></li>
|
||||
|
||||
<li class=""><a href="module_history.html">history</a></li>
|
||||
|
||||
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
||||
|
||||
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
||||
|
||||
<li class=""><a href="module_json.html">json</a></li>
|
||||
|
||||
<li class=""><a href="module_layout.html">layout</a></li>
|
||||
|
||||
<li class=""><a href="module_logger.html">logger</a></li>
|
||||
|
||||
<li class=""><a href="module_menu.html">menu</a></li>
|
||||
|
||||
<li class=""><a href="module_paginator.html">paginator</a></li>
|
||||
|
||||
<li class=""><a href="module_profiler.html">profiler</a></li>
|
||||
|
||||
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
||||
|
||||
<li class=""><a href="module_resize.html">resize</a></li>
|
||||
|
||||
<li class=""><a href="module_selector.html">selector</a></li>
|
||||
|
||||
<li class=""><a href="module_slider.html">slider</a></li>
|
||||
|
||||
<li class=""><a href="module_tabview.html">tabview</a></li>
|
||||
|
||||
<li class=""><a href="module_treeview.html">treeview</a></li>
|
||||
|
||||
<li class=""><a href="module_uploader.html">uploader</a></li>
|
||||
|
||||
<li class=""><a href="module_yahoo.html">yahoo</a></li>
|
||||
|
||||
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
||||
|
||||
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class="selected"><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="classList" class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="YAHOO.util.Get.html">YAHOO.util.Get</a></li>
|
||||
<li class=""><a href="YAHOO.util.Get.html" title="YAHOO.util.Get">YAHOO.util.Get</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class="selected"><a href="Get.js.html">Get.js</a></li>
|
||||
<li class="selected"><a href="Get.js.html" title="Get.js">Get.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -881,8 +897,11 @@
|
|||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2008 Yahoo! Inc. All rights reserved.
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [{"access": "", "host": "YAHOO.util.Get", "name": "abort", "url": "YAHOO.util.Get.html#method_abort", "type": "method"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_autoPurge", "url": "YAHOO.util.Get.html#method__autoPurge", "type": "method"}, {"access": "", "host": "YAHOO.util.Get", "name": "css", "url": "YAHOO.util.Get.html#method_css", "type": "method"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_finalize", "url": "YAHOO.util.Get.html#method__finalize", "type": "method"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_finish", "url": "YAHOO.util.Get.html#method__finish", "type": "method"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_linkNode", "url": "YAHOO.util.Get.html#method__linkNode", "type": "method"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_next", "url": "YAHOO.util.Get.html#method__next", "type": "method"}, {"access": "private", "host": "YAHOO.util.Get", "name": "nidx", "url": "YAHOO.util.Get.html#property_nidx", "type": "property"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_node", "url": "YAHOO.util.Get.html#method__node", "type": "method"}, {"access": "", "host": "YAHOO.util.Get", "name": "POLL_FREQ", "url": "YAHOO.util.Get.html#property_POLL_FREQ", "type": "property"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_purge", "url": "YAHOO.util.Get.html#method__purge", "type": "method"}, {"access": "", "host": "YAHOO.util.Get", "name": "PURGE_THRESH", "url": "YAHOO.util.Get.html#property_PURGE_THRESH", "type": "property"}, {"access": "private", "host": "YAHOO.util.Get", "name": "purging", "url": "YAHOO.util.Get.html#property_purging", "type": "property"}, {"access": "private", "host": "YAHOO.util.Get", "name": "qidx", "url": "YAHOO.util.Get.html#property_qidx", "type": "property"}, {"access": "private", "host": "YAHOO.util.Get", "name": "queue", "url": "YAHOO.util.Get.html#method_queue", "type": "method"}, {"access": "private", "host": "YAHOO.util.Get", "name": "queues", "url": "YAHOO.util.Get.html#property_queues", "type": "property"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_returnData", "url": "YAHOO.util.Get.html#method__returnData", "type": "method"}, {"access": "", "host": "YAHOO.util.Get", "name": "script", "url": "YAHOO.util.Get.html#method_script", "type": "method"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_scriptNode", "url": "YAHOO.util.Get.html#method__scriptNode", "type": "method"}, {"access": "", "host": "YAHOO.util.Get", "name": "TIMEOUT", "url": "YAHOO.util.Get.html#property_TIMEOUT", "type": "property"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_timeout", "url": "YAHOO.util.Get.html#method__timeout", "type": "method"}, {"access": "private", "host": "YAHOO.util.Get", "name": "_track", "url": "YAHOO.util.Get.html#method__track", "type": "method"}];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
378
www/extras/yui/docs/IEStyle.js.html
Normal file
378
www/extras/yui/docs/IEStyle.js.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,994 +0,0 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<title>API: json JSON (YUI Library)</title>
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
||||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
|
||||
<div id="hd">
|
||||
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
||||
<h3>json <span class="subtitle">2.6.0</span></h3>
|
||||
<p>
|
||||
<a href="./index.html">Yahoo! UI Library</a>
|
||||
> <a href="./module_json.html">json</a>
|
||||
> JSON
|
||||
|
||||
</p>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form name="yui-classopts-form">
|
||||
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> <label for="showprivate">Show Private</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
|
||||
</form>
|
||||
|
||||
<h2>
|
||||
|
||||
|
||||
<code>static</code>
|
||||
|
||||
Class <b>JSON</b>
|
||||
<span class="extends">
|
||||
</span>
|
||||
|
||||
<span class="extends">
|
||||
</span>
|
||||
|
||||
</code>
|
||||
</h2>
|
||||
<!-- class tree goes here -->
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="summary description">
|
||||
Provides methods to parse JSON strings and convert objects to JSON strings.
|
||||
</div>
|
||||
|
||||
|
||||
<div class="section field details">
|
||||
<h3 id="properties">Properties</h3>
|
||||
<div class="content">
|
||||
<div class="private">
|
||||
<h4><a name="property__BRACKETS">_BRACKETS</a>
|
||||
<code>- private static {RegExp}</code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
Third step in the validation. Regex used to remove all open square
|
||||
brackets following a colon, comma, or at the beginning of the string.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4><a name="property__CHARS">_CHARS</a>
|
||||
<code>- private static {Object}</code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
Character substitution map for common escapes and special characters.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4><a name="property__ESCAPES">_ESCAPES</a>
|
||||
<code>- private static {RegExp}</code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
First step in the validation. Regex used to replace all escape
|
||||
sequences (i.e. "\\", etc) with '@' characters (a non-JSON character).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4><a name="property__INVALID">_INVALID</a>
|
||||
<code>- private static {RegExp}</code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
Final step in the validation. Regex used to test the string left after
|
||||
all previous replacements for invalid characters.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4><a name="property__SPECIAL_CHARS">_SPECIAL_CHARS</a>
|
||||
<code>- private static {RegExp}</code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
Regex used to replace special characters in strings for JSON
|
||||
stringification.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4><a name="property__UNICODE_EXCEPTIONS">_UNICODE_EXCEPTIONS</a>
|
||||
<code>- private {RegExp}</code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
Replace certain Unicode characters that JavaScript may handle incorrectly
|
||||
during eval--either by deleting them or treating them as line
|
||||
endings--with escape sequences.
|
||||
IMPORTANT NOTE: This regex will be used to modify the input if a match is
|
||||
found.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4><a name="property__VALUES">_VALUES</a>
|
||||
<code>- private static {RegExp}</code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
Second step in the validation. Regex used to replace all simple
|
||||
values with ']' characters.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="section method details">
|
||||
<h3 id="methods">Methods</h3>
|
||||
<div class="content">
|
||||
<div class="">
|
||||
<h4>
|
||||
<a name="method__char">_char</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
String
|
||||
<strong>_char</strong>
|
||||
(
|
||||
|
||||
|
||||
c
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Escapes a special character to a safe Unicode representation
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>c <String></code>
|
||||
single character to escape
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
String
|
||||
</code></dt>
|
||||
<dd>safe Unicode escape</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<h4>
|
||||
<a name="method__isValid">_isValid</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
|
||||
static
|
||||
|
||||
boolean
|
||||
<strong>_isValid</strong>
|
||||
(
|
||||
|
||||
|
||||
str
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Four step determination whether a string is valid JSON. In three steps,
|
||||
escape sequences, safe values, and properly placed open square brackets
|
||||
are replaced with placeholders or removed. Then in the final step, the
|
||||
result of all these replacements is checked for invalid characters.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>str <String></code>
|
||||
JSON string to be tested
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
boolean
|
||||
</code></dt>
|
||||
<dd>is the string safe for eval?</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4>
|
||||
<a name="method__prepare">_prepare</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
private
|
||||
|
||||
|
||||
String
|
||||
<strong>_prepare</strong>
|
||||
(
|
||||
|
||||
|
||||
s
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Replace certain Unicode characters that may be handled incorrectly by
|
||||
some browser implementations.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>s <String></code>
|
||||
parse input
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
String
|
||||
</code></dt>
|
||||
<dd>sanitized JSON string ready to be validated/parsed</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4>
|
||||
<a name="method__revive">_revive</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
private
|
||||
|
||||
|
||||
MIXED
|
||||
<strong>_revive</strong>
|
||||
(
|
||||
|
||||
|
||||
data
|
||||
|
||||
|
||||
,
|
||||
reviver
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Traverses nested objects, applying a filter or reviver function to
|
||||
each value. The value returned from the function will replace the
|
||||
original value in the key:value pair. If the value returned is
|
||||
undefined, the key will be omitted from the returned object.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>data <MIXED></code>
|
||||
Any JavaScript data
|
||||
</dd>
|
||||
<dd>
|
||||
<code>reviver <Function></code>
|
||||
filter or mutation function
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
MIXED
|
||||
</code></dt>
|
||||
<dd>The results of the filtered/mutated data structure</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="private">
|
||||
<h4>
|
||||
<a name="method__string">_string</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
private
|
||||
|
||||
|
||||
String
|
||||
<strong>_string</strong>
|
||||
(
|
||||
|
||||
|
||||
s
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Enclose escaped strings in quotes
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>s <String></code>
|
||||
string to wrap
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
String
|
||||
</code></dt>
|
||||
<dd>'"'+s+'"' after s has had special characters escaped</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<h4>
|
||||
<a name="method__stringify">_stringify</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
String
|
||||
<strong>_stringify</strong>
|
||||
(
|
||||
|
||||
|
||||
h
|
||||
|
||||
|
||||
,
|
||||
key
|
||||
|
||||
|
||||
,
|
||||
depth
|
||||
|
||||
|
||||
,
|
||||
w
|
||||
|
||||
|
||||
,
|
||||
pstack
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Worker function used by public stringify.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>h <Object></code>
|
||||
object holding the key
|
||||
</dd>
|
||||
<dd>
|
||||
<code>key <String></code>
|
||||
String key in object h to serialize
|
||||
</dd>
|
||||
<dd>
|
||||
<code>depth <Number></code>
|
||||
depth to serialize
|
||||
</dd>
|
||||
<dd>
|
||||
<code>w <Array|Function></code>
|
||||
array of whitelisted keys OR replacer function
|
||||
</dd>
|
||||
<dd>
|
||||
<code>pstack <Array></code>
|
||||
used to protect against recursion
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
String
|
||||
</code></dt>
|
||||
<dd>serialized version of o</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<h4>
|
||||
<a name="method_dateToString">dateToString</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
|
||||
static
|
||||
|
||||
String
|
||||
<strong>dateToString</strong>
|
||||
(
|
||||
|
||||
|
||||
d
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Serializes a Date instance as a UTC date string. Used internally by
|
||||
stringify. Override this method if you need Dates serialized in a
|
||||
different format.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>d <Date></code>
|
||||
The Date to serialize
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
String
|
||||
</code></dt>
|
||||
<dd>stringified Date in UTC format YYYY-MM-DDTHH:mm:SSZ</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<h4>
|
||||
<a name="method_isValid">isValid</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
|
||||
static
|
||||
|
||||
boolean
|
||||
<strong>isValid</strong>
|
||||
(
|
||||
|
||||
|
||||
str
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Four step determination whether a string is valid JSON. In three steps,
|
||||
escape sequences, safe values, and properly placed open square brackets
|
||||
are replaced with placeholders or removed. Then in the final step, the
|
||||
result of all these replacements is checked for invalid characters.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>str <String></code>
|
||||
JSON string to be tested
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
boolean
|
||||
</code></dt>
|
||||
<dd>is the string safe for eval?</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<h4>
|
||||
<a name="method_parse">parse</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
|
||||
static
|
||||
|
||||
MIXED
|
||||
<strong>parse</strong>
|
||||
(
|
||||
|
||||
|
||||
s
|
||||
|
||||
|
||||
,
|
||||
reviver
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Parse a JSON string, returning the native JavaScript representation.
|
||||
Only minor modifications from http://www.json.org/json2.js.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>s <string></code>
|
||||
JSON string data
|
||||
</dd>
|
||||
<dd>
|
||||
<code>reviver <function></code>
|
||||
(optional) function(k,v) passed each key:value
|
||||
pair of object literals, allowing pruning or altering values
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
MIXED
|
||||
</code></dt>
|
||||
<dd>the native JavaScript representation of the JSON string</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<h4>
|
||||
<a name="method_stringify">stringify</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
|
||||
static
|
||||
|
||||
string
|
||||
<strong>stringify</strong>
|
||||
(
|
||||
|
||||
|
||||
o
|
||||
|
||||
|
||||
,
|
||||
w
|
||||
|
||||
|
||||
,
|
||||
d
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Converts an arbitrary value to a JSON string representation.
|
||||
Cyclical object or array references are replaced with null.
|
||||
If a whitelist is provided, only matching object keys will be included.
|
||||
If a depth limit is provided, objects and arrays at that depth will
|
||||
be stringified as empty.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>o <MIXED></code>
|
||||
any arbitrary object to convert to JSON string
|
||||
</dd>
|
||||
<dd>
|
||||
<code>w <Array|Function></code>
|
||||
(optional) whitelist of acceptable object keys to include OR a function(value,key) to alter values before serialization
|
||||
</dd>
|
||||
<dd>
|
||||
<code>d <number></code>
|
||||
(optional) depth limit to recurse objects/arrays (practical minimum 1)
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
string
|
||||
</code></dt>
|
||||
<dd>JSON string representation of the input</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<h4>
|
||||
<a name="method_stringToDate">stringToDate</a></h4>
|
||||
<div class="detail">
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
Date
|
||||
<strong>stringToDate</strong>
|
||||
(
|
||||
|
||||
|
||||
str
|
||||
|
||||
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
Reconstitute Date instances from the default JSON UTC serialization.
|
||||
Reference this from a reviver function to rebuild Dates during the
|
||||
parse operation.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>str <String></code>
|
||||
String serialization of a Date
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
Date
|
||||
</code></dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
|
||||
<li class=""><a href="module_animation.html">animation</a></li>
|
||||
|
||||
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
||||
|
||||
<li class=""><a href="module_button.html">button</a></li>
|
||||
|
||||
<li class=""><a href="module_calendar.html">calendar</a></li>
|
||||
|
||||
<li class=""><a href="module_carousel.html">carousel</a></li>
|
||||
|
||||
<li class=""><a href="module_charts.html">charts</a></li>
|
||||
|
||||
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
||||
|
||||
<li class=""><a href="module_connection.html">connection</a></li>
|
||||
|
||||
<li class=""><a href="module_container.html">container</a></li>
|
||||
|
||||
<li class=""><a href="module_cookie.html">cookie</a></li>
|
||||
|
||||
<li class=""><a href="module_datasource.html">datasource</a></li>
|
||||
|
||||
<li class=""><a href="module_datatable.html">datatable</a></li>
|
||||
|
||||
<li class=""><a href="module_dom.html">dom</a></li>
|
||||
|
||||
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
||||
|
||||
<li class=""><a href="module_editor.html">editor</a></li>
|
||||
|
||||
<li class=""><a href="module_element.html">element</a></li>
|
||||
|
||||
<li class=""><a href="module_event.html">event</a></li>
|
||||
|
||||
<li class=""><a href="module_get.html">get</a></li>
|
||||
|
||||
<li class=""><a href="module_history.html">history</a></li>
|
||||
|
||||
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
||||
|
||||
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
||||
|
||||
<li class="selected"><a href="module_json.html">json</a></li>
|
||||
|
||||
<li class=""><a href="module_layout.html">layout</a></li>
|
||||
|
||||
<li class=""><a href="module_logger.html">logger</a></li>
|
||||
|
||||
<li class=""><a href="module_menu.html">menu</a></li>
|
||||
|
||||
<li class=""><a href="module_paginator.html">paginator</a></li>
|
||||
|
||||
<li class=""><a href="module_profiler.html">profiler</a></li>
|
||||
|
||||
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
||||
|
||||
<li class=""><a href="module_resize.html">resize</a></li>
|
||||
|
||||
<li class=""><a href="module_selector.html">selector</a></li>
|
||||
|
||||
<li class=""><a href="module_slider.html">slider</a></li>
|
||||
|
||||
<li class=""><a href="module_tabview.html">tabview</a></li>
|
||||
|
||||
<li class=""><a href="module_treeview.html">treeview</a></li>
|
||||
|
||||
<li class=""><a href="module_uploader.html">uploader</a></li>
|
||||
|
||||
<li class=""><a href="module_yahoo.html">yahoo</a></li>
|
||||
|
||||
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
||||
|
||||
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class="selected"><a href="JSON.html">JSON</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="JSON.js.html">JSON.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<h4>Properties</h4>
|
||||
<ul class="content">
|
||||
<li class="private"><a href="#property__BRACKETS">_BRACKETS</a>
|
||||
<!--<code><{RegExp}></code>-->
|
||||
</li>
|
||||
<li class="private"><a href="#property__CHARS">_CHARS</a>
|
||||
<!--<code><{RegExp}></code>-->
|
||||
</li>
|
||||
<li class="private"><a href="#property__ESCAPES">_ESCAPES</a>
|
||||
<!--<code><{RegExp}></code>-->
|
||||
</li>
|
||||
<li class="private"><a href="#property__INVALID">_INVALID</a>
|
||||
<!--<code><{RegExp}></code>-->
|
||||
</li>
|
||||
<li class="private"><a href="#property__SPECIAL_CHARS">_SPECIAL_CHARS</a>
|
||||
<!--<code><{RegExp}></code>-->
|
||||
</li>
|
||||
<li class="private"><a href="#property__UNICODE_EXCEPTIONS">_UNICODE_EXCEPTIONS</a>
|
||||
<!--<code><{RegExp}></code>-->
|
||||
</li>
|
||||
<li class="private"><a href="#property__VALUES">_VALUES</a>
|
||||
<!--<code><{RegExp}></code>-->
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<h4>Methods</h4>
|
||||
<ul class="content">
|
||||
<li class=""><!--<code>String</code>-->
|
||||
<a href="#method__char">_char</a>
|
||||
</li>
|
||||
<li class=""><!--<code>boolean</code>-->
|
||||
<a href="#method__isValid">_isValid</a>
|
||||
</li>
|
||||
<li class="private"><!--<code>String</code>-->
|
||||
<a href="#method__prepare">_prepare</a>
|
||||
</li>
|
||||
<li class="private"><!--<code>MIXED</code>-->
|
||||
<a href="#method__revive">_revive</a>
|
||||
</li>
|
||||
<li class="private"><!--<code>String</code>-->
|
||||
<a href="#method__string">_string</a>
|
||||
</li>
|
||||
<li class=""><!--<code>String</code>-->
|
||||
<a href="#method__stringify">_stringify</a>
|
||||
</li>
|
||||
<li class=""><!--<code>String</code>-->
|
||||
<a href="#method_dateToString">dateToString</a>
|
||||
</li>
|
||||
<li class=""><!--<code>boolean</code>-->
|
||||
<a href="#method_isValid">isValid</a>
|
||||
</li>
|
||||
<li class=""><!--<code>MIXED</code>-->
|
||||
<a href="#method_parse">parse</a>
|
||||
</li>
|
||||
<li class=""><!--<code>string</code>-->
|
||||
<a href="#method_stringify">stringify</a>
|
||||
</li>
|
||||
<li class=""><!--<code>Date</code>-->
|
||||
<a href="#method_stringToDate">stringToDate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2008 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,8 +1,12 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: json JSON.js (YUI Library)</title>
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
|
@ -10,42 +14,59 @@
|
|||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
|
||||
<div id="hd">
|
||||
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
||||
<h3>json <span class="subtitle">2.6.0</span></h3>
|
||||
<p>
|
||||
<a href="./index.html">Yahoo! UI Library</a>
|
||||
> <a href="./module_json.html">json</a>
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>json <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_json.html" title="json">json</a>
|
||||
|
||||
> JSON.js (source view)
|
||||
</p>
|
||||
|
||||
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form name="yui-classopts-form">
|
||||
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> <label for="showprivate">Show Private</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div id="srcout">
|
||||
<style>
|
||||
#doc3 #classopts { display:none; }
|
||||
#doc3 .classopts { display:none; }
|
||||
</style>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<span class="c"> * Provides methods to parse JSON strings and convert objects to JSON strings.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @module json</span>
|
||||
<span class="c"> * @class JSON</span>
|
||||
<span class="c"> * @namespace YAHOO.lang</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">JSON</span> <span class="o">=</span> <span class="o">(</span><span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
||||
<span class="o">(</span><span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">l</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">,</span>
|
||||
<span class="nx">isFunction</span> <span class="o">=</span> <span class="nx">l</span><span class="o">.</span><span class="nx">isFunction</span><span class="o">,</span>
|
||||
<span class="nx">isObject</span> <span class="o">=</span> <span class="nx">l</span><span class="o">.</span><span class="nx">isObject</span><span class="o">,</span>
|
||||
<span class="nx">isArray</span> <span class="o">=</span> <span class="nx">l</span><span class="o">.</span><span class="nx">isArray</span><span class="o">,</span>
|
||||
<span class="nx">_toStr</span> <span class="o">=</span> <span class="nb">Object</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">toString</span><span class="o">,</span>
|
||||
<span class="c">// 'this' is the global object. window in browser env. Keep</span>
|
||||
<span class="c"></span> <span class="c">// the code env agnostic. Caja requies window, unfortunately.</span>
|
||||
<span class="c"></span> <span class="nx">Native</span> <span class="o">=</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">caja</span> <span class="o">?</span> <span class="nb">window</span> <span class="o">:</span> <span class="k">this</span><span class="o">).</span><span class="nx">JSON</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/* Variables used by parse */</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Replace certain Unicode characters that JavaScript may handle incorrectly</span>
|
||||
|
|
@ -53,6 +74,7 @@
|
|||
<span class="c"> * endings--with escape sequences.</span>
|
||||
<span class="c"> * IMPORTANT NOTE: This regex will be used to modify the input if a match is</span>
|
||||
<span class="c"> * found.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @property _UNICODE_EXCEPTIONS</span>
|
||||
<span class="c"> * @type {RegExp}</span>
|
||||
<span class="c"> * @private</span>
|
||||
|
|
@ -60,8 +82,9 @@
|
|||
<span class="nx">_UNICODE_EXCEPTIONS</span> <span class="o">=</span> <span class="sr">/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * First step in the validation. Regex used to replace all escape</span>
|
||||
<span class="c"> * First step in the safety evaluation. Regex used to replace all escape</span>
|
||||
<span class="c"> * sequences (i.e. "\\", etc) with '@' characters (a non-JSON character).</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @property _ESCAPES</span>
|
||||
<span class="c"> * @type {RegExp}</span>
|
||||
<span class="c"> * @static</span>
|
||||
|
|
@ -70,8 +93,9 @@
|
|||
<span class="nx">_ESCAPES</span> <span class="o">=</span> <span class="sr">/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Second step in the validation. Regex used to replace all simple</span>
|
||||
<span class="c"> * Second step in the safety evaluation. Regex used to replace all simple</span>
|
||||
<span class="c"> * values with ']' characters.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @property _VALUES</span>
|
||||
<span class="c"> * @type {RegExp}</span>
|
||||
<span class="c"> * @static</span>
|
||||
|
|
@ -80,8 +104,10 @@
|
|||
<span class="nx">_VALUES</span> <span class="o">=</span> <span class="sr">/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Third step in the validation. Regex used to remove all open square</span>
|
||||
<span class="c"> * brackets following a colon, comma, or at the beginning of the string.</span>
|
||||
<span class="c"> * Third step in the safety evaluation. Regex used to remove all open</span>
|
||||
<span class="c"> * square brackets following a colon, comma, or at the beginning of the</span>
|
||||
<span class="c"> * string.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @property _BRACKETS</span>
|
||||
<span class="c"> * @type {RegExp}</span>
|
||||
<span class="c"> * @static</span>
|
||||
|
|
@ -90,18 +116,23 @@
|
|||
<span class="nx">_BRACKETS</span> <span class="o">=</span> <span class="sr">/(?:^|:|,)(?:\s*\[)+/g</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Final step in the validation. Regex used to test the string left after</span>
|
||||
<span class="c"> * all previous replacements for invalid characters.</span>
|
||||
<span class="c"> * @property _INVALID</span>
|
||||
<span class="c"> * Final step in the safety evaluation. Regex used to test the string left</span>
|
||||
<span class="c"> * after all previous replacements for invalid characters.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @property _UNSAFE</span>
|
||||
<span class="c"> * @type {RegExp}</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @private</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">_INVALID</span> <span class="o">=</span> <span class="sr">/^[\],:{}\s]*$/</span><span class="o">,</span>
|
||||
<span class="nx">_UNSAFE</span> <span class="o">=</span> <span class="sr">/^[\],:{}\s]*$/</span><span class="o">,</span>
|
||||
|
||||
|
||||
<span class="c">/* Variables used by stringify */</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Regex used to replace special characters in strings for JSON</span>
|
||||
<span class="c"> * stringification.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @property _SPECIAL_CHARS</span>
|
||||
<span class="c"> * @type {RegExp}</span>
|
||||
<span class="c"> * @static</span>
|
||||
|
|
@ -111,6 +142,7 @@
|
|||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Character substitution map for common escapes and special characters.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @property _CHARS</span>
|
||||
<span class="c"> * @type {Object}</span>
|
||||
<span class="c"> * @static</span>
|
||||
|
|
@ -124,13 +156,58 @@
|
|||
<span class="s1">'\r'</span><span class="o">:</span> <span class="s1">'\\r'</span><span class="o">,</span>
|
||||
<span class="s1">'"'</span> <span class="o">:</span> <span class="s1">'\\"'</span><span class="o">,</span>
|
||||
<span class="s1">'\\'</span><span class="o">:</span> <span class="s1">'\\\\'</span>
|
||||
<span class="o">};</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="nx">UNDEFINED</span> <span class="o">=</span> <span class="s1">'undefined'</span><span class="o">,</span>
|
||||
<span class="nx">OBJECT</span> <span class="o">=</span> <span class="s1">'object'</span><span class="o">,</span>
|
||||
<span class="nx">NULL</span> <span class="o">=</span> <span class="s1">'null'</span><span class="o">,</span>
|
||||
<span class="nx">STRING</span> <span class="o">=</span> <span class="s1">'string'</span><span class="o">,</span>
|
||||
<span class="nx">NUMBER</span> <span class="o">=</span> <span class="s1">'number'</span><span class="o">,</span>
|
||||
<span class="nx">BOOLEAN</span> <span class="o">=</span> <span class="s1">'boolean'</span><span class="o">,</span>
|
||||
<span class="nx">DATE</span> <span class="o">=</span> <span class="s1">'date'</span><span class="o">,</span>
|
||||
<span class="nx">_allowable</span> <span class="o">=</span> <span class="o">{</span>
|
||||
<span class="s1">'undefined'</span> <span class="o">:</span> <span class="nx">UNDEFINED</span><span class="o">,</span>
|
||||
<span class="s1">'string'</span> <span class="o">:</span> <span class="nx">STRING</span><span class="o">,</span>
|
||||
<span class="s1">'[object String]'</span> <span class="o">:</span> <span class="nx">STRING</span><span class="o">,</span>
|
||||
<span class="s1">'number'</span> <span class="o">:</span> <span class="nx">NUMBER</span><span class="o">,</span>
|
||||
<span class="s1">'[object Number]'</span> <span class="o">:</span> <span class="nx">NUMBER</span><span class="o">,</span>
|
||||
<span class="s1">'boolean'</span> <span class="o">:</span> <span class="nx">BOOLEAN</span><span class="o">,</span>
|
||||
<span class="s1">'[object Boolean]'</span> <span class="o">:</span> <span class="nx">BOOLEAN</span><span class="o">,</span>
|
||||
<span class="s1">'[object Date]'</span> <span class="o">:</span> <span class="nx">DATE</span><span class="o">,</span>
|
||||
<span class="s1">'[object RegExp]'</span> <span class="o">:</span> <span class="nx">OBJECT</span>
|
||||
<span class="o">},</span>
|
||||
<span class="nx">EMPTY</span> <span class="o">=</span> <span class="s1">''</span><span class="o">,</span>
|
||||
<span class="nx">OPEN_O</span> <span class="o">=</span> <span class="s1">'{'</span><span class="o">,</span>
|
||||
<span class="nx">CLOSE_O</span> <span class="o">=</span> <span class="s1">'}'</span><span class="o">,</span>
|
||||
<span class="nx">OPEN_A</span> <span class="o">=</span> <span class="s1">'['</span><span class="o">,</span>
|
||||
<span class="nx">CLOSE_A</span> <span class="o">=</span> <span class="s1">']'</span><span class="o">,</span>
|
||||
<span class="nx">COMMA</span> <span class="o">=</span> <span class="s1">','</span><span class="o">,</span>
|
||||
<span class="nx">COMMA_CR</span> <span class="o">=</span> <span class="s2">",\n"</span><span class="o">,</span>
|
||||
<span class="nx">CR</span> <span class="o">=</span> <span class="s2">"\n"</span><span class="o">,</span>
|
||||
<span class="nx">COLON</span> <span class="o">=</span> <span class="s1">':'</span><span class="o">,</span>
|
||||
<span class="nx">COLON_SP</span> <span class="o">=</span> <span class="s1">': '</span><span class="o">,</span>
|
||||
<span class="nx">QUOTE</span> <span class="o">=</span> <span class="s1">'"'</span><span class="o">;</span>
|
||||
|
||||
<span class="c">// Only accept JSON objects that report a [[Class]] of JSON</span>
|
||||
<span class="c"></span><span class="nx">Native</span> <span class="o">=</span> <span class="nx">_toStr</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">Native</span><span class="o">)</span> <span class="o">===</span> <span class="s1">'[object JSON]'</span> <span class="o">&&</span> <span class="nx">Native</span><span class="o">;</span>
|
||||
|
||||
<span class="c">// Escapes a special character to a safe Unicode representation</span>
|
||||
<span class="c"></span><span class="k">function</span> <span class="nx">_char</span><span class="o">(</span><span class="nx">c</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">_CHARS</span><span class="o">[</span><span class="nx">c</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">_CHARS</span><span class="o">[</span><span class="nx">c</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'\\u'</span><span class="o">+(</span><span class="s1">'0000'</span><span class="o">+(+(</span><span class="nx">c</span><span class="o">.</span><span class="nx">charCodeAt</span><span class="o">(</span><span class="m">0</span><span class="o">))).</span><span class="nx">toString</span><span class="o">(</span><span class="m">16</span><span class="o">)).</span><span class="nx">slice</span><span class="o">(-</span><span class="m">4</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">_CHARS</span><span class="o">[</span><span class="nx">c</span><span class="o">];</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="c">/* functions used by parse */</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Traverses nested objects, applying a filter or reviver function to</span>
|
||||
<span class="c"> * each value. The value returned from the function will replace the</span>
|
||||
<span class="c"> * original value in the key:value pair. If the value returned is</span>
|
||||
<span class="c"> * undefined, the key will be omitted from the returned object.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method _revive</span>
|
||||
<span class="c"> * @param data {MIXED} Any JavaScript data</span>
|
||||
<span class="c"> * @param reviver {Function} filter or mutation function</span>
|
||||
|
|
@ -158,22 +235,10 @@
|
|||
<span class="k">return</span> <span class="k">typeof</span> <span class="nx">reviver</span> <span class="o">===</span> <span class="s1">'function'</span> <span class="o">?</span> <span class="nx">walk</span><span class="o">({</span><span class="s1">''</span><span class="o">:</span><span class="nx">data</span><span class="o">},</span><span class="s1">''</span><span class="o">)</span> <span class="o">:</span> <span class="nx">data</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Escapes a special character to a safe Unicode representation</span>
|
||||
<span class="c"> * @method _char</span>
|
||||
<span class="c"> * @param c {String} single character to escape</span>
|
||||
<span class="c"> * @return {String} safe Unicode escape</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="k">function</span> <span class="nx">_char</span><span class="o">(</span><span class="nx">c</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">_CHARS</span><span class="o">[</span><span class="nx">c</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">_CHARS</span><span class="o">[</span><span class="nx">c</span><span class="o">]</span> <span class="o">=</span> <span class="s1">'\\u'</span><span class="o">+(</span><span class="s1">'0000'</span><span class="o">+(+(</span><span class="nx">c</span><span class="o">.</span><span class="nx">charCodeAt</span><span class="o">(</span><span class="m">0</span><span class="o">))).</span><span class="nx">toString</span><span class="o">(</span><span class="m">16</span><span class="o">)).</span><span class="nx">slice</span><span class="o">(-</span><span class="m">4</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">_CHARS</span><span class="o">[</span><span class="nx">c</span><span class="o">];</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Replace certain Unicode characters that may be handled incorrectly by</span>
|
||||
<span class="c"> * some browser implementations.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method _prepare</span>
|
||||
<span class="c"> * @param s {String} parse input</span>
|
||||
<span class="c"> * @return {String} sanitized JSON string ready to be validated/parsed</span>
|
||||
|
|
@ -183,211 +248,280 @@
|
|||
<span class="k">return</span> <span class="nx">s</span><span class="o">.</span><span class="nx">replace</span><span class="o">(</span><span class="nx">_UNICODE_EXCEPTIONS</span><span class="o">,</span> <span class="nx">_char</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Four step determination whether a string is valid JSON. In three steps,</span>
|
||||
<span class="c"> * escape sequences, safe values, and properly placed open square brackets</span>
|
||||
<span class="c"> * are replaced with placeholders or removed. Then in the final step, the</span>
|
||||
<span class="c"> * result of all these replacements is checked for invalid characters.</span>
|
||||
<span class="c"> * @method _isValid</span>
|
||||
<span class="c"> * @param str {String} JSON string to be tested</span>
|
||||
<span class="c"> * @return {boolean} is the string safe for eval?</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="k">function</span> <span class="nx">_isValid</span><span class="o">(</span><span class="nx">str</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">function</span> <span class="nx">_isSafe</span><span class="o">(</span><span class="nx">str</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">l</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">str</span><span class="o">)</span> <span class="o">&&</span>
|
||||
<span class="nx">_INVALID</span><span class="o">.</span><span class="nx">test</span><span class="o">(</span><span class="nx">str</span><span class="o">.</span>
|
||||
<span class="nx">replace</span><span class="o">(</span><span class="nx">_ESCAPES</span><span class="o">,</span><span class="s1">'@'</span><span class="o">).</span>
|
||||
<span class="nx">replace</span><span class="o">(</span><span class="nx">_VALUES</span><span class="o">,</span><span class="s1">']'</span><span class="o">).</span>
|
||||
<span class="nx">replace</span><span class="o">(</span><span class="nx">_BRACKETS</span><span class="o">,</span><span class="s1">''</span><span class="o">));</span>
|
||||
<span class="nx">_UNSAFE</span><span class="o">.</span><span class="nx">test</span><span class="o">(</span><span class="nx">str</span><span class="o">.</span><span class="nx">replace</span><span class="o">(</span><span class="nx">_ESCAPES</span><span class="o">,</span><span class="s1">'@'</span><span class="o">).</span>
|
||||
<span class="nx">replace</span><span class="o">(</span><span class="nx">_VALUES</span><span class="o">,</span><span class="s1">']'</span><span class="o">).</span>
|
||||
<span class="nx">replace</span><span class="o">(</span><span class="nx">_BRACKETS</span><span class="o">,</span><span class="s1">''</span><span class="o">));</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Enclose escaped strings in quotes</span>
|
||||
<span class="c"> * @method _string</span>
|
||||
<span class="c"> * @param s {String} string to wrap</span>
|
||||
<span class="c"> * @return {String} '"'+s+'"' after s has had special characters escaped</span>
|
||||
<span class="c"> * @private</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="k">function</span> <span class="nx">_string</span><span class="o">(</span><span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="s1">'"'</span> <span class="o">+</span> <span class="nx">s</span><span class="o">.</span><span class="nx">replace</span><span class="o">(</span><span class="nx">_SPECIAL_CHARS</span><span class="o">,</span> <span class="nx">_char</span><span class="o">)</span> <span class="o">+</span> <span class="s1">'"'</span><span class="o">;</span>
|
||||
<span class="k">function</span> <span class="nx">_parse</span><span class="o">(</span><span class="nx">s</span><span class="o">,</span><span class="nx">reviver</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">// sanitize</span>
|
||||
<span class="c"></span> <span class="nx">s</span> <span class="o">=</span> <span class="nx">_prepare</span><span class="o">(</span><span class="nx">s</span><span class="o">);</span>
|
||||
|
||||
<span class="c">// Ensure valid JSON</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">_isSafe</span><span class="o">(</span><span class="nx">s</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="c">// Eval the text into a JavaScript data structure, apply the</span>
|
||||
<span class="c"></span> <span class="c">// reviver function if provided, and return</span>
|
||||
<span class="c"></span> <span class="k">return</span> <span class="nx">_revive</span><span class="o">(</span> <span class="nb">eval</span><span class="o">(</span><span class="s1">'('</span> <span class="o">+</span> <span class="nx">s</span> <span class="o">+</span> <span class="s1">')'</span><span class="o">),</span> <span class="nx">reviver</span> <span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// The text is not valid JSON</span>
|
||||
<span class="c"></span> <span class="k">throw</span> <span class="k">new</span> <span class="nx">SyntaxError</span><span class="o">(</span><span class="s1">'JSON.parse'</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Worker function used by public stringify.</span>
|
||||
<span class="c"> * @method _stringify</span>
|
||||
<span class="c"> * @param h {Object} object holding the key</span>
|
||||
<span class="c"> * @param key {String} String key in object h to serialize</span>
|
||||
<span class="c"> * @param depth {Number} depth to serialize</span>
|
||||
<span class="c"> * @param w {Array|Function} array of whitelisted keys OR replacer function</span>
|
||||
<span class="c"> * @param pstack {Array} used to protect against recursion</span>
|
||||
<span class="c"> * @return {String} serialized version of o</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="k">function</span> <span class="nx">_stringify</span><span class="o">(</span><span class="nx">h</span><span class="o">,</span><span class="nx">key</span><span class="o">,</span><span class="nx">d</span><span class="o">,</span><span class="nx">w</span><span class="o">,</span><span class="nx">pstack</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">o</span> <span class="o">=</span> <span class="k">typeof</span> <span class="nx">w</span> <span class="o">===</span> <span class="s1">'function'</span> <span class="o">?</span> <span class="nx">w</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">h</span><span class="o">,</span><span class="nx">key</span><span class="o">,</span><span class="nx">h</span><span class="o">[</span><span class="nx">key</span><span class="o">])</span> <span class="o">:</span> <span class="nx">h</span><span class="o">[</span><span class="nx">key</span><span class="o">],</span>
|
||||
<span class="nx">i</span><span class="o">,</span><span class="nx">len</span><span class="o">,</span><span class="nx">j</span><span class="o">,</span> <span class="c">// array iteration</span>
|
||||
<span class="c"></span> <span class="nx">k</span><span class="o">,</span><span class="nx">v</span><span class="o">,</span> <span class="c">// object iteration</span>
|
||||
<span class="c"></span> <span class="nx">isArray</span><span class="o">,</span> <span class="c">// forking in typeof 'object'</span>
|
||||
<span class="c"></span> <span class="nx">a</span><span class="o">;</span> <span class="c">// composition array for performance over string concat</span>
|
||||
<span class="c"></span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">o</span> <span class="k">instanceof</span> <span class="nb">Date</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">o</span> <span class="o">=</span> <span class="nx">l</span><span class="o">.</span><span class="nx">JSON</span><span class="o">.</span><span class="nx">dateToString</span><span class="o">(</span><span class="nx">o</span><span class="o">);</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">o</span> <span class="k">instanceof</span> <span class="nb">String</span> <span class="o">||</span> <span class="nx">o</span> <span class="k">instanceof</span> <span class="nb">Boolean</span> <span class="o">||</span> <span class="nx">o</span> <span class="k">instanceof</span> <span class="nb">Number</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">o</span> <span class="o">=</span> <span class="nx">o</span><span class="o">.</span><span class="nx">valueOf</span><span class="o">();</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">switch</span> <span class="o">(</span><span class="k">typeof</span> <span class="nx">o</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">case</span> <span class="s1">'string'</span> <span class="o">:</span> <span class="k">return</span> <span class="nx">_string</span><span class="o">(</span><span class="nx">o</span><span class="o">);</span>
|
||||
<span class="nx">case</span> <span class="s1">'number'</span> <span class="o">:</span> <span class="k">return</span> <span class="nb">isFinite</span><span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">?</span> <span class="nb">String</span><span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">:</span> <span class="s1">'null'</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="s1">'boolean'</span><span class="o">:</span> <span class="k">return</span> <span class="nb">String</span><span class="o">(</span><span class="nx">o</span><span class="o">);</span>
|
||||
<span class="nx">case</span> <span class="s1">'object'</span> <span class="o">:</span>
|
||||
<span class="c">// null</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">o</span> <span class="o">===</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="s1">'null'</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Check for cyclical references</span>
|
||||
<span class="c"></span> <span class="k">for</span> <span class="o">(</span><span class="nx">i</span> <span class="o">=</span> <span class="nx">pstack</span><span class="o">.</span><span class="nx">length</span> <span class="o">-</span> <span class="m">1</span><span class="o">;</span> <span class="nx">i</span> <span class="o">>=</span> <span class="m">0</span><span class="o">;</span> <span class="o">--</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">pstack</span><span class="o">[</span><span class="nx">i</span><span class="o">]</span> <span class="o">===</span> <span class="nx">o</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="s1">'null'</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="c">/* functions used by stringify */</span>
|
||||
|
||||
<span class="c">// Add the object to the processing stack</span>
|
||||
<span class="c"></span> <span class="nx">pstack</span><span class="o">[</span><span class="nx">pstack</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="nx">o</span><span class="o">;</span>
|
||||
|
||||
<span class="nx">a</span> <span class="o">=</span> <span class="o">[];</span>
|
||||
<span class="nx">isArray</span> <span class="o">=</span> <span class="nx">l</span><span class="o">.</span><span class="nx">isArray</span><span class="o">(</span><span class="nx">o</span><span class="o">);</span>
|
||||
|
||||
<span class="c">// Only recurse if we're above depth config</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">d</span> <span class="o">></span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">// Array</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">isArray</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span> <span class="o">=</span> <span class="nx">o</span><span class="o">.</span><span class="nx">length</span> <span class="o">-</span> <span class="m">1</span><span class="o">;</span> <span class="nx">i</span> <span class="o">>=</span> <span class="m">0</span><span class="o">;</span> <span class="o">--</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">a</span><span class="o">[</span><span class="nx">i</span><span class="o">]</span> <span class="o">=</span> <span class="nx">_stringify</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span><span class="nx">i</span><span class="o">,</span><span class="nx">d</span><span class="o">-</span><span class="m">1</span><span class="o">,</span><span class="nx">w</span><span class="o">,</span><span class="nx">pstack</span><span class="o">)</span> <span class="o">||</span> <span class="s1">'null'</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Object</span>
|
||||
<span class="c"></span> <span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">j</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
|
||||
<span class="c">// Use whitelist keys if provided as an array</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">l</span><span class="o">.</span><span class="nx">isArray</span><span class="o">(</span><span class="nx">w</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span> <span class="o">=</span> <span class="m">0</span><span class="o">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">w</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="o">;</span> <span class="o">++</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">k</span> <span class="o">=</span> <span class="nx">w</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
||||
<span class="nx">v</span> <span class="o">=</span> <span class="nx">_stringify</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span><span class="nx">k</span><span class="o">,</span><span class="nx">d</span><span class="o">-</span><span class="m">1</span><span class="o">,</span><span class="nx">w</span><span class="o">,</span><span class="nx">pstack</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">v</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">a</span><span class="o">[</span><span class="nx">j</span><span class="o">++]</span> <span class="o">=</span> <span class="nx">_string</span><span class="o">(</span><span class="nx">k</span><span class="o">)</span> <span class="o">+</span> <span class="s1">':'</span> <span class="o">+</span> <span class="nx">v</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">k</span> <span class="k">in</span> <span class="nx">o</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="k">typeof</span> <span class="nx">k</span> <span class="o">===</span> <span class="s1">'string'</span> <span class="o">&&</span> <span class="nx">l</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span><span class="nx">k</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">v</span> <span class="o">=</span> <span class="nx">_stringify</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span><span class="nx">k</span><span class="o">,</span><span class="nx">d</span><span class="o">-</span><span class="m">1</span><span class="o">,</span><span class="nx">w</span><span class="o">,</span><span class="nx">pstack</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">v</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">a</span><span class="o">[</span><span class="nx">j</span><span class="o">++]</span> <span class="o">=</span> <span class="nx">_string</span><span class="o">(</span><span class="nx">k</span><span class="o">)</span> <span class="o">+</span> <span class="s1">':'</span> <span class="o">+</span> <span class="nx">v</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// sort object keys for easier readability</span>
|
||||
<span class="c"></span> <span class="nx">a</span><span class="o">.</span><span class="nx">sort</span><span class="o">();</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// remove the object from the stack</span>
|
||||
<span class="c"></span> <span class="nx">pstack</span><span class="o">.</span><span class="nx">pop</span><span class="o">();</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">isArray</span> <span class="o">?</span> <span class="s1">'['</span><span class="o">+</span><span class="nx">a</span><span class="o">.</span><span class="nx">join</span><span class="o">(</span><span class="s1">','</span><span class="o">)+</span><span class="s1">']'</span> <span class="o">:</span> <span class="s1">'{'</span><span class="o">+</span><span class="nx">a</span><span class="o">.</span><span class="nx">join</span><span class="o">(</span><span class="s1">','</span><span class="o">)+</span><span class="s1">'}'</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="kc">undefined</span><span class="o">;</span> <span class="c">// invalid input</span>
|
||||
<span class="c">// Utility function used to determine how to serialize a variable.</span>
|
||||
<span class="c"></span><span class="k">function</span> <span class="nx">_type</span><span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">t</span> <span class="o">=</span> <span class="k">typeof</span> <span class="nx">o</span><span class="o">;</span>
|
||||
<span class="k">return</span> <span class="nx">_allowable</span><span class="o">[</span><span class="nx">t</span><span class="o">]</span> <span class="o">||</span> <span class="c">// number, string, boolean, undefined</span>
|
||||
<span class="c"></span> <span class="nx">_allowable</span><span class="o">[</span><span class="nx">_toStr</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">o</span><span class="o">)]</span> <span class="o">||</span> <span class="c">// Number, String, Boolean, Date</span>
|
||||
<span class="c"></span> <span class="o">(</span><span class="nx">t</span> <span class="o">===</span> <span class="nx">OBJECT</span> <span class="o">?</span>
|
||||
<span class="o">(</span><span class="nx">o</span> <span class="o">?</span> <span class="nx">OBJECT</span> <span class="o">:</span> <span class="nx">NULL</span><span class="o">)</span> <span class="o">:</span> <span class="c">// object, array, null, misc natives</span>
|
||||
<span class="c"></span> <span class="nx">UNDEFINED</span><span class="o">);</span> <span class="c">// function, unknown</span>
|
||||
<span class="c"></span><span class="o">}</span>
|
||||
|
||||
<span class="c">// Return the public API</span>
|
||||
<span class="c"></span><span class="k">return</span> <span class="o">{</span>
|
||||
<span class="c">// Enclose escaped strings in quotes</span>
|
||||
<span class="c"></span><span class="k">function</span> <span class="nx">_string</span><span class="o">(</span><span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">QUOTE</span> <span class="o">+</span> <span class="nx">s</span><span class="o">.</span><span class="nx">replace</span><span class="o">(</span><span class="nx">_SPECIAL_CHARS</span><span class="o">,</span> <span class="nx">_char</span><span class="o">)</span> <span class="o">+</span> <span class="nx">QUOTE</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Adds the provided space to the beginning of every line in the input string</span>
|
||||
<span class="c"></span><span class="k">function</span> <span class="nx">_indent</span><span class="o">(</span><span class="nx">s</span><span class="o">,</span><span class="nx">space</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">s</span><span class="o">.</span><span class="nx">replace</span><span class="o">(</span><span class="sr">/^/gm</span><span class="o">,</span> <span class="nx">space</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// JavaScript implementation of stringify (see API declaration of stringify)</span>
|
||||
<span class="c"></span><span class="k">function</span> <span class="nx">_stringify</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span><span class="nx">w</span><span class="o">,</span><span class="nx">space</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">o</span> <span class="o">===</span> <span class="kc">undefined</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="kc">undefined</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">replacer</span> <span class="o">=</span> <span class="nx">isFunction</span><span class="o">(</span><span class="nx">w</span><span class="o">)</span> <span class="o">?</span> <span class="nx">w</span> <span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
|
||||
<span class="nx">format</span> <span class="o">=</span> <span class="nx">_toStr</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">space</span><span class="o">).</span><span class="nx">match</span><span class="o">(</span><span class="sr">/String|Number/</span><span class="o">)</span> <span class="o">||</span> <span class="o">[],</span>
|
||||
<span class="nx">_date</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">JSON</span><span class="o">.</span><span class="nx">dateToString</span><span class="o">,</span>
|
||||
<span class="nx">stack</span> <span class="o">=</span> <span class="o">[],</span>
|
||||
<span class="nx">tmp</span><span class="o">,</span><span class="nx">i</span><span class="o">,</span><span class="nx">len</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">replacer</span> <span class="o">||</span> <span class="o">!</span><span class="nx">isArray</span><span class="o">(</span><span class="nx">w</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">w</span> <span class="o">=</span> <span class="kc">undefined</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Ensure whitelist keys are unique (bug 2110391)</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">w</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">tmp</span> <span class="o">=</span> <span class="o">{};</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span> <span class="o">=</span> <span class="m">0</span><span class="o">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">w</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="o">;</span> <span class="o">++</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">tmp</span><span class="o">[</span><span class="nx">w</span><span class="o">[</span><span class="nx">i</span><span class="o">]]</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="nx">w</span> <span class="o">=</span> <span class="nx">tmp</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Per the spec, strings are truncated to 10 characters and numbers</span>
|
||||
<span class="c"></span> <span class="c">// are converted to that number of spaces (max 10)</span>
|
||||
<span class="c"></span> <span class="nx">space</span> <span class="o">=</span> <span class="nx">format</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">===</span> <span class="s1">'Number'</span> <span class="o">?</span>
|
||||
<span class="k">new</span> <span class="nb">Array</span><span class="o">(</span><span class="nb">Math</span><span class="o">.</span><span class="nx">min</span><span class="o">(</span><span class="nb">Math</span><span class="o">.</span><span class="nx">max</span><span class="o">(</span><span class="m">0</span><span class="o">,</span><span class="nx">space</span><span class="o">),</span><span class="m">10</span><span class="o">)+</span><span class="m">1</span><span class="o">).</span><span class="nx">join</span><span class="o">(</span><span class="s2">" "</span><span class="o">)</span> <span class="o">:</span>
|
||||
<span class="o">(</span><span class="nx">space</span> <span class="o">||</span> <span class="nx">EMPTY</span><span class="o">).</span><span class="nx">slice</span><span class="o">(</span><span class="m">0</span><span class="o">,</span><span class="m">10</span><span class="o">);</span>
|
||||
|
||||
<span class="k">function</span> <span class="nx">_serialize</span><span class="o">(</span><span class="nx">h</span><span class="o">,</span><span class="nx">key</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">value</span> <span class="o">=</span> <span class="nx">h</span><span class="o">[</span><span class="nx">key</span><span class="o">],</span>
|
||||
<span class="nx">t</span> <span class="o">=</span> <span class="nx">_type</span><span class="o">(</span><span class="nx">value</span><span class="o">),</span>
|
||||
<span class="nx">a</span> <span class="o">=</span> <span class="o">[],</span>
|
||||
<span class="nx">colon</span> <span class="o">=</span> <span class="nx">space</span> <span class="o">?</span> <span class="nx">COLON_SP</span> <span class="o">:</span> <span class="nx">COLON</span><span class="o">,</span>
|
||||
<span class="nx">arr</span><span class="o">,</span> <span class="nx">i</span><span class="o">,</span> <span class="nx">keys</span><span class="o">,</span> <span class="nx">k</span><span class="o">,</span> <span class="nx">v</span><span class="o">;</span>
|
||||
|
||||
<span class="c">// Per the ECMA 5 spec, toJSON is applied before the replacer is</span>
|
||||
<span class="c"></span> <span class="c">// called. Also per the spec, Date.prototype.toJSON has been added, so</span>
|
||||
<span class="c"></span> <span class="c">// Date instances should be serialized prior to exposure to the</span>
|
||||
<span class="c"></span> <span class="c">// replacer. I disagree with this decision, but the spec is the spec.</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">isObject</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">isFunction</span><span class="o">(</span><span class="nx">value</span><span class="o">.</span><span class="nx">toJSON</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">value</span> <span class="o">=</span> <span class="nx">value</span><span class="o">.</span><span class="nx">toJSON</span><span class="o">(</span><span class="nx">key</span><span class="o">);</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">t</span> <span class="o">===</span> <span class="nx">DATE</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">value</span> <span class="o">=</span> <span class="nx">_date</span><span class="o">(</span><span class="nx">value</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">isFunction</span><span class="o">(</span><span class="nx">replacer</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">value</span> <span class="o">=</span> <span class="nx">replacer</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">h</span><span class="o">,</span><span class="nx">key</span><span class="o">,</span><span class="nx">value</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">value</span> <span class="o">!==</span> <span class="nx">h</span><span class="o">[</span><span class="nx">key</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">t</span> <span class="o">=</span> <span class="nx">_type</span><span class="o">(</span><span class="nx">value</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">switch</span> <span class="o">(</span><span class="nx">t</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">case</span> <span class="nx">DATE</span> <span class="o">:</span> <span class="c">// intentional fallthrough. Pre-replacer Dates are</span>
|
||||
<span class="c"></span> <span class="c">// serialized in the toJSON stage. Dates here would</span>
|
||||
<span class="c"></span> <span class="c">// have been produced by the replacer.</span>
|
||||
<span class="c"></span> <span class="nx">case</span> <span class="nx">OBJECT</span> <span class="o">:</span> <span class="k">break</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="nx">STRING</span> <span class="o">:</span> <span class="k">return</span> <span class="nx">_string</span><span class="o">(</span><span class="nx">value</span><span class="o">);</span>
|
||||
<span class="nx">case</span> <span class="nx">NUMBER</span> <span class="o">:</span> <span class="k">return</span> <span class="nb">isFinite</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">?</span> <span class="nx">value</span><span class="o">+</span><span class="nx">EMPTY</span> <span class="o">:</span> <span class="nx">NULL</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="nx">BOOLEAN</span> <span class="o">:</span> <span class="k">return</span> <span class="nx">value</span><span class="o">+</span><span class="nx">EMPTY</span><span class="o">;</span>
|
||||
<span class="nx">case</span> <span class="nx">NULL</span> <span class="o">:</span> <span class="k">return</span> <span class="nx">NULL</span><span class="o">;</span>
|
||||
<span class="nx">default</span> <span class="o">:</span> <span class="k">return</span> <span class="kc">undefined</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Check for cyclical references in nested objects</span>
|
||||
<span class="c"></span> <span class="k">for</span> <span class="o">(</span><span class="nx">i</span> <span class="o">=</span> <span class="nx">stack</span><span class="o">.</span><span class="nx">length</span> <span class="o">-</span> <span class="m">1</span><span class="o">;</span> <span class="nx">i</span> <span class="o">>=</span> <span class="m">0</span><span class="o">;</span> <span class="o">--</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">stack</span><span class="o">[</span><span class="nx">i</span><span class="o">]</span> <span class="o">===</span> <span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nb">Error</span><span class="o">(</span><span class="s2">"JSON.stringify. Cyclical reference"</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">arr</span> <span class="o">=</span> <span class="nx">isArray</span><span class="o">(</span><span class="nx">value</span><span class="o">);</span>
|
||||
|
||||
<span class="c">// Add the object to the processing stack</span>
|
||||
<span class="c"></span> <span class="nx">stack</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">value</span><span class="o">);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">arr</span><span class="o">)</span> <span class="o">{</span> <span class="c">// Array</span>
|
||||
<span class="c"></span> <span class="k">for</span> <span class="o">(</span><span class="nx">i</span> <span class="o">=</span> <span class="nx">value</span><span class="o">.</span><span class="nx">length</span> <span class="o">-</span> <span class="m">1</span><span class="o">;</span> <span class="nx">i</span> <span class="o">>=</span> <span class="m">0</span><span class="o">;</span> <span class="o">--</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">a</span><span class="o">[</span><span class="nx">i</span><span class="o">]</span> <span class="o">=</span> <span class="nx">_serialize</span><span class="o">(</span><span class="nx">value</span><span class="o">,</span> <span class="nx">i</span><span class="o">)</span> <span class="o">||</span> <span class="nx">NULL</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// Object</span>
|
||||
<span class="c"></span> <span class="c">// If whitelist provided, take only those keys</span>
|
||||
<span class="c"></span> <span class="nx">keys</span> <span class="o">=</span> <span class="nx">w</span> <span class="o">||</span> <span class="nx">value</span><span class="o">;</span>
|
||||
<span class="nx">i</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
|
||||
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">k</span> <span class="k">in</span> <span class="nx">keys</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">keys</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="nx">k</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">v</span> <span class="o">=</span> <span class="nx">_serialize</span><span class="o">(</span><span class="nx">value</span><span class="o">,</span> <span class="nx">k</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">v</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">a</span><span class="o">[</span><span class="nx">i</span><span class="o">++]</span> <span class="o">=</span> <span class="nx">_string</span><span class="o">(</span><span class="nx">k</span><span class="o">)</span> <span class="o">+</span> <span class="nx">colon</span> <span class="o">+</span> <span class="nx">v</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// remove the array from the stack</span>
|
||||
<span class="c"></span> <span class="nx">stack</span><span class="o">.</span><span class="nx">pop</span><span class="o">();</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">space</span> <span class="o">&&</span> <span class="nx">a</span><span class="o">.</span><span class="nx">length</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">arr</span> <span class="o">?</span>
|
||||
<span class="nx">OPEN_A</span> <span class="o">+</span> <span class="nx">CR</span> <span class="o">+</span> <span class="nx">_indent</span><span class="o">(</span><span class="nx">a</span><span class="o">.</span><span class="nx">join</span><span class="o">(</span><span class="nx">COMMA_CR</span><span class="o">),</span> <span class="nx">space</span><span class="o">)</span> <span class="o">+</span> <span class="nx">CR</span> <span class="o">+</span> <span class="nx">CLOSE_A</span> <span class="o">:</span>
|
||||
<span class="nx">OPEN_O</span> <span class="o">+</span> <span class="nx">CR</span> <span class="o">+</span> <span class="nx">_indent</span><span class="o">(</span><span class="nx">a</span><span class="o">.</span><span class="nx">join</span><span class="o">(</span><span class="nx">COMMA_CR</span><span class="o">),</span> <span class="nx">space</span><span class="o">)</span> <span class="o">+</span> <span class="nx">CR</span> <span class="o">+</span> <span class="nx">CLOSE_O</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">arr</span> <span class="o">?</span>
|
||||
<span class="nx">OPEN_A</span> <span class="o">+</span> <span class="nx">a</span><span class="o">.</span><span class="nx">join</span><span class="o">(</span><span class="nx">COMMA</span><span class="o">)</span> <span class="o">+</span> <span class="nx">CLOSE_A</span> <span class="o">:</span>
|
||||
<span class="nx">OPEN_O</span> <span class="o">+</span> <span class="nx">a</span><span class="o">.</span><span class="nx">join</span><span class="o">(</span><span class="nx">COMMA</span><span class="o">)</span> <span class="o">+</span> <span class="nx">CLOSE_O</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// process the input</span>
|
||||
<span class="c"></span> <span class="k">return</span> <span class="nx">_serialize</span><span class="o">({</span><span class="s1">''</span><span class="o">:</span><span class="nx">o</span><span class="o">},</span><span class="s1">''</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
|
||||
<span class="c">/* Public API */</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">JSON</span> <span class="o">=</span> <span class="o">{</span>
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Four step determination whether a string is valid JSON. In three steps,</span>
|
||||
<span class="c"> * Leverage native JSON parse if the browser has a native implementation.</span>
|
||||
<span class="c"> * In general, this is a good idea. See the Known Issues section in the</span>
|
||||
<span class="c"> * JSON user guide for caveats. The default value is true for browsers with</span>
|
||||
<span class="c"> * native JSON support.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @property useNativeParse</span>
|
||||
<span class="c"> * @type Boolean</span>
|
||||
<span class="c"> * @default true</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">useNativeParse</span> <span class="o">:</span> <span class="o">!!</span><span class="nx">Native</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Leverage native JSON stringify if the browser has a native</span>
|
||||
<span class="c"> * implementation. In general, this is a good idea. See the Known Issues</span>
|
||||
<span class="c"> * section in the JSON user guide for caveats. The default value is true</span>
|
||||
<span class="c"> * for browsers with native JSON support.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @property useNativeStringify</span>
|
||||
<span class="c"> * @type Boolean</span>
|
||||
<span class="c"> * @default true</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">useNativeStringify</span> <span class="o">:</span> <span class="o">!!</span><span class="nx">Native</span><span class="o">,</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Four step determination whether a string is safe to eval. In three steps,</span>
|
||||
<span class="c"> * escape sequences, safe values, and properly placed open square brackets</span>
|
||||
<span class="c"> * are replaced with placeholders or removed. Then in the final step, the</span>
|
||||
<span class="c"> * result of all these replacements is checked for invalid characters.</span>
|
||||
<span class="c"> * @method isValid</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method isSafe</span>
|
||||
<span class="c"> * @param str {String} JSON string to be tested</span>
|
||||
<span class="c"> * @return {boolean} is the string safe for eval?</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">isValid</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">_isValid</span><span class="o">(</span><span class="nx">_prepare</span><span class="o">(</span><span class="nx">s</span><span class="o">));</span>
|
||||
<span class="nx">isSafe</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">_isSafe</span><span class="o">(</span><span class="nx">_prepare</span><span class="o">(</span><span class="nx">s</span><span class="o">));</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Parse a JSON string, returning the native JavaScript representation.</span>
|
||||
<span class="c"> * Only minor modifications from http://www.json.org/json2.js.</span>
|
||||
<span class="c"> * <p>Parse a JSON string, returning the native JavaScript</span>
|
||||
<span class="c"> * representation.</p></span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * <p>When lang.JSON.useNativeParse is true, this will defer to the native</span>
|
||||
<span class="c"> * JSON.parse if the browser has a native implementation. Otherwise, a</span>
|
||||
<span class="c"> * JavaScript implementation based on http://www.json.org/json2.js</span>
|
||||
<span class="c"> * is used.</p></span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method parse</span>
|
||||
<span class="c"> * @param s {string} JSON string data</span>
|
||||
<span class="c"> * @param reviver {function} (optional) function(k,v) passed each key:value</span>
|
||||
<span class="c"> * pair of object literals, allowing pruning or altering values</span>
|
||||
<span class="c"> * @return {MIXED} the native JavaScript representation of the JSON string</span>
|
||||
<span class="c"> * @throws SyntaxError</span>
|
||||
<span class="c"> * @method parse</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">parse</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">s</span><span class="o">,</span><span class="nx">reviver</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">// sanitize</span>
|
||||
<span class="c"></span> <span class="nx">s</span> <span class="o">=</span> <span class="nx">_prepare</span><span class="o">(</span><span class="nx">s</span><span class="o">);</span>
|
||||
|
||||
<span class="c">// Ensure valid JSON</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">_isValid</span><span class="o">(</span><span class="nx">s</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="c">// Eval the text into a JavaScript data structure, apply the</span>
|
||||
<span class="c"></span> <span class="c">// reviver function if provided, and return</span>
|
||||
<span class="c"></span> <span class="k">return</span> <span class="nx">_revive</span><span class="o">(</span> <span class="nb">eval</span><span class="o">(</span><span class="s1">'('</span> <span class="o">+</span> <span class="nx">s</span> <span class="o">+</span> <span class="s1">')'</span><span class="o">),</span> <span class="nx">reviver</span> <span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// The text is not valid JSON</span>
|
||||
<span class="c"></span> <span class="k">throw</span> <span class="k">new</span> <span class="nx">SyntaxError</span><span class="o">(</span><span class="s1">'parseJSON'</span><span class="o">);</span>
|
||||
<span class="k">return</span> <span class="nx">Native</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">JSON</span><span class="o">.</span><span class="nx">useNativeParse</span> <span class="o">?</span>
|
||||
<span class="nx">Native</span><span class="o">.</span><span class="nx">parse</span><span class="o">(</span><span class="nx">s</span><span class="o">,</span><span class="nx">reviver</span><span class="o">)</span> <span class="o">:</span> <span class="nx">_parse</span><span class="o">(</span><span class="nx">s</span><span class="o">,</span><span class="nx">reviver</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Converts an arbitrary value to a JSON string representation.</span>
|
||||
<span class="c"> * Cyclical object or array references are replaced with null.</span>
|
||||
<span class="c"> * If a whitelist is provided, only matching object keys will be included.</span>
|
||||
<span class="c"> * If a depth limit is provided, objects and arrays at that depth will</span>
|
||||
<span class="c"> * be stringified as empty.</span>
|
||||
<span class="c"> * <p>Converts an arbitrary value to a JSON string representation.</p></span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * <p>Objects with cyclical references will trigger an exception.</p></span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * <p>If a whitelist is provided, only matching object keys will be</span>
|
||||
<span class="c"> * included. Alternately, a replacer function may be passed as the</span>
|
||||
<span class="c"> * second parameter. This function is executed on every value in the</span>
|
||||
<span class="c"> * input, and its return value will be used in place of the original value.</span>
|
||||
<span class="c"> * This is useful to serialize specialized objects or class instances.</p></span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * <p>If a positive integer or non-empty string is passed as the third</span>
|
||||
<span class="c"> * parameter, the output will be formatted with carriage returns and</span>
|
||||
<span class="c"> * indentation for readability. If a String is passed (such as "\t") it</span>
|
||||
<span class="c"> * will be used once for each indentation level. If a number is passed,</span>
|
||||
<span class="c"> * that number of spaces will be used.</p></span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * <p>When lang.JSON.useNativeStringify is true, this will defer to the</span>
|
||||
<span class="c"> * native JSON.stringify if the browser has a native implementation.</span>
|
||||
<span class="c"> * Otherwise, a JavaScript implementation is used.</p></span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method stringify</span>
|
||||
<span class="c"> * @param o {MIXED} any arbitrary object to convert to JSON string</span>
|
||||
<span class="c"> * @param w {Array|Function} (optional) whitelist of acceptable object keys to include OR a function(value,key) to alter values before serialization</span>
|
||||
<span class="c"> * @param d {number} (optional) depth limit to recurse objects/arrays (practical minimum 1)</span>
|
||||
<span class="c"> * @param w {Array|Function} (optional) whitelist of acceptable object keys</span>
|
||||
<span class="c"> * to include OR a function(value,key) to alter values</span>
|
||||
<span class="c"> * before serialization</span>
|
||||
<span class="c"> * @param space {Number|String} (optional) indentation character(s) or</span>
|
||||
<span class="c"> * depthy of spaces to format the output </span>
|
||||
<span class="c"> * @return {string} JSON string representation of the input</span>
|
||||
<span class="c"> * @throws Error</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">stringify</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">o</span><span class="o">,</span><span class="nx">w</span><span class="o">,</span><span class="nx">d</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">o</span> <span class="o">!==</span> <span class="kc">undefined</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c">// Ensure whitelist keys are unique (bug 2110391)</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">l</span><span class="o">.</span><span class="nx">isArray</span><span class="o">(</span><span class="nx">w</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">w</span> <span class="o">=</span> <span class="o">(</span><span class="k">function</span> <span class="o">(</span><span class="nx">a</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">uniq</span><span class="o">=[],</span><span class="nx">map</span><span class="o">={},</span><span class="nx">v</span><span class="o">,</span><span class="nx">i</span><span class="o">,</span><span class="nx">j</span><span class="o">,</span><span class="nx">len</span><span class="o">;</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">,</span><span class="nx">j</span><span class="o">=</span><span class="m">0</span><span class="o">,</span><span class="nx">len</span><span class="o">=</span><span class="nx">a</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">len</span><span class="o">;</span> <span class="o">++</span><span class="nx">i</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">v</span> <span class="o">=</span> <span class="nx">a</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="k">typeof</span> <span class="nx">v</span> <span class="o">===</span> <span class="s1">'string'</span> <span class="o">&&</span> <span class="nx">map</span><span class="o">[</span><span class="nx">v</span><span class="o">]</span> <span class="o">===</span> <span class="kc">undefined</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">uniq</span><span class="o">[(</span><span class="nx">map</span><span class="o">[</span><span class="nx">v</span><span class="o">]</span> <span class="o">=</span> <span class="nx">j</span><span class="o">++)]</span> <span class="o">=</span> <span class="nx">v</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">uniq</span><span class="o">;</span>
|
||||
<span class="o">})(</span><span class="nx">w</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// Default depth to POSITIVE_INFINITY</span>
|
||||
<span class="c"></span> <span class="nx">d</span> <span class="o">=</span> <span class="nx">d</span> <span class="o">>=</span> <span class="m">0</span> <span class="o">?</span> <span class="nx">d</span> <span class="o">:</span> <span class="m">1</span><span class="o">/</span><span class="m">0</span><span class="o">;</span>
|
||||
|
||||
<span class="c">// process the input</span>
|
||||
<span class="c"></span> <span class="k">return</span> <span class="nx">_stringify</span><span class="o">({</span><span class="s1">''</span><span class="o">:</span><span class="nx">o</span><span class="o">},</span><span class="s1">''</span><span class="o">,</span><span class="nx">d</span><span class="o">,</span><span class="nx">w</span><span class="o">,[]);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="kc">undefined</span><span class="o">;</span>
|
||||
<span class="nx">stringify</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">o</span><span class="o">,</span><span class="nx">w</span><span class="o">,</span><span class="nx">space</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">Native</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">JSON</span><span class="o">.</span><span class="nx">useNativeStringify</span> <span class="o">?</span>
|
||||
<span class="nx">Native</span><span class="o">.</span><span class="nx">stringify</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span><span class="nx">w</span><span class="o">,</span><span class="nx">space</span><span class="o">)</span> <span class="o">:</span> <span class="nx">_stringify</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span><span class="nx">w</span><span class="o">,</span><span class="nx">space</span><span class="o">);</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Serializes a Date instance as a UTC date string. Used internally by</span>
|
||||
<span class="c"> * stringify. Override this method if you need Dates serialized in a</span>
|
||||
<span class="c"> * different format.</span>
|
||||
<span class="c"> * the JavaScript implementation of stringify. If you need a different</span>
|
||||
<span class="c"> * Date serialization format, override this method. If you change this,</span>
|
||||
<span class="c"> * you should also set useNativeStringify to false, since native JSON</span>
|
||||
<span class="c"> * implementations serialize Dates per the ECMAScript 5 spec. You've been</span>
|
||||
<span class="c"> * warned.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method dateToString</span>
|
||||
<span class="c"> * @param d {Date} The Date to serialize</span>
|
||||
<span class="c"> * @return {String} stringified Date in UTC format YYYY-MM-DDTHH:mm:SSZ</span>
|
||||
|
|
@ -401,8 +535,8 @@
|
|||
<span class="k">return</span> <span class="nx">d</span><span class="o">.</span><span class="nx">getUTCFullYear</span><span class="o">()</span> <span class="o">+</span> <span class="s1">'-'</span> <span class="o">+</span>
|
||||
<span class="nx">_zeroPad</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getUTCMonth</span><span class="o">()</span> <span class="o">+</span> <span class="m">1</span><span class="o">)</span> <span class="o">+</span> <span class="s1">'-'</span> <span class="o">+</span>
|
||||
<span class="nx">_zeroPad</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getUTCDate</span><span class="o">())</span> <span class="o">+</span> <span class="s1">'T'</span> <span class="o">+</span>
|
||||
<span class="nx">_zeroPad</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getUTCHours</span><span class="o">())</span> <span class="o">+</span> <span class="s1">':'</span> <span class="o">+</span>
|
||||
<span class="nx">_zeroPad</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getUTCMinutes</span><span class="o">())</span> <span class="o">+</span> <span class="s1">':'</span> <span class="o">+</span>
|
||||
<span class="nx">_zeroPad</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getUTCHours</span><span class="o">())</span> <span class="o">+</span> <span class="nx">COLON</span> <span class="o">+</span>
|
||||
<span class="nx">_zeroPad</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getUTCMinutes</span><span class="o">())</span> <span class="o">+</span> <span class="nx">COLON</span> <span class="o">+</span>
|
||||
<span class="nx">_zeroPad</span><span class="o">(</span><span class="nx">d</span><span class="o">.</span><span class="nx">getUTCSeconds</span><span class="o">())</span> <span class="o">+</span> <span class="s1">'Z'</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
|
|
@ -410,120 +544,113 @@
|
|||
<span class="c"> * Reconstitute Date instances from the default JSON UTC serialization.</span>
|
||||
<span class="c"> * Reference this from a reviver function to rebuild Dates during the</span>
|
||||
<span class="c"> * parse operation.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method stringToDate</span>
|
||||
<span class="c"> * @param str {String} String serialization of a Date</span>
|
||||
<span class="c"> * @return {Date}</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">stringToDate</span> <span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">str</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="sr">/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})Z$/</span><span class="o">.</span><span class="nx">test</span><span class="o">(</span><span class="nx">str</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">m</span> <span class="o">=</span> <span class="nx">str</span><span class="o">.</span><span class="nx">match</span><span class="o">(</span><span class="sr">/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(?:\.(\d{3}))?Z$/</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">m</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">d</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="o">();</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setUTCFullYear</span><span class="o">(</span><span class="nb">RegExp</span><span class="o">.</span><span class="nx">$1</span><span class="o">,</span> <span class="o">(</span><span class="nb">RegExp</span><span class="o">.</span><span class="nx">$2</span><span class="o">|</span><span class="m">0</span><span class="o">)-</span><span class="m">1</span><span class="o">,</span> <span class="nb">RegExp</span><span class="o">.</span><span class="nx">$3</span><span class="o">);</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setUTCHours</span><span class="o">(</span><span class="nb">RegExp</span><span class="o">.</span><span class="nx">$4</span><span class="o">,</span> <span class="nb">RegExp</span><span class="o">.</span><span class="nx">$5</span><span class="o">,</span> <span class="nb">RegExp</span><span class="o">.</span><span class="nx">$6</span><span class="o">);</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setUTCFullYear</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">1</span><span class="o">],</span> <span class="nx">m</span><span class="o">[</span><span class="m">2</span><span class="o">]-</span><span class="m">1</span><span class="o">,</span> <span class="nx">m</span><span class="o">[</span><span class="m">3</span><span class="o">]);</span>
|
||||
<span class="nx">d</span><span class="o">.</span><span class="nx">setUTCHours</span><span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">4</span><span class="o">],</span> <span class="nx">m</span><span class="o">[</span><span class="m">5</span><span class="o">],</span> <span class="nx">m</span><span class="o">[</span><span class="m">6</span><span class="o">],</span> <span class="o">(</span><span class="nx">m</span><span class="o">[</span><span class="m">7</span><span class="o">]</span> <span class="o">||</span> <span class="m">0</span><span class="o">));</span>
|
||||
<span class="k">return</span> <span class="nx">d</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">str</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * <p>Four step determination whether a string is safe to eval. In three steps,</span>
|
||||
<span class="c"> * escape sequences, safe values, and properly placed open square brackets</span>
|
||||
<span class="c"> * are replaced with placeholders or removed. Then in the final step, the</span>
|
||||
<span class="c"> * result of all these replacements is checked for invalid characters.</p></span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * <p>This is an alias for isSafe.</p></span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method isValid</span>
|
||||
<span class="c"> * @param str {String} JSON string to be tested</span>
|
||||
<span class="c"> * @return {boolean} is the string safe for eval?</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @deprecated use isSafe</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">JSON</span><span class="o">.</span><span class="nx">isValid</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">JSON</span><span class="o">.</span><span class="nx">isSafe</span><span class="o">;</span>
|
||||
|
||||
<span class="o">})();</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div class="module">
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
|
||||
<li class=""><a href="module_animation.html">animation</a></li>
|
||||
|
||||
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
||||
|
||||
<li class=""><a href="module_button.html">button</a></li>
|
||||
|
||||
<li class=""><a href="module_calendar.html">calendar</a></li>
|
||||
|
||||
<li class=""><a href="module_carousel.html">carousel</a></li>
|
||||
|
||||
<li class=""><a href="module_charts.html">charts</a></li>
|
||||
|
||||
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
||||
|
||||
<li class=""><a href="module_connection.html">connection</a></li>
|
||||
|
||||
<li class=""><a href="module_container.html">container</a></li>
|
||||
|
||||
<li class=""><a href="module_cookie.html">cookie</a></li>
|
||||
|
||||
<li class=""><a href="module_datasource.html">datasource</a></li>
|
||||
|
||||
<li class=""><a href="module_datatable.html">datatable</a></li>
|
||||
|
||||
<li class=""><a href="module_dom.html">dom</a></li>
|
||||
|
||||
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
||||
|
||||
<li class=""><a href="module_editor.html">editor</a></li>
|
||||
|
||||
<li class=""><a href="module_element.html">element</a></li>
|
||||
|
||||
<li class=""><a href="module_event.html">event</a></li>
|
||||
|
||||
<li class=""><a href="module_get.html">get</a></li>
|
||||
|
||||
<li class=""><a href="module_history.html">history</a></li>
|
||||
|
||||
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
||||
|
||||
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
||||
|
||||
<li class="selected"><a href="module_json.html">json</a></li>
|
||||
|
||||
<li class=""><a href="module_layout.html">layout</a></li>
|
||||
|
||||
<li class=""><a href="module_logger.html">logger</a></li>
|
||||
|
||||
<li class=""><a href="module_menu.html">menu</a></li>
|
||||
|
||||
<li class=""><a href="module_paginator.html">paginator</a></li>
|
||||
|
||||
<li class=""><a href="module_profiler.html">profiler</a></li>
|
||||
|
||||
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
||||
|
||||
<li class=""><a href="module_resize.html">resize</a></li>
|
||||
|
||||
<li class=""><a href="module_selector.html">selector</a></li>
|
||||
|
||||
<li class=""><a href="module_slider.html">slider</a></li>
|
||||
|
||||
<li class=""><a href="module_tabview.html">tabview</a></li>
|
||||
|
||||
<li class=""><a href="module_treeview.html">treeview</a></li>
|
||||
|
||||
<li class=""><a href="module_uploader.html">uploader</a></li>
|
||||
|
||||
<li class=""><a href="module_yahoo.html">yahoo</a></li>
|
||||
|
||||
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
||||
|
||||
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class="selected"><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="classList" class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="JSON.html">JSON</a></li>
|
||||
<li class=""><a href="YAHOO.lang.JSON.html" title="YAHOO.lang.JSON">YAHOO.lang.JSON</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class="selected"><a href="JSON.js.html">JSON.js</a></li>
|
||||
<li class="selected"><a href="JSON.js.html" title="JSON.js">JSON.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -536,8 +663,11 @@
|
|||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2008 Yahoo! Inc. All rights reserved.
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [{"access": "private", "host": "YAHOO.lang.JSON", "name": "_BRACKETS", "url": "YAHOO.lang.JSON.html#property__BRACKETS", "type": "property"}, {"access": "private", "host": "YAHOO.lang.JSON", "name": "_CHARS", "url": "YAHOO.lang.JSON.html#property__CHARS", "type": "property"}, {"access": "", "host": "YAHOO.lang.JSON", "name": "dateToString", "url": "YAHOO.lang.JSON.html#method_dateToString", "type": "method"}, {"access": "private", "host": "YAHOO.lang.JSON", "name": "_ESCAPES", "url": "YAHOO.lang.JSON.html#property__ESCAPES", "type": "property"}, {"access": "", "host": "YAHOO.lang.JSON", "name": "isSafe", "url": "YAHOO.lang.JSON.html#method_isSafe", "type": "method"}, {"access": "", "host": "YAHOO.lang.JSON", "name": "isValid", "url": "YAHOO.lang.JSON.html#method_isValid", "type": "method"}, {"access": "", "host": "YAHOO.lang.JSON", "name": "parse", "url": "YAHOO.lang.JSON.html#method_parse", "type": "method"}, {"access": "private", "host": "YAHOO.lang.JSON", "name": "_prepare", "url": "YAHOO.lang.JSON.html#method__prepare", "type": "method"}, {"access": "private", "host": "YAHOO.lang.JSON", "name": "_revive", "url": "YAHOO.lang.JSON.html#method__revive", "type": "method"}, {"access": "private", "host": "YAHOO.lang.JSON", "name": "_SPECIAL_CHARS", "url": "YAHOO.lang.JSON.html#property__SPECIAL_CHARS", "type": "property"}, {"access": "", "host": "YAHOO.lang.JSON", "name": "stringify", "url": "YAHOO.lang.JSON.html#method_stringify", "type": "method"}, {"access": "", "host": "YAHOO.lang.JSON", "name": "stringToDate", "url": "YAHOO.lang.JSON.html#method_stringToDate", "type": "method"}, {"access": "private", "host": "YAHOO.lang.JSON", "name": "_UNICODE_EXCEPTIONS", "url": "YAHOO.lang.JSON.html#property__UNICODE_EXCEPTIONS", "type": "property"}, {"access": "private", "host": "YAHOO.lang.JSON", "name": "_UNSAFE", "url": "YAHOO.lang.JSON.html#property__UNSAFE", "type": "property"}, {"access": "", "host": "YAHOO.lang.JSON", "name": "useNativeParse", "url": "YAHOO.lang.JSON.html#property_useNativeParse", "type": "property"}, {"access": "", "host": "YAHOO.lang.JSON", "name": "useNativeStringify", "url": "YAHOO.lang.JSON.html#property_useNativeStringify", "type": "property"}, {"access": "private", "host": "YAHOO.lang.JSON", "name": "_VALUES", "url": "YAHOO.lang.JSON.html#property__VALUES", "type": "property"}];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1,8 +1,12 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: yahoo Lang.js (YUI Library)</title>
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
|
@ -10,34 +14,40 @@
|
|||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
|
||||
<div id="hd">
|
||||
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
||||
<h3>YAHOO Global <span class="subtitle">2.6.0</span></h3>
|
||||
<p>
|
||||
<a href="./index.html">Yahoo! UI Library</a>
|
||||
> <a href="./module_yahoo.html">yahoo</a>
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>YAHOO Global <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_yahoo.html" title="yahoo">yahoo</a>
|
||||
|
||||
> Lang.js (source view)
|
||||
</p>
|
||||
|
||||
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form name="yui-classopts-form">
|
||||
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> <label for="showprivate">Show Private</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div id="srcout">
|
||||
<style>
|
||||
#doc3 #classopts { display:none; }
|
||||
#doc3 .classopts { display:none; }
|
||||
</style>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<span class="c"> * Provides the language utilites and extensions used by the library</span>
|
||||
<span class="c"> * @class YAHOO.lang</span>
|
||||
<span class="c"> */</span>
|
||||
|
|
@ -45,29 +55,28 @@
|
|||
|
||||
<span class="o">(</span><span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
||||
|
||||
|
||||
<span class="k">var</span> <span class="nx">L</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">,</span>
|
||||
|
||||
<span class="nx">OP</span> <span class="o">=</span> <span class="nb">Object</span><span class="o">.</span><span class="nx">prototype</span><span class="o">,</span>
|
||||
<span class="nx">ARRAY_TOSTRING</span> <span class="o">=</span> <span class="s1">'[object Array]'</span><span class="o">,</span>
|
||||
<span class="nx">FUNCTION_TOSTRING</span> <span class="o">=</span> <span class="s1">'[object Function]'</span><span class="o">,</span>
|
||||
<span class="nx">OBJECT_TOSTRING</span> <span class="o">=</span> <span class="s1">'[object Object]'</span><span class="o">,</span>
|
||||
<span class="nx">NOTHING</span> <span class="o">=</span> <span class="o">[],</span>
|
||||
|
||||
<span class="c">// ADD = ["toString", "valueOf", "hasOwnProperty"],</span>
|
||||
<span class="c"></span> <span class="nx">ADD</span> <span class="o">=</span> <span class="o">[</span><span class="s2">"toString"</span><span class="o">,</span> <span class="s2">"valueOf"</span><span class="o">],</span>
|
||||
|
||||
<span class="nx">OB</span> <span class="o">=</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines whether or not the provided object is an array.</span>
|
||||
<span class="c"> * Testing typeof/instanceof/constructor of arrays across frame </span>
|
||||
<span class="c"> * boundaries isn't possible in Safari unless you have a reference</span>
|
||||
<span class="c"> * to the other frame to test against its Array prototype. To</span>
|
||||
<span class="c"> * handle this case, we test well-known array properties instead.</span>
|
||||
<span class="c"> * properties.</span>
|
||||
<span class="c"> * Determines wheather or not the provided object is an array.</span>
|
||||
<span class="c"> * @method isArray</span>
|
||||
<span class="c"> * @param {any} o The object being testing</span>
|
||||
<span class="c"> * @return {boolean} the result</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">isArray</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">L</span><span class="o">.</span><span class="nx">isNumber</span><span class="o">(</span><span class="nx">o</span><span class="o">.</span><span class="nx">length</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">L</span><span class="o">.</span><span class="nx">isFunction</span><span class="o">(</span><span class="nx">o</span><span class="o">.</span><span class="nx">splice</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
|
||||
<span class="k">return</span> <span class="nx">OP</span><span class="o">.</span><span class="nx">toString</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">===</span> <span class="nx">ARRAY_TOSTRING</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
|
|
@ -81,13 +90,24 @@
|
|||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Determines whether or not the provided object is a function</span>
|
||||
<span class="c"> * Determines whether or not the provided object is a function.</span>
|
||||
<span class="c"> * Note: Internet Explorer thinks certain functions are objects:</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * var obj = document.createElement("object");</span>
|
||||
<span class="c"> * YAHOO.lang.isFunction(obj.getAttribute) // reports false in IE</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * var input = document.createElement("input"); // append to body</span>
|
||||
<span class="c"> * YAHOO.lang.isFunction(input.focus) // reports false in IE</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * You will have to implement additional tests if these functions</span>
|
||||
<span class="c"> * matter to you.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method isFunction</span>
|
||||
<span class="c"> * @param {any} o The object being testing</span>
|
||||
<span class="c"> * @return {boolean} the result</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">isFunction</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="k">typeof</span> <span class="nx">o</span> <span class="o">===</span> <span class="s1">'function'</span><span class="o">;</span>
|
||||
<span class="k">return</span> <span class="o">(</span><span class="k">typeof</span> <span class="nx">o</span> <span class="o">===</span> <span class="s1">'function'</span><span class="o">)</span> <span class="o">||</span> <span class="nx">OP</span><span class="o">.</span><span class="nx">toString</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">===</span> <span class="nx">FUNCTION_TOSTRING</span><span class="o">;</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
|
|
@ -153,9 +173,13 @@
|
|||
<span class="c"> * @private</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">_IEEnumFix</span><span class="o">:</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">ie</span><span class="o">)</span> <span class="o">?</span> <span class="k">function</span><span class="o">(</span><span class="nx">r</span><span class="o">,</span> <span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="nx">ADD</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span><span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">fname</span><span class="o">=</span><span class="nx">ADD</span><span class="o">[</span><span class="nx">i</span><span class="o">],</span><span class="nx">f</span><span class="o">=</span><span class="nx">s</span><span class="o">[</span><span class="nx">fname</span><span class="o">];</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">L</span><span class="o">.</span><span class="nx">isFunction</span><span class="o">(</span><span class="nx">f</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">f</span><span class="o">!=</span><span class="nb">Object</span><span class="o">.</span><span class="nx">prototype</span><span class="o">[</span><span class="nx">fname</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">i</span><span class="o">,</span> <span class="nx">fname</span><span class="o">,</span> <span class="nx">f</span><span class="o">;</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="nx">ADD</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span><span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="nx">fname</span> <span class="o">=</span> <span class="nx">ADD</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
||||
<span class="nx">f</span> <span class="o">=</span> <span class="nx">s</span><span class="o">[</span><span class="nx">fname</span><span class="o">];</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">L</span><span class="o">.</span><span class="nx">isFunction</span><span class="o">(</span><span class="nx">f</span><span class="o">)</span> <span class="o">&&</span> <span class="nx">f</span><span class="o">!=</span><span class="nx">OP</span><span class="o">[</span><span class="nx">fname</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">r</span><span class="o">[</span><span class="nx">fname</span><span class="o">]=</span><span class="nx">f</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
|
@ -180,17 +204,17 @@
|
|||
<span class="k">throw</span> <span class="k">new</span> <span class="nb">Error</span><span class="o">(</span><span class="s2">"extend failed, please check that "</span> <span class="o">+</span>
|
||||
<span class="s2">"all dependencies are included."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">var</span> <span class="nx">F</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{};</span>
|
||||
<span class="k">var</span> <span class="nx">F</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{},</span> <span class="nx">i</span><span class="o">;</span>
|
||||
<span class="nx">F</span><span class="o">.</span><span class="nx">prototype</span><span class="o">=</span><span class="nx">superc</span><span class="o">.</span><span class="nx">prototype</span><span class="o">;</span>
|
||||
<span class="nx">subc</span><span class="o">.</span><span class="nx">prototype</span><span class="o">=</span><span class="k">new</span> <span class="nx">F</span><span class="o">();</span>
|
||||
<span class="nx">subc</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">constructor</span><span class="o">=</span><span class="nx">subc</span><span class="o">;</span>
|
||||
<span class="nx">subc</span><span class="o">.</span><span class="nx">superclass</span><span class="o">=</span><span class="nx">superc</span><span class="o">.</span><span class="nx">prototype</span><span class="o">;</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">superc</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">constructor</span> <span class="o">==</span> <span class="nb">Object</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">constructor</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">superc</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">constructor</span> <span class="o">==</span> <span class="nx">OP</span><span class="o">.</span><span class="nx">constructor</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">superc</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">constructor</span><span class="o">=</span><span class="nx">superc</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">overrides</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span> <span class="k">in</span> <span class="nx">overrides</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span> <span class="k">in</span> <span class="nx">overrides</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">L</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="nx">overrides</span><span class="o">,</span> <span class="nx">i</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">subc</span><span class="o">.</span><span class="nx">prototype</span><span class="o">[</span><span class="nx">i</span><span class="o">]=</span><span class="nx">overrides</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
||||
<span class="o">}</span>
|
||||
|
|
@ -226,14 +250,14 @@
|
|||
<span class="k">if</span> <span class="o">(!</span><span class="nx">s</span><span class="o">||!</span><span class="nx">r</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">throw</span> <span class="k">new</span> <span class="nb">Error</span><span class="o">(</span><span class="s2">"Absorb failed, verify dependencies."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">var</span> <span class="nx">a</span><span class="o">=</span><span class="nx">arguments</span><span class="o">,</span> <span class="nx">i</span><span class="o">,</span> <span class="nx">p</span><span class="o">,</span> <span class="nx">override</span><span class="o">=</span><span class="nx">a</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">override</span> <span class="o">&&</span> <span class="nx">override</span><span class="o">!==</span><span class="kc">true</span><span class="o">)</span> <span class="o">{</span> <span class="c">// only absorb the specified properties</span>
|
||||
<span class="k">var</span> <span class="nx">a</span><span class="o">=</span><span class="nx">arguments</span><span class="o">,</span> <span class="nx">i</span><span class="o">,</span> <span class="nx">p</span><span class="o">,</span> <span class="nx">overrideList</span><span class="o">=</span><span class="nx">a</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">overrideList</span> <span class="o">&&</span> <span class="nx">overrideList</span><span class="o">!==</span><span class="kc">true</span><span class="o">)</span> <span class="o">{</span> <span class="c">// only absorb the specified properties</span>
|
||||
<span class="c"></span> <span class="k">for</span> <span class="o">(</span><span class="nx">i</span><span class="o">=</span><span class="m">2</span><span class="o">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">a</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">r</span><span class="o">[</span><span class="nx">a</span><span class="o">[</span><span class="nx">i</span><span class="o">]]</span> <span class="o">=</span> <span class="nx">s</span><span class="o">[</span><span class="nx">a</span><span class="o">[</span><span class="nx">i</span><span class="o">]];</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// take everything, overwriting only if the third parameter is true</span>
|
||||
<span class="c"></span> <span class="k">for</span> <span class="o">(</span><span class="nx">p</span> <span class="k">in</span> <span class="nx">s</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">override</span> <span class="o">||</span> <span class="o">!(</span><span class="nx">p</span> <span class="k">in</span> <span class="nx">r</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">overrideList</span> <span class="o">||</span> <span class="o">!(</span><span class="nx">p</span> <span class="k">in</span> <span class="nx">r</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">r</span><span class="o">[</span><span class="nx">p</span><span class="o">]</span> <span class="o">=</span> <span class="nx">s</span><span class="o">[</span><span class="nx">p</span><span class="o">];</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
|
@ -261,8 +285,8 @@
|
|||
<span class="k">throw</span> <span class="k">new</span> <span class="nb">Error</span><span class="o">(</span><span class="s2">"Augment failed, verify dependencies."</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="c">//var a=[].concat(arguments);</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">a</span><span class="o">=[</span><span class="nx">r</span><span class="o">.</span><span class="nx">prototype</span><span class="o">,</span><span class="nx">s</span><span class="o">.</span><span class="nx">prototype</span><span class="o">];</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">2</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="nx">arguments</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span><span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">a</span><span class="o">=[</span><span class="nx">r</span><span class="o">.</span><span class="nx">prototype</span><span class="o">,</span><span class="nx">s</span><span class="o">.</span><span class="nx">prototype</span><span class="o">],</span> <span class="nx">i</span><span class="o">;</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span><span class="o">=</span><span class="m">2</span><span class="o">;</span><span class="nx">i</span><span class="o"><</span><span class="nx">arguments</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span><span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">a</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">arguments</span><span class="o">[</span><span class="nx">i</span><span class="o">]);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="nx">L</span><span class="o">.</span><span class="nx">augmentObject</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">a</span><span class="o">);</span>
|
||||
|
|
@ -362,7 +386,8 @@
|
|||
<span class="c"> */</span>
|
||||
<span class="nx">substitute</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">s</span><span class="o">,</span> <span class="nx">o</span><span class="o">,</span> <span class="nx">f</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">i</span><span class="o">,</span> <span class="nx">j</span><span class="o">,</span> <span class="nx">k</span><span class="o">,</span> <span class="nx">key</span><span class="o">,</span> <span class="nx">v</span><span class="o">,</span> <span class="nx">meta</span><span class="o">,</span> <span class="nx">saved</span><span class="o">=[],</span> <span class="nx">token</span><span class="o">,</span>
|
||||
<span class="nx">DUMP</span><span class="o">=</span><span class="s1">'dump'</span><span class="o">,</span> <span class="nx">SPACE</span><span class="o">=</span><span class="s1">' '</span><span class="o">,</span> <span class="nx">LBRACE</span><span class="o">=</span><span class="s1">'{'</span><span class="o">,</span> <span class="nx">RBRACE</span><span class="o">=</span><span class="s1">'}'</span><span class="o">;</span>
|
||||
<span class="nx">DUMP</span><span class="o">=</span><span class="s1">'dump'</span><span class="o">,</span> <span class="nx">SPACE</span><span class="o">=</span><span class="s1">' '</span><span class="o">,</span> <span class="nx">LBRACE</span><span class="o">=</span><span class="s1">'{'</span><span class="o">,</span> <span class="nx">RBRACE</span><span class="o">=</span><span class="s1">'}'</span><span class="o">,</span>
|
||||
<span class="nx">dump</span><span class="o">,</span> <span class="nx">objstr</span><span class="o">;</span>
|
||||
|
||||
|
||||
<span class="k">for</span> <span class="o">(;;)</span> <span class="o">{</span>
|
||||
|
|
@ -400,17 +425,19 @@
|
|||
<span class="nx">meta</span> <span class="o">=</span> <span class="nx">meta</span> <span class="o">||</span> <span class="s2">""</span><span class="o">;</span>
|
||||
|
||||
<span class="c">// look for the keyword 'dump', if found force obj dump</span>
|
||||
<span class="c"></span> <span class="k">var</span> <span class="nx">dump</span> <span class="o">=</span> <span class="nx">meta</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="nx">DUMP</span><span class="o">);</span>
|
||||
<span class="c"></span> <span class="nx">dump</span> <span class="o">=</span> <span class="nx">meta</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="nx">DUMP</span><span class="o">);</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">dump</span> <span class="o">></span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">meta</span> <span class="o">=</span> <span class="nx">meta</span><span class="o">.</span><span class="nx">substring</span><span class="o">(</span><span class="m">4</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">objstr</span> <span class="o">=</span> <span class="nx">v</span><span class="o">.</span><span class="nx">toString</span><span class="o">();</span>
|
||||
|
||||
<span class="c">// use the toString if it is not the Object toString </span>
|
||||
<span class="c"></span> <span class="c">// and the 'dump' meta info was not found</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">v</span><span class="o">.</span><span class="nx">toString</span><span class="o">===</span><span class="nb">Object</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">toString</span><span class="o">||</span><span class="nx">dump</span><span class="o">>-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">objstr</span> <span class="o">===</span> <span class="nx">OBJECT_TOSTRING</span> <span class="o">||</span> <span class="nx">dump</span> <span class="o">></span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">v</span> <span class="o">=</span> <span class="nx">L</span><span class="o">.</span><span class="nx">dump</span><span class="o">(</span><span class="nx">v</span><span class="o">,</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">meta</span><span class="o">,</span> <span class="m">10</span><span class="o">));</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">v</span> <span class="o">=</span> <span class="nx">v</span><span class="o">.</span><span class="nx">toString</span><span class="o">();</span>
|
||||
<span class="nx">v</span> <span class="o">=</span> <span class="nx">objstr</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(!</span><span class="nx">L</span><span class="o">.</span><span class="nx">isString</span><span class="o">(</span><span class="nx">v</span><span class="o">)</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">L</span><span class="o">.</span><span class="nx">isNumber</span><span class="o">(</span><span class="nx">v</span><span class="o">))</span> <span class="o">{</span>
|
||||
|
|
@ -461,8 +488,8 @@
|
|||
<span class="c"> * @return the new merged object</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">merge</span><span class="o">:</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">o</span><span class="o">={},</span> <span class="nx">a</span><span class="o">=</span><span class="nx">arguments</span><span class="o">;</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">,</span> <span class="nx">l</span><span class="o">=</span><span class="nx">a</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">l</span><span class="o">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">var</span> <span class="nx">o</span><span class="o">={},</span> <span class="nx">a</span><span class="o">=</span><span class="nx">arguments</span><span class="o">,</span> <span class="nx">l</span><span class="o">=</span><span class="nx">a</span><span class="o">.</span><span class="nx">length</span><span class="o">,</span> <span class="nx">i</span><span class="o">;</span>
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span><span class="o">=</span><span class="m">0</span><span class="o">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">l</span><span class="o">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">L</span><span class="o">.</span><span class="nx">augmentObject</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span> <span class="nx">a</span><span class="o">[</span><span class="nx">i</span><span class="o">],</span> <span class="kc">true</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">return</span> <span class="nx">o</span><span class="o">;</span>
|
||||
|
|
@ -502,12 +529,12 @@
|
|||
<span class="k">throw</span> <span class="k">new</span> <span class="nx">TypeError</span><span class="o">(</span><span class="s2">"method undefined"</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(!</span><span class="nx">L</span><span class="o">.</span><span class="nx">isArray</span><span class="o">(</span><span class="nx">d</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">d</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">L</span><span class="o">.</span><span class="nx">isArray</span><span class="o">(</span><span class="nx">d</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">d</span> <span class="o">=</span> <span class="o">[</span><span class="nx">data</span><span class="o">];</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="nx">f</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
||||
<span class="nx">m</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span> <span class="nx">d</span><span class="o">);</span>
|
||||
<span class="nx">m</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span> <span class="nx">d</span> <span class="o">||</span> <span class="nx">NOTHING</span><span class="o">);</span>
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="nx">r</span> <span class="o">=</span> <span class="o">(</span><span class="nx">periodic</span><span class="o">)</span> <span class="o">?</span> <span class="nx">setInterval</span><span class="o">(</span><span class="nx">f</span><span class="o">,</span> <span class="nx">when</span><span class="o">)</span> <span class="o">:</span> <span class="nx">setTimeout</span><span class="o">(</span><span class="nx">f</span><span class="o">,</span> <span class="nx">when</span><span class="o">);</span>
|
||||
|
|
@ -561,7 +588,7 @@
|
|||
<span class="c"> * @param prop {string} the name of the property to test</span>
|
||||
<span class="c"> * @return {boolean} the result</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">L</span><span class="o">.</span><span class="nx">hasOwnProperty</span> <span class="o">=</span> <span class="o">(</span><span class="nb">Object</span><span class="o">.</span><span class="nx">prototype</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">)</span> <span class="o">?</span>
|
||||
<span class="nx">L</span><span class="o">.</span><span class="nx">hasOwnProperty</span> <span class="o">=</span> <span class="o">(</span><span class="nx">OP</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">)</span> <span class="o">?</span>
|
||||
<span class="k">function</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span> <span class="nx">prop</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">return</span> <span class="nx">o</span> <span class="o">&&</span> <span class="nx">o</span><span class="o">.</span><span class="nx">hasOwnProperty</span><span class="o">(</span><span class="nx">prop</span><span class="o">);</span>
|
||||
<span class="o">}</span> <span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span> <span class="nx">prop</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
|
@ -624,109 +651,84 @@
|
|||
|
||||
<span class="o">})();</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div class="module">
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
|
||||
<li class=""><a href="module_animation.html">animation</a></li>
|
||||
|
||||
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
||||
|
||||
<li class=""><a href="module_button.html">button</a></li>
|
||||
|
||||
<li class=""><a href="module_calendar.html">calendar</a></li>
|
||||
|
||||
<li class=""><a href="module_carousel.html">carousel</a></li>
|
||||
|
||||
<li class=""><a href="module_charts.html">charts</a></li>
|
||||
|
||||
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
||||
|
||||
<li class=""><a href="module_connection.html">connection</a></li>
|
||||
|
||||
<li class=""><a href="module_container.html">container</a></li>
|
||||
|
||||
<li class=""><a href="module_cookie.html">cookie</a></li>
|
||||
|
||||
<li class=""><a href="module_datasource.html">datasource</a></li>
|
||||
|
||||
<li class=""><a href="module_datatable.html">datatable</a></li>
|
||||
|
||||
<li class=""><a href="module_dom.html">dom</a></li>
|
||||
|
||||
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
||||
|
||||
<li class=""><a href="module_editor.html">editor</a></li>
|
||||
|
||||
<li class=""><a href="module_element.html">element</a></li>
|
||||
|
||||
<li class=""><a href="module_event.html">event</a></li>
|
||||
|
||||
<li class=""><a href="module_get.html">get</a></li>
|
||||
|
||||
<li class=""><a href="module_history.html">history</a></li>
|
||||
|
||||
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
||||
|
||||
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
||||
|
||||
<li class=""><a href="module_json.html">json</a></li>
|
||||
|
||||
<li class=""><a href="module_layout.html">layout</a></li>
|
||||
|
||||
<li class=""><a href="module_logger.html">logger</a></li>
|
||||
|
||||
<li class=""><a href="module_menu.html">menu</a></li>
|
||||
|
||||
<li class=""><a href="module_paginator.html">paginator</a></li>
|
||||
|
||||
<li class=""><a href="module_profiler.html">profiler</a></li>
|
||||
|
||||
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
||||
|
||||
<li class=""><a href="module_resize.html">resize</a></li>
|
||||
|
||||
<li class=""><a href="module_selector.html">selector</a></li>
|
||||
|
||||
<li class=""><a href="module_slider.html">slider</a></li>
|
||||
|
||||
<li class=""><a href="module_tabview.html">tabview</a></li>
|
||||
|
||||
<li class=""><a href="module_treeview.html">treeview</a></li>
|
||||
|
||||
<li class=""><a href="module_uploader.html">uploader</a></li>
|
||||
|
||||
<li class="selected"><a href="module_yahoo.html">yahoo</a></li>
|
||||
|
||||
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
||||
|
||||
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class="selected"><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="classList" class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="YAHOO.html">YAHOO</a></li>
|
||||
<li class=""><a href="YAHOO.env.html">YAHOO.env</a></li>
|
||||
<li class=""><a href="YAHOO.env.ua.html">YAHOO.env.ua</a></li>
|
||||
<li class=""><a href="YAHOO.lang.html">YAHOO.lang</a></li>
|
||||
<li class=""><a href="YAHOO_config.html">YAHOO_config</a></li>
|
||||
<li class=""><a href="YAHOO.html" title="YAHOO">YAHOO</a></li>
|
||||
<li class=""><a href="YAHOO.env.html" title="YAHOO.env">YAHOO.env</a></li>
|
||||
<li class=""><a href="YAHOO.env.ua.html" title="YAHOO.env.ua">YAHOO.env.ua</a></li>
|
||||
<li class=""><a href="YAHOO.lang.html" title="YAHOO.lang">YAHOO.lang</a></li>
|
||||
<li class=""><a href="YAHOO_config.html" title="YAHOO_config">YAHOO_config</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="Env.js.html">Env.js</a></li>
|
||||
<li class="selected"><a href="Lang.js.html">Lang.js</a></li>
|
||||
<li class=""><a href="YAHOO.js.html">YAHOO.js</a></li>
|
||||
<li class=""><a href="Env.js.html" title="Env.js">Env.js</a></li>
|
||||
<li class="selected"><a href="Lang.js.html" title="Lang.js">Lang.js</a></li>
|
||||
<li class=""><a href="YAHOO.js.html" title="YAHOO.js">YAHOO.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -739,8 +741,11 @@
|
|||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2008 Yahoo! Inc. All rights reserved.
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [{"access": "", "host": "YAHOO.env.ua", "name": "air", "url": "YAHOO.env.ua.html#property_air", "type": "property"}, {"access": "", "host": "YAHOO.lang", "name": "augment", "url": "YAHOO.lang.html#method_augment", "type": "method"}, {"access": "", "host": "YAHOO", "name": "augment", "url": "YAHOO.html#method_augment", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "augmentObject", "url": "YAHOO.lang.html#method_augmentObject", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "augmentProto", "url": "YAHOO.lang.html#method_augmentProto", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "caja", "url": "YAHOO.env.ua.html#property_caja", "type": "property"}, {"access": "", "host": "YAHOO.lang", "name": "dump", "url": "YAHOO.lang.html#method_dump", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "extend", "url": "YAHOO.lang.html#method_extend", "type": "method"}, {"access": "", "host": "YAHOO", "name": "extend", "url": "YAHOO.html#method_extend", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "gecko", "url": "YAHOO.env.ua.html#property_gecko", "type": "property"}, {"access": "", "host": "YAHOO.env", "name": "getVersion", "url": "YAHOO.env.html#method_getVersion", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "hasOwnProperty", "url": "YAHOO.lang.html#method_hasOwnProperty", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "ie", "url": "YAHOO.env.ua.html#property_ie", "type": "property"}, {"access": "private", "host": "YAHOO.lang", "name": "_IEEnumFix", "url": "YAHOO.lang.html#property__IEEnumFix", "type": "property"}, {"access": "", "host": "YAHOO_config", "name": "injecting", "url": "YAHOO_config.html#property_injecting", "type": "property"}, {"access": "", "host": "YAHOO.lang", "name": "isArray", "url": "YAHOO.lang.html#method_isArray", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isBoolean", "url": "YAHOO.lang.html#method_isBoolean", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isFunction", "url": "YAHOO.lang.html#method_isFunction", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isNull", "url": "YAHOO.lang.html#method_isNull", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isNumber", "url": "YAHOO.lang.html#method_isNumber", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isObject", "url": "YAHOO.lang.html#method_isObject", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isString", "url": "YAHOO.lang.html#method_isString", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isUndefined", "url": "YAHOO.lang.html#method_isUndefined", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "isValue", "url": "YAHOO.lang.html#method_isValue", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "later", "url": "YAHOO.lang.html#method_later", "type": "method"}, {"access": "", "host": "YAHOO_config", "name": "listener", "url": "YAHOO_config.html#property_listener", "type": "property"}, {"access": "", "host": "YAHOO.env", "name": "listeners", "url": "YAHOO.env.html#property_listeners", "type": "property"}, {"access": "", "host": "YAHOO_config", "name": "load", "url": "YAHOO_config.html#property_load", "type": "property"}, {"access": "", "host": "YAHOO_config", "name": "locale", "url": "YAHOO_config.html#property_locale", "type": "property"}, {"access": "", "host": "YAHOO", "name": "log", "url": "YAHOO.html#method_log", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "merge", "url": "YAHOO.lang.html#method_merge", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "mobile", "url": "YAHOO.env.ua.html#property_mobile", "type": "property"}, {"access": "", "host": "YAHOO.env", "name": "modules", "url": "YAHOO.env.html#property_modules", "type": "property"}, {"access": "", "host": "YAHOO", "name": "namespace", "url": "YAHOO.html#method_namespace", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "opera", "url": "YAHOO.env.ua.html#property_opera", "type": "property"}, {"access": "", "host": "YAHOO.env.ua", "name": "os", "url": "YAHOO.env.ua.html#property_os", "type": "property"}, {"access": "", "host": "YAHOO", "name": "register", "url": "YAHOO.html#method_register", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "secure", "url": "YAHOO.env.ua.html#property_secure", "type": "property"}, {"access": "", "host": "YAHOO.lang", "name": "substitute", "url": "YAHOO.lang.html#method_substitute", "type": "method"}, {"access": "", "host": "YAHOO.lang", "name": "trim", "url": "YAHOO.lang.html#method_trim", "type": "method"}, {"access": "", "host": "YAHOO.env.ua", "name": "webkit", "url": "YAHOO.env.ua.html#property_webkit", "type": "property"}];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
298
www/extras/yui/docs/LogMsg.html
Normal file
298
www/extras/yui/docs/LogMsg.html
Normal file
|
|
@ -0,0 +1,298 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: logger LogMsg (YUI Library)</title>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
||||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
<div id="hd">
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>Logger Widget <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_logger.html" title="logger">logger</a>
|
||||
> LogMsg
|
||||
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<h2>
|
||||
|
||||
|
||||
|
||||
|
||||
Class <b property="yui:name">LogMsg</b>
|
||||
<span class="extends">
|
||||
</span>
|
||||
|
||||
</h2>
|
||||
<!-- class tree goes here -->
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="summary description" property="yui:description">
|
||||
The LogMsg class defines a single log message.
|
||||
</div>
|
||||
|
||||
<div class="section constructor details" rel="yui:constructor" resource="#constructor">
|
||||
<h3 id="constructor">Constructor</h3>
|
||||
<div class="content">
|
||||
<div class="detail">
|
||||
<strong property="yui:name">LogMsg</strong>
|
||||
<code>
|
||||
(
|
||||
|
||||
|
||||
|
||||
oConfigs
|
||||
)
|
||||
</code>
|
||||
<div class="description">
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">oConfigs</span>
|
||||
<<span property="yui:type">Object</span>>
|
||||
</code>
|
||||
<span property="yui:description"> Object literal of configuration params.</span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div rel="yui:properties" resource="#properties">
|
||||
<div class="section field details">
|
||||
<h3 id="properties">Properties</h3>
|
||||
<div class="content">
|
||||
<div class="" rel="yui:property" resource="#property_category">
|
||||
<h4><a name="property_category" property="yui:name">category</a>
|
||||
- <code><span property="yui:type">String</span></code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description" property="yui:description">
|
||||
Log category.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="" rel="yui:property" resource="#property_msg">
|
||||
<h4><a name="property_msg" property="yui:name">msg</a>
|
||||
- <code><span property="yui:type">String</span></code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description" property="yui:description">
|
||||
Log message.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="" rel="yui:property" resource="#property_source">
|
||||
<h4><a name="property_source" property="yui:name">source</a>
|
||||
- <code><span property="yui:type">String</span></code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description" property="yui:description">
|
||||
Log source. The first word passed in as the source argument.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="" rel="yui:property" resource="#property_sourceDetail">
|
||||
<h4><a name="property_sourceDetail" property="yui:name">sourceDetail</a>
|
||||
- <code><span property="yui:type">String</span></code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description" property="yui:description">
|
||||
Log source detail. The remainder of the string passed in as the source argument, not
|
||||
including the first word (if any).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
<div class="" rel="yui:property" resource="#property_time">
|
||||
<h4><a name="property_time" property="yui:name">time</a>
|
||||
- <code><span property="yui:type">Date</span></code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description" property="yui:description">
|
||||
Log timestamp.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<hr />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div rel="yui:methods" resource="#methods">
|
||||
|
||||
</div>
|
||||
|
||||
<div rel="yui:events" resource="#events">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div rel="yui:attributes" resource="#configattributes">
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class="selected"><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="classList" class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class="selected"><a href="LogMsg.html" title="LogMsg">LogMsg</a></li>
|
||||
<li class=""><a href="LogReader.html" title="LogReader">LogReader</a></li>
|
||||
<li class=""><a href="LogWriter.html" title="LogWriter">LogWriter</a></li>
|
||||
<li class=""><a href="YAHOO.widget.Logger.html" title="YAHOO.widget.Logger">YAHOO.widget.Logger</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="Logger.js.html" title="Logger.js">Logger.js</a></li>
|
||||
<li class=""><a href="LogMsg.js.html" title="LogMsg.js">LogMsg.js</a></li>
|
||||
<li class=""><a href="LogReader.js.html" title="LogReader.js">LogReader.js</a></li>
|
||||
<li class=""><a href="LogWriter.js.html" title="LogWriter.js">LogWriter.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="propertyList" class="module">
|
||||
<h4>Properties</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="#property_category" title="category">category</a></li>
|
||||
<li class=""><a href="#property_msg" title="msg">msg</a></li>
|
||||
<li class=""><a href="#property_source" title="source">source</a></li>
|
||||
<li class=""><a href="#property_sourceDetail" title="sourceDetail">sourceDetail</a></li>
|
||||
<li class=""><a href="#property_time" title="time">time</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [{"access": "", "host": "LogMsg", "name": "category", "url": "LogMsg.html#property_category", "type": "property"}, {"access": "", "host": "LogMsg", "name": "msg", "url": "LogMsg.html#property_msg", "type": "property"}, {"access": "", "host": "LogMsg", "name": "source", "url": "LogMsg.html#property_source", "type": "property"}, {"access": "", "host": "LogMsg", "name": "sourceDetail", "url": "LogMsg.html#property_sourceDetail", "type": "property"}, {"access": "", "host": "LogMsg", "name": "time", "url": "LogMsg.html#property_time", "type": "property"}];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,8 +1,12 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<title>API: logger YAHOO.widget.LogWriter (YUI Library)</title>
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css">
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: logger LogWriter (YUI Library)</title>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
|
@ -10,27 +14,33 @@
|
|||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
|
||||
<div id="hd">
|
||||
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
||||
<h3>Logger Widget <span class="subtitle">2.6.0</span></h3>
|
||||
<p>
|
||||
<a href="./index.html">Yahoo! UI Library</a>
|
||||
> <a href="./module_logger.html">logger</a>
|
||||
> YAHOO.widget.LogWriter
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>Logger Widget <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_logger.html" title="logger">logger</a>
|
||||
> LogWriter
|
||||
|
||||
</p>
|
||||
|
||||
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form name="yui-classopts-form">
|
||||
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> <label for="showprivate">Show Private</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
|
||||
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<h2>
|
||||
|
|
@ -38,30 +48,26 @@
|
|||
|
||||
|
||||
|
||||
Class <b>YAHOO.widget.LogWriter</b>
|
||||
Class <b property="yui:name">LogWriter</b>
|
||||
<span class="extends">
|
||||
</span>
|
||||
|
||||
<span class="extends">
|
||||
</span>
|
||||
|
||||
</code>
|
||||
</h2>
|
||||
<!-- class tree goes here -->
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="summary description">
|
||||
<div class="summary description" property="yui:description">
|
||||
The LogWriter class provides a mechanism to log messages through
|
||||
YAHOO.widget.Logger from a named source.
|
||||
</div>
|
||||
|
||||
<div class="section constructor details">
|
||||
<div class="section constructor details" rel="yui:constructor" resource="#constructor">
|
||||
<h3 id="constructor">Constructor</h3>
|
||||
<div class="content">
|
||||
<div class="detail">
|
||||
<strong>YAHOO.widget.LogWriter</strong>
|
||||
<strong property="yui:name">LogWriter</strong>
|
||||
<code>
|
||||
(
|
||||
|
||||
|
|
@ -71,13 +77,13 @@ YAHOO.widget.Logger from a named source.
|
|||
)
|
||||
</code>
|
||||
<div class="description">
|
||||
<dl>
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>sSource
|
||||
<String>
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">sSource</span>
|
||||
<<span property="yui:type">String</span>>
|
||||
</code>
|
||||
Source of LogWriter instance.
|
||||
<span property="yui:description"> Source of LogWriter instance.</span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
|
@ -86,16 +92,17 @@ YAHOO.widget.Logger from a named source.
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div rel="yui:properties" resource="#properties">
|
||||
<div class="section field details">
|
||||
<h3 id="properties">Properties</h3>
|
||||
<div class="content">
|
||||
<div class="private">
|
||||
<h4><a name="property__source">_source</a>
|
||||
<code>- private String</code>
|
||||
<div class="private" rel="yui:property" resource="#property__source">
|
||||
<h4><a name="property__source" property="yui:name">_source</a>
|
||||
- <code>private <span property="yui:type">String</span></code>
|
||||
</h4>
|
||||
<div class="detail">
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Source of the LogWriter instance.
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -105,30 +112,30 @@ YAHOO.widget.Logger from a named source.
|
|||
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div rel="yui:methods" resource="#methods">
|
||||
<div class="section method details">
|
||||
<h3 id="methods">Methods</h3>
|
||||
<div class="content">
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_getSource">
|
||||
<h4>
|
||||
<a name="method_getSource">getSource</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
String
|
||||
<strong>getSource</strong>
|
||||
<strong property="yui:name">getSource</strong>
|
||||
(
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Public accessor to get the source name.
|
||||
</div>
|
||||
|
||||
|
|
@ -137,10 +144,10 @@ YAHOO.widget.Logger from a named source.
|
|||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
String
|
||||
</code></dt>
|
||||
<dd>The LogWriter source.</dd>
|
||||
<dd property="yui:returnInfo">The LogWriter source.</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -151,16 +158,16 @@ YAHOO.widget.Logger from a named source.
|
|||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_log">
|
||||
<h4>
|
||||
<a name="method_log">log</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
void
|
||||
<strong>log</strong>
|
||||
<strong property="yui:name">log</strong>
|
||||
(
|
||||
|
||||
|
||||
|
|
@ -174,30 +181,34 @@ YAHOO.widget.Logger from a named source.
|
|||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Logs a message attached to the source of the LogWriter.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>sMsg <String></code>
|
||||
The log message.
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">sMsg</span>
|
||||
<<span property="yui:type">String</span>>
|
||||
</code>
|
||||
<span property="yui:description"> The log message.</span>
|
||||
</dd>
|
||||
<dd>
|
||||
<code>sCategory <String></code>
|
||||
Category name.
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">sCategory</span>
|
||||
<<span property="yui:type">String</span>>
|
||||
</code>
|
||||
<span property="yui:description"> Category name.</span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
void
|
||||
</code></dt>
|
||||
<dd></dd>
|
||||
<dd property="yui:returnInfo"></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -208,16 +219,16 @@ YAHOO.widget.Logger from a named source.
|
|||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_setSource">
|
||||
<h4>
|
||||
<a name="method_setSource">setSource</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
void
|
||||
<strong>setSource</strong>
|
||||
<strong property="yui:name">setSource</strong>
|
||||
(
|
||||
|
||||
|
||||
|
|
@ -227,26 +238,28 @@ YAHOO.widget.Logger from a named source.
|
|||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Public accessor to set the source name.
|
||||
</div>
|
||||
|
||||
<div class="description">
|
||||
|
||||
<dl>
|
||||
<dl rel="yui:parameters">
|
||||
<dt>Parameters:</dt>
|
||||
<dd>
|
||||
<code>sSource <String></code>
|
||||
Source of LogWriter instance.
|
||||
<dd rel="yui:parameter">
|
||||
<code><span property="yui:name">sSource</span>
|
||||
<<span property="yui:type">String</span>>
|
||||
</code>
|
||||
<span property="yui:description"> Source of LogWriter instance.</span>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
void
|
||||
</code></dt>
|
||||
<dd></dd>
|
||||
<dd property="yui:returnInfo"></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -257,21 +270,21 @@ YAHOO.widget.Logger from a named source.
|
|||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
<div class="">
|
||||
<div class="" rel="yui:method" resource="#method_toString">
|
||||
<h4>
|
||||
<a name="method_toString">toString</a></h4>
|
||||
<div class="detail">
|
||||
<div class="detail" >
|
||||
<code>
|
||||
|
||||
|
||||
|
||||
String
|
||||
<strong>toString</strong>
|
||||
<strong property="yui:name">toString</strong>
|
||||
(
|
||||
)
|
||||
</code>
|
||||
|
||||
<div class="description">
|
||||
<div class="description" property="yui:description">
|
||||
Public accessor to the unique name of the LogWriter instance.
|
||||
</div>
|
||||
|
||||
|
|
@ -280,10 +293,10 @@ YAHOO.widget.Logger from a named source.
|
|||
|
||||
<dl>
|
||||
<dt>Returns:
|
||||
<code>
|
||||
<code property="yui:return">
|
||||
String
|
||||
</code></dt>
|
||||
<dd>Unique name of the LogWriter instance.</dd>
|
||||
<dd property="yui:returnInfo">Unique name of the LogWriter instance.</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
|
@ -297,141 +310,110 @@ YAHOO.widget.Logger from a named source.
|
|||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div rel="yui:events" resource="#events">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div rel="yui:attributes" resource="#configattributes">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div class="module">
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
|
||||
<li class=""><a href="module_animation.html">animation</a></li>
|
||||
|
||||
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
||||
|
||||
<li class=""><a href="module_button.html">button</a></li>
|
||||
|
||||
<li class=""><a href="module_calendar.html">calendar</a></li>
|
||||
|
||||
<li class=""><a href="module_carousel.html">carousel</a></li>
|
||||
|
||||
<li class=""><a href="module_charts.html">charts</a></li>
|
||||
|
||||
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
||||
|
||||
<li class=""><a href="module_connection.html">connection</a></li>
|
||||
|
||||
<li class=""><a href="module_container.html">container</a></li>
|
||||
|
||||
<li class=""><a href="module_cookie.html">cookie</a></li>
|
||||
|
||||
<li class=""><a href="module_datasource.html">datasource</a></li>
|
||||
|
||||
<li class=""><a href="module_datatable.html">datatable</a></li>
|
||||
|
||||
<li class=""><a href="module_dom.html">dom</a></li>
|
||||
|
||||
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
||||
|
||||
<li class=""><a href="module_editor.html">editor</a></li>
|
||||
|
||||
<li class=""><a href="module_element.html">element</a></li>
|
||||
|
||||
<li class=""><a href="module_event.html">event</a></li>
|
||||
|
||||
<li class=""><a href="module_get.html">get</a></li>
|
||||
|
||||
<li class=""><a href="module_history.html">history</a></li>
|
||||
|
||||
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
||||
|
||||
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
||||
|
||||
<li class=""><a href="module_json.html">json</a></li>
|
||||
|
||||
<li class=""><a href="module_layout.html">layout</a></li>
|
||||
|
||||
<li class="selected"><a href="module_logger.html">logger</a></li>
|
||||
|
||||
<li class=""><a href="module_menu.html">menu</a></li>
|
||||
|
||||
<li class=""><a href="module_paginator.html">paginator</a></li>
|
||||
|
||||
<li class=""><a href="module_profiler.html">profiler</a></li>
|
||||
|
||||
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
||||
|
||||
<li class=""><a href="module_resize.html">resize</a></li>
|
||||
|
||||
<li class=""><a href="module_selector.html">selector</a></li>
|
||||
|
||||
<li class=""><a href="module_slider.html">slider</a></li>
|
||||
|
||||
<li class=""><a href="module_tabview.html">tabview</a></li>
|
||||
|
||||
<li class=""><a href="module_treeview.html">treeview</a></li>
|
||||
|
||||
<li class=""><a href="module_uploader.html">uploader</a></li>
|
||||
|
||||
<li class=""><a href="module_yahoo.html">yahoo</a></li>
|
||||
|
||||
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
||||
|
||||
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class="selected"><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="classList" class="module">
|
||||
<h4>Classes</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="YAHOO.widget.Logger.html">YAHOO.widget.Logger</a></li>
|
||||
<li class=""><a href="YAHOO.widget.LogMsg.html">YAHOO.widget.LogMsg</a></li>
|
||||
<li class=""><a href="YAHOO.widget.LogReader.html">YAHOO.widget.LogReader</a></li>
|
||||
<li class="selected"><a href="YAHOO.widget.LogWriter.html">YAHOO.widget.LogWriter</a></li>
|
||||
<li class=""><a href="LogMsg.html" title="LogMsg">LogMsg</a></li>
|
||||
<li class=""><a href="LogReader.html" title="LogReader">LogReader</a></li>
|
||||
<li class="selected"><a href="LogWriter.html" title="LogWriter">LogWriter</a></li>
|
||||
<li class=""><a href="YAHOO.widget.Logger.html" title="YAHOO.widget.Logger">YAHOO.widget.Logger</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="Logger.js.html">Logger.js</a></li>
|
||||
<li class=""><a href="LogMsg.js.html">LogMsg.js</a></li>
|
||||
<li class=""><a href="LogReader.js.html">LogReader.js</a></li>
|
||||
<li class=""><a href="LogWriter.js.html">LogWriter.js</a></li>
|
||||
<li class=""><a href="Logger.js.html" title="Logger.js">Logger.js</a></li>
|
||||
<li class=""><a href="LogMsg.js.html" title="LogMsg.js">LogMsg.js</a></li>
|
||||
<li class=""><a href="LogReader.js.html" title="LogReader.js">LogReader.js</a></li>
|
||||
<li class=""><a href="LogWriter.js.html" title="LogWriter.js">LogWriter.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="propertyList" class="module">
|
||||
<h4>Properties</h4>
|
||||
<ul class="content">
|
||||
<li class="private"><a href="#property__source">_source</a>
|
||||
<!--<code><String></code>-->
|
||||
</li>
|
||||
<li class="private"><a href="#property__source" title="_source">_source</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="module">
|
||||
<div id="methodsList" class="module">
|
||||
<h4>Methods</h4>
|
||||
<ul class="content">
|
||||
<li class=""><!--<code>String</code>-->
|
||||
<a href="#method_getSource">getSource</a>
|
||||
</li>
|
||||
<li class=""><!--<code>void</code>-->
|
||||
<a href="#method_log">log</a>
|
||||
</li>
|
||||
<li class=""><!--<code>void</code>-->
|
||||
<a href="#method_setSource">setSource</a>
|
||||
</li>
|
||||
<li class=""><!--<code>String</code>-->
|
||||
<a href="#method_toString">toString</a>
|
||||
</li>
|
||||
<li class=""><a href="#method_getSource" title="getSource">getSource</a></li>
|
||||
<li class=""><a href="#method_log" title="log">log</a></li>
|
||||
<li class=""><a href="#method_setSource" title="setSource">setSource</a></li>
|
||||
<li class=""><a href="#method_toString" title="toString">toString</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
@ -442,8 +424,11 @@ YAHOO.widget.Logger from a named source.
|
|||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2008 Yahoo! Inc. All rights reserved.
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [{"access": "", "host": "LogMsg", "name": "category", "url": "LogMsg.html#property_category", "type": "property"}, {"access": "", "host": "LogWriter", "name": "getSource", "url": "LogWriter.html#method_getSource", "type": "method"}, {"access": "", "host": "LogWriter", "name": "log", "url": "LogWriter.html#method_log", "type": "method"}, {"access": "", "host": "LogMsg", "name": "msg", "url": "LogMsg.html#property_msg", "type": "property"}, {"access": "", "host": "LogWriter", "name": "setSource", "url": "LogWriter.html#method_setSource", "type": "method"}, {"access": "", "host": "LogMsg", "name": "source", "url": "LogMsg.html#property_source", "type": "property"}, {"access": "private", "host": "LogWriter", "name": "_source", "url": "LogWriter.html#property__source", "type": "property"}, {"access": "", "host": "LogMsg", "name": "sourceDetail", "url": "LogMsg.html#property_sourceDetail", "type": "property"}, {"access": "", "host": "LogMsg", "name": "time", "url": "LogMsg.html#property_time", "type": "property"}, {"access": "", "host": "LogWriter", "name": "toString", "url": "LogWriter.html#method_toString", "type": "method"}];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
348
www/extras/yui/docs/MouseEnter.js.html
Normal file
348
www/extras/yui/docs/MouseEnter.js.html
Normal file
|
|
@ -0,0 +1,348 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<title>API: event-mouseenter MouseEnter.js (YUI Library)</title>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
||||
|
||||
<script type="text/javascript" src="assets/api-js"></script>
|
||||
<script type="text/javascript" src="assets/ac-js"></script>
|
||||
</head>
|
||||
|
||||
<body id="yahoo-com">
|
||||
|
||||
<div id="doc3" class="yui-t2">
|
||||
<div id="hd">
|
||||
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
||||
<h3>Event Utility mouseenter and mouseout Module <span class="subtitle">2.8.0r4</span></h3>
|
||||
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
||||
> <a href="./module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a>
|
||||
|
||||
> MouseEnter.js (source view)
|
||||
<form onsubmit="return false">
|
||||
<div id="propertysearch">
|
||||
Search: <input autocomplete="off" id="searchinput" />
|
||||
<div id="searchresults">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
||||
<fieldset>
|
||||
<legend>Filters</legend>
|
||||
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
||||
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div id="srcout">
|
||||
<style>
|
||||
#doc3 .classopts { display:none; }
|
||||
</style>
|
||||
<div class="highlight" ><pre><span class="c">/**</span>
|
||||
<span class="c"> * Augments the Event Utility with support for the mouseenter and mouseleave </span>
|
||||
<span class="c"> * events: A mouseenter event fires the first time the mouse enters an </span>
|
||||
<span class="c"> * element; a mouseleave event first the first time the mouse leaves an </span>
|
||||
<span class="c"> * element.</span>
|
||||
<span class="c"> * </span>
|
||||
<span class="c"> * @module event-mouseenter</span>
|
||||
<span class="c"> * @title Event Utility mouseenter and mouseout Module</span>
|
||||
<span class="c"> * @namespace YAHOO.util</span>
|
||||
<span class="c"> * @requires event</span>
|
||||
<span class="c"> */</span>
|
||||
|
||||
<span class="o">(</span><span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">Event</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">,</span>
|
||||
<span class="nx">Lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">,</span>
|
||||
|
||||
<span class="nx">addListener</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">addListener</span><span class="o">,</span>
|
||||
<span class="nx">removeListener</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">removeListener</span><span class="o">,</span>
|
||||
<span class="nx">getListeners</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">getListeners</span><span class="o">,</span>
|
||||
|
||||
<span class="nx">delegates</span> <span class="o">=</span> <span class="o">[],</span>
|
||||
|
||||
<span class="nx">specialTypes</span> <span class="o">=</span> <span class="o">{</span>
|
||||
<span class="nx">mouseenter</span><span class="o">:</span> <span class="s2">"mouseover"</span><span class="o">,</span>
|
||||
<span class="nx">mouseleave</span><span class="o">:</span> <span class="s2">"mouseout"</span>
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="nx">remove</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">type</span><span class="o">,</span> <span class="nx">fn</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">index</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_getCacheIndex</span><span class="o">(</span><span class="nx">delegates</span><span class="o">,</span> <span class="nx">el</span><span class="o">,</span> <span class="nx">type</span><span class="o">,</span> <span class="nx">fn</span><span class="o">),</span>
|
||||
<span class="nx">cacheItem</span><span class="o">,</span>
|
||||
<span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">index</span> <span class="o">>=</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">cacheItem</span> <span class="o">=</span> <span class="nx">delegates</span><span class="o">[</span><span class="nx">index</span><span class="o">];</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span> <span class="o">&&</span> <span class="nx">cacheItem</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">// removeListener will translate the value of type </span>
|
||||
<span class="c"></span> <span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">removeListener</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">Event</span><span class="o">,</span> <span class="nx">cacheItem</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="nx">type</span><span class="o">,</span> <span class="nx">cacheItem</span><span class="o">[</span><span class="m">3</span><span class="o">]);</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">returnVal</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">delete</span> <span class="nx">delegates</span><span class="o">[</span><span class="nx">index</span><span class="o">][</span><span class="m">2</span><span class="o">];</span>
|
||||
<span class="nx">delete</span> <span class="nx">delegates</span><span class="o">[</span><span class="nx">index</span><span class="o">][</span><span class="m">3</span><span class="o">];</span>
|
||||
<span class="nx">delegates</span><span class="o">.</span><span class="nx">splice</span><span class="o">(</span><span class="nx">index</span><span class="o">,</span> <span class="m">1</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="o">};</span>
|
||||
|
||||
|
||||
<span class="nx">Lang</span><span class="o">.</span><span class="nx">augmentObject</span><span class="o">(</span><span class="nx">Event</span><span class="o">.</span><span class="nx">_specialTypes</span><span class="o">,</span> <span class="nx">specialTypes</span><span class="o">);</span>
|
||||
|
||||
<span class="nx">Lang</span><span class="o">.</span><span class="nx">augmentObject</span><span class="o">(</span><span class="nx">Event</span><span class="o">,</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">/**</span>
|
||||
<span class="c"> * Creates a delegate function used to call mouseover and mouseleave </span>
|
||||
<span class="c"> * event listeners specified via the </span>
|
||||
<span class="c"> * <code>YAHOO.util.Event.addListener</code> </span>
|
||||
<span class="c"> * or <code>YAHOO.util.Event.on</code> method.</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @method _createMouseDelegate</span>
|
||||
<span class="c"> *</span>
|
||||
<span class="c"> * @param {Function} fn The method (event listener) to call</span>
|
||||
<span class="c"> * @param {Object} obj An arbitrary object that will be </span>
|
||||
<span class="c"> * passed as a parameter to the listener</span>
|
||||
<span class="c"> * @param {Boolean|object} overrideContext If true, the value of the </span>
|
||||
<span class="c"> * obj parameter becomes the execution context</span>
|
||||
<span class="c"> * of the listener. If an object, this object</span>
|
||||
<span class="c"> * becomes the execution context. </span>
|
||||
<span class="c"> * @return {Function} Function that will call the event listener </span>
|
||||
<span class="c"> * specified by either the <code>YAHOO.util.Event.addListener</code> </span>
|
||||
<span class="c"> * or <code>YAHOO.util.Event.on</code> method.</span>
|
||||
<span class="c"> * @private</span>
|
||||
<span class="c"> * @static</span>
|
||||
<span class="c"> * @for Event</span>
|
||||
<span class="c"> */</span>
|
||||
<span class="nx">_createMouseDelegate</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">fn</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">return</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">,</span> <span class="nx">container</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
|
||||
<span class="nx">relatedTarget</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">getRelatedTarget</span><span class="o">(</span><span class="nx">event</span><span class="o">),</span>
|
||||
<span class="nx">context</span><span class="o">,</span>
|
||||
<span class="nx">args</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span> <span class="o">!=</span> <span class="nx">relatedTarget</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">isAncestor</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">relatedTarget</span><span class="o">))</span> <span class="o">{</span>
|
||||
|
||||
<span class="nx">context</span> <span class="o">=</span> <span class="nx">el</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">overrideContext</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">overrideContext</span> <span class="o">===</span> <span class="kc">true</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">context</span> <span class="o">=</span> <span class="nx">obj</span><span class="o">;</span>
|
||||
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">context</span> <span class="o">=</span> <span class="nx">overrideContext</span><span class="o">;</span>
|
||||
<span class="o">}</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="c">// The default args passed back to a mouseenter or </span>
|
||||
<span class="c"></span> <span class="c">// mouseleave listener are: the event, the element </span>
|
||||
<span class="c"></span> <span class="c">// to which the listener is bound, and any object the </span>
|
||||
<span class="c"></span> <span class="c">// user passed when subscribing</span>
|
||||
<span class="c"></span>
|
||||
<span class="nx">args</span> <span class="o">=</span> <span class="o">[</span><span class="nx">event</span><span class="o">,</span> <span class="nx">el</span><span class="o">,</span> <span class="nx">obj</span><span class="o">];</span>
|
||||
|
||||
<span class="c">// Add the delegation container as an argument when </span>
|
||||
<span class="c"></span> <span class="c">// delegating mouseenter and mouseleave</span>
|
||||
<span class="c"></span>
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">container</span><span class="o">)</span> <span class="o">{</span>
|
||||
<span class="nx">args</span><span class="o">.</span><span class="nx">splice</span><span class="o">(</span><span class="m">2</span><span class="o">,</span> <span class="m">0</span><span class="o">,</span> <span class="nx">container</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">fn</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="nx">context</span><span class="o">,</span> <span class="nx">args</span><span class="o">);</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">};</span>
|
||||
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="nx">addListener</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">type</span><span class="o">,</span> <span class="nx">fn</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">fnDelegate</span><span class="o">,</span>
|
||||
<span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">specialTypes</span><span class="o">[</span><span class="nx">type</span><span class="o">])</span> <span class="o">{</span>
|
||||
|
||||
<span class="nx">fnDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">_createMouseDelegate</span><span class="o">(</span><span class="nx">fn</span><span class="o">,</span> <span class="nx">obj</span><span class="o">,</span> <span class="nx">overrideContext</span><span class="o">);</span>
|
||||
|
||||
<span class="nx">fnDelegate</span><span class="o">.</span><span class="nx">mouseDelegate</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
||||
|
||||
<span class="nx">delegates</span><span class="o">.</span><span class="nx">push</span><span class="o">([</span><span class="nx">el</span><span class="o">,</span> <span class="nx">type</span><span class="o">,</span> <span class="nx">fn</span><span class="o">,</span> <span class="nx">fnDelegate</span><span class="o">]);</span>
|
||||
|
||||
<span class="c">// addListener will translate the value of type</span>
|
||||
<span class="c"></span> <span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">addListener</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">Event</span><span class="o">,</span> <span class="nx">el</span><span class="o">,</span> <span class="nx">type</span><span class="o">,</span> <span class="nx">fnDelegate</span><span class="o">);</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
<span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">addListener</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="nx">Event</span><span class="o">,</span> <span class="nx">arguments</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="nx">removeListener</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">type</span><span class="o">,</span> <span class="nx">fn</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">var</span> <span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">specialTypes</span><span class="o">[</span><span class="nx">type</span><span class="o">])</span> <span class="o">{</span>
|
||||
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">remove</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="nx">Event</span><span class="o">,</span> <span class="nx">arguments</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
<span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">removeListener</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="nx">Event</span><span class="o">,</span> <span class="nx">arguments</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="nx">returnVal</span><span class="o">;</span>
|
||||
|
||||
<span class="o">},</span>
|
||||
|
||||
<span class="nx">getListeners</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">type</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="c">// If the user specified the type as mouseover or mouseout, </span>
|
||||
<span class="c"></span> <span class="c">// need to filter out those used by mouseenter and mouseleave.</span>
|
||||
<span class="c"></span> <span class="c">// If the user specified the type as mouseenter or mouseleave, </span>
|
||||
<span class="c"></span> <span class="c">// need to filter out the true mouseover and mouseout listeners.</span>
|
||||
<span class="c"></span>
|
||||
<span class="k">var</span> <span class="nx">listeners</span> <span class="o">=</span> <span class="o">[],</span>
|
||||
<span class="nx">elListeners</span><span class="o">,</span>
|
||||
<span class="nx">bMouseOverOrOut</span> <span class="o">=</span> <span class="o">(</span><span class="nx">type</span> <span class="o">===</span> <span class="s2">"mouseover"</span> <span class="o">||</span> <span class="nx">type</span> <span class="o">===</span> <span class="s2">"mouseout"</span><span class="o">),</span>
|
||||
<span class="nx">bMouseDelegate</span><span class="o">,</span>
|
||||
<span class="nx">i</span><span class="o">,</span>
|
||||
<span class="nx">l</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">type</span> <span class="o">&&</span> <span class="o">(</span><span class="nx">bMouseOverOrOut</span> <span class="o">||</span> <span class="nx">specialTypes</span><span class="o">[</span><span class="nx">type</span><span class="o">]))</span> <span class="o">{</span>
|
||||
|
||||
<span class="nx">elListeners</span> <span class="o">=</span> <span class="nx">getListeners</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">Event</span><span class="o">,</span> <span class="nx">el</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getType</span><span class="o">(</span><span class="nx">type</span><span class="o">));</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">(</span><span class="nx">elListeners</span><span class="o">)</span> <span class="o">{</span>
|
||||
|
||||
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span><span class="o">=</span><span class="nx">elListeners</span><span class="o">.</span><span class="nx">length</span><span class="o">-</span><span class="m">1</span><span class="o">;</span> <span class="nx">i</span><span class="o">>-</span><span class="m">1</span><span class="o">;</span> <span class="nx">i</span><span class="o">--)</span> <span class="o">{</span>
|
||||
|
||||
<span class="nx">l</span> <span class="o">=</span> <span class="nx">elListeners</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
||||
<span class="nx">bMouseDelegate</span> <span class="o">=</span> <span class="nx">l</span><span class="o">.</span><span class="nx">fn</span><span class="o">.</span><span class="nx">mouseDelegate</span><span class="o">;</span>
|
||||
|
||||
<span class="k">if</span> <span class="o">((</span><span class="nx">specialTypes</span><span class="o">[</span><span class="nx">type</span><span class="o">]</span> <span class="o">&&</span> <span class="nx">bMouseDelegate</span><span class="o">)</span> <span class="o">||</span> <span class="o">(</span><span class="nx">bMouseOverOrOut</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">bMouseDelegate</span><span class="o">))</span> <span class="o">{</span>
|
||||
<span class="nx">listeners</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">l</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
<span class="k">else</span> <span class="o">{</span>
|
||||
<span class="nx">listeners</span> <span class="o">=</span> <span class="nx">getListeners</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="nx">Event</span><span class="o">,</span> <span class="nx">arguments</span><span class="o">);</span>
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="k">return</span> <span class="o">(</span><span class="nx">listeners</span> <span class="o">&&</span> <span class="nx">listeners</span><span class="o">.</span><span class="nx">length</span><span class="o">)</span> <span class="o">?</span> <span class="nx">listeners</span> <span class="o">:</span> <span class="kc">null</span><span class="o">;</span>
|
||||
|
||||
<span class="o">}</span>
|
||||
|
||||
<span class="o">},</span> <span class="kc">true</span><span class="o">);</span>
|
||||
|
||||
<span class="nx">Event</span><span class="o">.</span><span class="nx">on</span> <span class="o">=</span> <span class="nx">Event</span><span class="o">.</span><span class="nx">addListener</span><span class="o">;</span>
|
||||
|
||||
<span class="o">}());</span>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="yui-b">
|
||||
<div class="nav">
|
||||
|
||||
<div id="moduleList" class="module">
|
||||
<h4>Modules</h4>
|
||||
<ul class="content">
|
||||
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
||||
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
||||
<li class=""><a href="module_button.html" title="button">button</a></li>
|
||||
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
||||
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
||||
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
||||
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
||||
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
||||
<li class=""><a href="module_container.html" title="container">container</a></li>
|
||||
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
||||
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
||||
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
||||
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
||||
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
||||
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
||||
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
||||
<li class=""><a href="module_element.html" title="element">element</a></li>
|
||||
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
||||
<li class=""><a href="module_event.html" title="event">event</a></li>
|
||||
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
||||
<li class="selected"><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
||||
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
||||
<li class=""><a href="module_get.html" title="get">get</a></li>
|
||||
<li class=""><a href="module_history.html" title="history">history</a></li>
|
||||
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
||||
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
||||
<li class=""><a href="module_json.html" title="json">json</a></li>
|
||||
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
||||
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
||||
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
||||
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
||||
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
||||
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
||||
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
||||
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
||||
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
||||
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
||||
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
||||
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
||||
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
||||
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
||||
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
||||
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
||||
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
||||
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
||||
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
||||
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
||||
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="fileList" class="module">
|
||||
<h4>Files</h4>
|
||||
<ul class="content">
|
||||
<li class="selected"><a href="MouseEnter.js.html" title="MouseEnter.js">MouseEnter.js</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="ft">
|
||||
<hr />
|
||||
Copyright © 2009 Yahoo! Inc. All rights reserved.
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
ALL_YUI_PROPS = [];
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load diff
825
www/extras/yui/docs/ProgressBar.js.html
Normal file
825
www/extras/yui/docs/ProgressBar.js.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
478
www/extras/yui/docs/Storage.js.html
Normal file
478
www/extras/yui/docs/Storage.js.html
Normal file
File diff suppressed because one or more lines are too long
357
www/extras/yui/docs/StorageEngineGears.js.html
Normal file
357
www/extras/yui/docs/StorageEngineGears.js.html
Normal file
File diff suppressed because one or more lines are too long
276
www/extras/yui/docs/StorageEngineHTML5.js.html
Normal file
276
www/extras/yui/docs/StorageEngineHTML5.js.html
Normal file
File diff suppressed because one or more lines are too long
237
www/extras/yui/docs/StorageEngineKeyed.js.html
Normal file
237
www/extras/yui/docs/StorageEngineKeyed.js.html
Normal file
File diff suppressed because one or more lines are too long
354
www/extras/yui/docs/StorageEngineSWF.js.html
Normal file
354
www/extras/yui/docs/StorageEngineSWF.js.html
Normal file
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue