1624 lines
302 KiB
HTML
1624 lines
302 KiB
HTML
<!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: datatable EventDelegate.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>DataTable Widget <span class="subtitle">2.9.0</span></h3>
|
|
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
|
> <a href="./module_datatable.html" title="datatable">datatable</a>
|
|
|
|
> EventDelegate.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="cm">/**</span>
|
|
<span class="cm"> * Augments the Event Utility with a <code>delegate</code> method that </span>
|
|
<span class="cm"> * facilitates easy creation of delegated event listeners. (Note: Using CSS </span>
|
|
<span class="cm"> * selectors as the filtering criteria for delegated event listeners requires </span>
|
|
<span class="cm"> * inclusion of the Selector Utility.)</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @module event-delegate</span>
|
|
<span class="cm"> * @title Event Utility Event Delegation Module</span>
|
|
<span class="cm"> * @namespace YAHOO.util</span>
|
|
<span class="cm"> * @requires event</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">Event</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Event</span><span class="p">,</span>
|
|
<span class="nx">Lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">,</span>
|
|
<span class="nx">delegates</span> <span class="o">=</span> <span class="p">[],</span>
|
|
|
|
|
|
<span class="nx">getMatch</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">selector</span><span class="p">,</span> <span class="nx">container</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">returnVal</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</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="p">)</span> <span class="p">{</span>
|
|
<span class="nx">returnVal</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">test</span><span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">selector</span><span class="p">)</span> <span class="o">?</span> <span class="nx">el</span><span class="o">:</span> <span class="nx">getMatch</span><span class="p">(</span><span class="nx">el</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">,</span> <span class="nx">selector</span><span class="p">,</span> <span class="nx">container</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">returnVal</span><span class="p">;</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
|
|
<span class="nx">Lang</span><span class="p">.</span><span class="nx">augmentObject</span><span class="p">(</span><span class="nx">Event</span><span class="p">,</span> <span class="p">{</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Creates a delegate function used to call event listeners specified </span>
|
|
<span class="cm"> * via the <code>YAHOO.util.Event.delegate</code> method.</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @method _createDelegate</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @param {Function} fn The method (event listener) to call.</span>
|
|
<span class="cm"> * @param {Function|string} filter Function or CSS selector used to </span>
|
|
<span class="cm"> * determine for what element(s) the event listener should be called. </span>
|
|
<span class="cm"> * @param {Object} obj An arbitrary object that will be </span>
|
|
<span class="cm"> * passed as a parameter to the listener.</span>
|
|
<span class="cm"> * @param {Boolean|object} overrideContext If true, the value of the </span>
|
|
<span class="cm"> * obj parameter becomes the execution context</span>
|
|
<span class="cm"> * of the listener. If an object, this object</span>
|
|
<span class="cm"> * becomes the execution context.</span>
|
|
<span class="cm"> * @return {Function} Function that will call the event listener </span>
|
|
<span class="cm"> * specified by the <code>YAHOO.util.Event.delegate</code> method.</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> * @for Event</span>
|
|
<span class="cm"> * @static</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_createDelegate</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">fn</span><span class="p">,</span> <span class="nx">filter</span><span class="p">,</span> <span class="nx">obj</span><span class="p">,</span> <span class="nx">overrideContext</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">return</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">event</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">container</span> <span class="o">=</span> <span class="k">this</span><span class="p">,</span>
|
|
<span class="nx">target</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">getTarget</span><span class="p">(</span><span class="nx">event</span><span class="p">),</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">filter</span><span class="p">,</span>
|
|
|
|
<span class="c1">// The user might have specified the document object </span>
|
|
<span class="c1">// as the delegation container, in which case it is not </span>
|
|
<span class="c1">// nessary to scope the provided CSS selector(s) to the </span>
|
|
<span class="c1">// delegation container</span>
|
|
<span class="nx">bDocument</span> <span class="o">=</span> <span class="p">(</span><span class="nx">container</span><span class="p">.</span><span class="nx">nodeType</span> <span class="o">===</span> <span class="mi">9</span><span class="p">),</span>
|
|
|
|
<span class="nx">matchedEl</span><span class="p">,</span>
|
|
<span class="nx">context</span><span class="p">,</span>
|
|
<span class="nx">sID</span><span class="p">,</span>
|
|
<span class="nx">sIDSelector</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">Lang</span><span class="p">.</span><span class="nx">isFunction</span><span class="p">(</span><span class="nx">filter</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">matchedEl</span> <span class="o">=</span> <span class="nx">filter</span><span class="p">(</span><span class="nx">target</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">Lang</span><span class="p">.</span><span class="nx">isString</span><span class="p">(</span><span class="nx">filter</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">bDocument</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sID</span> <span class="o">=</span> <span class="nx">container</span><span class="p">.</span><span class="nx">id</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">sID</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">sID</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">generateId</span><span class="p">(</span><span class="nx">container</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// Scope all selectors to the container</span>
|
|
<span class="nx">sIDSelector</span> <span class="o">=</span> <span class="p">(</span><span class="s2">"#"</span> <span class="o">+</span> <span class="nx">sID</span> <span class="o">+</span> <span class="s2">" "</span><span class="p">);</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="p">(</span><span class="nx">sIDSelector</span> <span class="o">+</span> <span class="nx">filter</span><span class="p">).</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/,/gi</span><span class="p">,</span> <span class="p">(</span><span class="s2">","</span> <span class="o">+</span> <span class="nx">sIDSelector</span><span class="p">));</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">test</span><span class="p">(</span><span class="nx">target</span><span class="p">,</span> <span class="nx">selector</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">matchedEl</span> <span class="o">=</span> <span class="nx">target</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">test</span><span class="p">(</span><span class="nx">target</span><span class="p">,</span> <span class="p">((</span><span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/,/gi</span><span class="p">,</span> <span class="s2">" *,"</span><span class="p">))</span> <span class="o">+</span> <span class="s2">" *"</span><span class="p">)))</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// The target is a descendant of an element matching </span>
|
|
<span class="c1">// the selector, so crawl up to find the ancestor that </span>
|
|
<span class="c1">// matches the selector</span>
|
|
|
|
<span class="nx">matchedEl</span> <span class="o">=</span> <span class="nx">getMatch</span><span class="p">(</span><span class="nx">target</span><span class="p">,</span> <span class="nx">selector</span><span class="p">,</span> <span class="nx">container</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">matchedEl</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// The default context for delegated listeners is the </span>
|
|
<span class="c1">// element that matched the filter.</span>
|
|
|
|
<span class="nx">context</span> <span class="o">=</span> <span class="nx">matchedEl</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">overrideContext</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">overrideContext</span> <span class="o">===</span> <span class="kc">true</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">context</span> <span class="o">=</span> <span class="nx">obj</span><span class="p">;</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">context</span> <span class="o">=</span> <span class="nx">overrideContext</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// Call the listener passing in the container and the </span>
|
|
<span class="c1">// element that matched the filter in case the user </span>
|
|
<span class="c1">// needs those.</span>
|
|
|
|
<span class="k">return</span> <span class="nx">fn</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="nx">context</span><span class="p">,</span> <span class="nx">event</span><span class="p">,</span> <span class="nx">matchedEl</span><span class="p">,</span> <span class="nx">container</span><span class="p">,</span> <span class="nx">obj</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Appends a delegated event listener. Delegated event listeners </span>
|
|
<span class="cm"> * receive three arguments by default: the DOM event, the element </span>
|
|
<span class="cm"> * specified by the filtering function or CSS selector, and the </span>
|
|
<span class="cm"> * container element (the element to which the event listener is </span>
|
|
<span class="cm"> * bound). (Note: Using the delegate method requires the event-delegate </span>
|
|
<span class="cm"> * module. Using CSS selectors as the filtering criteria for delegated </span>
|
|
<span class="cm"> * event listeners requires inclusion of the Selector Utility.)</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @method delegate</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @param {String|HTMLElement|Array|NodeList} container An id, an element </span>
|
|
<span class="cm"> * reference, or a collection of ids and/or elements to assign the </span>
|
|
<span class="cm"> * listener to.</span>
|
|
<span class="cm"> * @param {String} type The type of event listener to append</span>
|
|
<span class="cm"> * @param {Function} fn The method the event invokes</span>
|
|
<span class="cm"> * @param {Function|string} filter Function or CSS selector used to </span>
|
|
<span class="cm"> * determine for what element(s) the event listener should be called. </span>
|
|
<span class="cm"> * When a function is specified, the function should return an </span>
|
|
<span class="cm"> * HTML element. Using a CSS Selector requires the inclusion of the </span>
|
|
<span class="cm"> * CSS Selector Utility.</span>
|
|
<span class="cm"> * @param {Object} obj An arbitrary object that will be </span>
|
|
<span class="cm"> * passed as a parameter to the listener</span>
|
|
<span class="cm"> * @param {Boolean|object} overrideContext If true, the value of the obj parameter becomes</span>
|
|
<span class="cm"> * the execution context of the listener. If an</span>
|
|
<span class="cm"> * object, this object becomes the execution</span>
|
|
<span class="cm"> * context.</span>
|
|
<span class="cm"> * @return {Boolean} Returns true if the action was successful or defered,</span>
|
|
<span class="cm"> * false if one or more of the elements </span>
|
|
<span class="cm"> * could not have the listener attached,</span>
|
|
<span class="cm"> * or if the operation throws an exception.</span>
|
|
<span class="cm"> * @static</span>
|
|
<span class="cm"> * @for Event</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">delegate</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">container</span><span class="p">,</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">fn</span><span class="p">,</span> <span class="nx">filter</span><span class="p">,</span> <span class="nx">obj</span><span class="p">,</span> <span class="nx">overrideContext</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">sType</span> <span class="o">=</span> <span class="nx">type</span><span class="p">,</span>
|
|
<span class="nx">fnMouseDelegate</span><span class="p">,</span>
|
|
<span class="nx">fnDelegate</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">Lang</span><span class="p">.</span><span class="nx">isString</span><span class="p">(</span><span class="nx">filter</span><span class="p">)</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Selector</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s2">"Using a CSS selector to define the filtering criteria for a delegated listener requires the Selector Utility."</span><span class="p">,</span> <span class="s2">"error"</span><span class="p">,</span> <span class="s2">"Event"</span><span class="p">);</span>
|
|
<span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</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="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">Event</span><span class="p">.</span><span class="nx">_createMouseDelegate</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">log</span><span class="p">(</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="p">,</span> <span class="s2">"error"</span><span class="p">,</span> <span class="s2">"Event"</span><span class="p">);</span>
|
|
<span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// Look up the real event--either mouseover or mouseout</span>
|
|
<span class="nx">sType</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">_getType</span><span class="p">(</span><span class="nx">type</span><span class="p">);</span>
|
|
|
|
<span class="nx">fnMouseDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">_createMouseDelegate</span><span class="p">(</span><span class="nx">fn</span><span class="p">,</span> <span class="nx">obj</span><span class="p">,</span> <span class="nx">overrideContext</span><span class="p">);</span>
|
|
|
|
<span class="nx">fnDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">_createDelegate</span><span class="p">(</span><span class="kd">function</span> <span class="p">(</span><span class="nx">event</span><span class="p">,</span> <span class="nx">matchedEl</span><span class="p">,</span> <span class="nx">container</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">return</span> <span class="nx">fnMouseDelegate</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="nx">matchedEl</span><span class="p">,</span> <span class="nx">event</span><span class="p">,</span> <span class="nx">container</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span> <span class="nx">filter</span><span class="p">,</span> <span class="nx">obj</span><span class="p">,</span> <span class="nx">overrideContext</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="nx">fnDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">_createDelegate</span><span class="p">(</span><span class="nx">fn</span><span class="p">,</span> <span class="nx">filter</span><span class="p">,</span> <span class="nx">obj</span><span class="p">,</span> <span class="nx">overrideContext</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">delegates</span><span class="p">.</span><span class="nx">push</span><span class="p">([</span><span class="nx">container</span><span class="p">,</span> <span class="nx">sType</span><span class="p">,</span> <span class="nx">fn</span><span class="p">,</span> <span class="nx">fnDelegate</span><span class="p">]);</span>
|
|
|
|
<span class="k">return</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">on</span><span class="p">(</span><span class="nx">container</span><span class="p">,</span> <span class="nx">sType</span><span class="p">,</span> <span class="nx">fnDelegate</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Removes a delegated event listener.</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @method removeDelegate</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @param {String|HTMLElement|Array|NodeList} container An id, an element </span>
|
|
<span class="cm"> * reference, or a collection of ids and/or elements to remove</span>
|
|
<span class="cm"> * the listener from.</span>
|
|
<span class="cm"> * @param {String} type The type of event to remove.</span>
|
|
<span class="cm"> * @param {Function} fn The method the event invokes. If fn is</span>
|
|
<span class="cm"> * undefined, then all event listeners for the type of event are </span>
|
|
<span class="cm"> * removed.</span>
|
|
<span class="cm"> * @return {boolean} Returns true if the unbind was successful, false </span>
|
|
<span class="cm"> * otherwise.</span>
|
|
<span class="cm"> * @static</span>
|
|
<span class="cm"> * @for Event</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">removeDelegate</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">container</span><span class="p">,</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">fn</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">sType</span> <span class="o">=</span> <span class="nx">type</span><span class="p">,</span>
|
|
<span class="nx">returnVal</span> <span class="o">=</span> <span class="kc">false</span><span class="p">,</span>
|
|
<span class="nx">index</span><span class="p">,</span>
|
|
<span class="nx">cacheItem</span><span class="p">;</span>
|
|
|
|
<span class="c1">// Look up the real event--either mouseover or mouseout</span>
|
|
<span class="k">if</span> <span class="p">(</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="p">)</span> <span class="p">{</span>
|
|
<span class="nx">sType</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">_getType</span><span class="p">(</span><span class="nx">type</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">index</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">_getCacheIndex</span><span class="p">(</span><span class="nx">delegates</span><span class="p">,</span> <span class="nx">container</span><span class="p">,</span> <span class="nx">sType</span><span class="p">,</span> <span class="nx">fn</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">index</span> <span class="o">>=</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">cacheItem</span> <span class="o">=</span> <span class="nx">delegates</span><span class="p">[</span><span class="nx">index</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">container</span> <span class="o">&&</span> <span class="nx">cacheItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">removeListener</span><span class="p">(</span><span class="nx">cacheItem</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="nx">cacheItem</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="nx">cacheItem</span><span class="p">[</span><span class="mi">3</span><span class="p">]);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">returnVal</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">delete</span> <span class="nx">delegates</span><span class="p">[</span><span class="nx">index</span><span class="p">][</span><span class="mi">2</span><span class="p">];</span>
|
|
<span class="k">delete</span> <span class="nx">delegates</span><span class="p">[</span><span class="nx">index</span><span class="p">][</span><span class="mi">3</span><span class="p">];</span>
|
|
<span class="nx">delegates</span><span class="p">.</span><span class="nx">splice</span><span class="p">(</span><span class="nx">index</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">returnVal</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">});</span>
|
|
|
|
<span class="p">}());</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Augments the Event Utility with support for the mouseenter and mouseleave</span>
|
|
<span class="cm"> * events: A mouseenter event fires the first time the mouse enters an</span>
|
|
<span class="cm"> * element; a mouseleave event first the first time the mouse leaves an</span>
|
|
<span class="cm"> * element.</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @module event-mouseenter</span>
|
|
<span class="cm"> * @title Event Utility mouseenter and mouseout Module</span>
|
|
<span class="cm"> * @namespace YAHOO.util</span>
|
|
<span class="cm"> * @requires event</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">Event</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Event</span><span class="p">,</span>
|
|
<span class="nx">Lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">,</span>
|
|
|
|
<span class="nx">addListener</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">addListener</span><span class="p">,</span>
|
|
<span class="nx">removeListener</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">removeListener</span><span class="p">,</span>
|
|
<span class="nx">getListeners</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">getListeners</span><span class="p">,</span>
|
|
|
|
<span class="nx">delegates</span> <span class="o">=</span> <span class="p">[],</span>
|
|
|
|
<span class="nx">specialTypes</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">mouseenter</span><span class="o">:</span> <span class="s2">"mouseover"</span><span class="p">,</span>
|
|
<span class="nx">mouseleave</span><span class="o">:</span> <span class="s2">"mouseout"</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">remove</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">fn</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">index</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">_getCacheIndex</span><span class="p">(</span><span class="nx">delegates</span><span class="p">,</span> <span class="nx">el</span><span class="p">,</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">fn</span><span class="p">),</span>
|
|
<span class="nx">cacheItem</span><span class="p">,</span>
|
|
<span class="nx">returnVal</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">index</span> <span class="o">>=</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">cacheItem</span> <span class="o">=</span> <span class="nx">delegates</span><span class="p">[</span><span class="nx">index</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">el</span> <span class="o">&&</span> <span class="nx">cacheItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// removeListener will translate the value of type</span>
|
|
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">removeListener</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="nx">Event</span><span class="p">,</span> <span class="nx">cacheItem</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">cacheItem</span><span class="p">[</span><span class="mi">3</span><span class="p">]);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">returnVal</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">delete</span> <span class="nx">delegates</span><span class="p">[</span><span class="nx">index</span><span class="p">][</span><span class="mi">2</span><span class="p">];</span>
|
|
<span class="k">delete</span> <span class="nx">delegates</span><span class="p">[</span><span class="nx">index</span><span class="p">][</span><span class="mi">3</span><span class="p">];</span>
|
|
<span class="nx">delegates</span><span class="p">.</span><span class="nx">splice</span><span class="p">(</span><span class="nx">index</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">returnVal</span><span class="p">;</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
|
|
<span class="nx">Lang</span><span class="p">.</span><span class="nx">augmentObject</span><span class="p">(</span><span class="nx">Event</span><span class="p">.</span><span class="nx">_specialTypes</span><span class="p">,</span> <span class="nx">specialTypes</span><span class="p">);</span>
|
|
|
|
<span class="nx">Lang</span><span class="p">.</span><span class="nx">augmentObject</span><span class="p">(</span><span class="nx">Event</span><span class="p">,</span> <span class="p">{</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Creates a delegate function used to call mouseover and mouseleave</span>
|
|
<span class="cm"> * event listeners specified via the</span>
|
|
<span class="cm"> * <code>YAHOO.util.Event.addListener</code></span>
|
|
<span class="cm"> * or <code>YAHOO.util.Event.on</code> method.</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @method _createMouseDelegate</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @param {Function} fn The method (event listener) to call</span>
|
|
<span class="cm"> * @param {Object} obj An arbitrary object that will be</span>
|
|
<span class="cm"> * passed as a parameter to the listener</span>
|
|
<span class="cm"> * @param {Boolean|object} overrideContext If true, the value of the</span>
|
|
<span class="cm"> * obj parameter becomes the execution context</span>
|
|
<span class="cm"> * of the listener. If an object, this object</span>
|
|
<span class="cm"> * becomes the execution context.</span>
|
|
<span class="cm"> * @return {Function} Function that will call the event listener</span>
|
|
<span class="cm"> * specified by either the <code>YAHOO.util.Event.addListener</code></span>
|
|
<span class="cm"> * or <code>YAHOO.util.Event.on</code> method.</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> * @static</span>
|
|
<span class="cm"> * @for Event</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_createMouseDelegate</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">fn</span><span class="p">,</span> <span class="nx">obj</span><span class="p">,</span> <span class="nx">overrideContext</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">return</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">event</span><span class="p">,</span> <span class="nx">container</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="p">,</span>
|
|
<span class="nx">relatedTarget</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">getRelatedTarget</span><span class="p">(</span><span class="nx">event</span><span class="p">),</span>
|
|
<span class="nx">context</span><span class="p">,</span>
|
|
<span class="nx">args</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</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="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Dom</span><span class="p">.</span><span class="nx">isAncestor</span><span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">relatedTarget</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">context</span> <span class="o">=</span> <span class="nx">el</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">overrideContext</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">overrideContext</span> <span class="o">===</span> <span class="kc">true</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">context</span> <span class="o">=</span> <span class="nx">obj</span><span class="p">;</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">context</span> <span class="o">=</span> <span class="nx">overrideContext</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// The default args passed back to a mouseenter or</span>
|
|
<span class="c1">// mouseleave listener are: the event, and any object</span>
|
|
<span class="c1">// the user passed when subscribing</span>
|
|
|
|
<span class="nx">args</span> <span class="o">=</span> <span class="p">[</span><span class="nx">event</span><span class="p">,</span> <span class="nx">obj</span><span class="p">];</span>
|
|
|
|
<span class="c1">// Add the element and delegation container as arguments</span>
|
|
<span class="c1">// when delegating mouseenter and mouseleave</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">container</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">args</span><span class="p">.</span><span class="nx">splice</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">el</span><span class="p">,</span> <span class="nx">container</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">fn</span><span class="p">.</span><span class="nx">apply</span><span class="p">(</span><span class="nx">context</span><span class="p">,</span> <span class="nx">args</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">addListener</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">fn</span><span class="p">,</span> <span class="nx">obj</span><span class="p">,</span> <span class="nx">overrideContext</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">fnDelegate</span><span class="p">,</span>
|
|
<span class="nx">returnVal</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">specialTypes</span><span class="p">[</span><span class="nx">type</span><span class="p">])</span> <span class="p">{</span>
|
|
|
|
<span class="nx">fnDelegate</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">_createMouseDelegate</span><span class="p">(</span><span class="nx">fn</span><span class="p">,</span> <span class="nx">obj</span><span class="p">,</span> <span class="nx">overrideContext</span><span class="p">);</span>
|
|
|
|
<span class="nx">fnDelegate</span><span class="p">.</span><span class="nx">mouseDelegate</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
<span class="nx">delegates</span><span class="p">.</span><span class="nx">push</span><span class="p">([</span><span class="nx">el</span><span class="p">,</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">fn</span><span class="p">,</span> <span class="nx">fnDelegate</span><span class="p">]);</span>
|
|
|
|
<span class="c1">// addListener will translate the value of type</span>
|
|
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">addListener</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="nx">Event</span><span class="p">,</span> <span class="nx">el</span><span class="p">,</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">fnDelegate</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">addListener</span><span class="p">.</span><span class="nx">apply</span><span class="p">(</span><span class="nx">Event</span><span class="p">,</span> <span class="nx">arguments</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">returnVal</span><span class="p">;</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">removeListener</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">fn</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">returnVal</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">specialTypes</span><span class="p">[</span><span class="nx">type</span><span class="p">])</span> <span class="p">{</span>
|
|
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">remove</span><span class="p">.</span><span class="nx">apply</span><span class="p">(</span><span class="nx">Event</span><span class="p">,</span> <span class="nx">arguments</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">removeListener</span><span class="p">.</span><span class="nx">apply</span><span class="p">(</span><span class="nx">Event</span><span class="p">,</span> <span class="nx">arguments</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">returnVal</span><span class="p">;</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">getListeners</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">type</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// If the user specified the type as mouseover or mouseout,</span>
|
|
<span class="c1">// need to filter out those used by mouseenter and mouseleave.</span>
|
|
<span class="c1">// If the user specified the type as mouseenter or mouseleave,</span>
|
|
<span class="c1">// need to filter out the true mouseover and mouseout listeners.</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">listeners</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">elListeners</span><span class="p">,</span>
|
|
<span class="nx">bMouseOverOrOut</span> <span class="o">=</span> <span class="p">(</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="p">),</span>
|
|
<span class="nx">bMouseDelegate</span><span class="p">,</span>
|
|
<span class="nx">i</span><span class="p">,</span>
|
|
<span class="nx">l</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">type</span> <span class="o">&&</span> <span class="p">(</span><span class="nx">bMouseOverOrOut</span> <span class="o">||</span> <span class="nx">specialTypes</span><span class="p">[</span><span class="nx">type</span><span class="p">]))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">elListeners</span> <span class="o">=</span> <span class="nx">getListeners</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="nx">Event</span><span class="p">,</span> <span class="nx">el</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">_getType</span><span class="p">(</span><span class="nx">type</span><span class="p">));</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">elListeners</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span><span class="o">=</span><span class="nx">elListeners</span><span class="p">.</span><span class="nx">length</span><span class="o">-</span><span class="mi">1</span><span class="p">;</span> <span class="nx">i</span><span class="o">>-</span><span class="mi">1</span><span class="p">;</span> <span class="nx">i</span><span class="o">--</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">l</span> <span class="o">=</span> <span class="nx">elListeners</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
<span class="nx">bMouseDelegate</span> <span class="o">=</span> <span class="nx">l</span><span class="p">.</span><span class="nx">fn</span><span class="p">.</span><span class="nx">mouseDelegate</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">((</span><span class="nx">specialTypes</span><span class="p">[</span><span class="nx">type</span><span class="p">]</span> <span class="o">&&</span> <span class="nx">bMouseDelegate</span><span class="p">)</span> <span class="o">||</span> <span class="p">(</span><span class="nx">bMouseOverOrOut</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">bMouseDelegate</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">listeners</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">l</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">listeners</span> <span class="o">=</span> <span class="nx">getListeners</span><span class="p">.</span><span class="nx">apply</span><span class="p">(</span><span class="nx">Event</span><span class="p">,</span> <span class="nx">arguments</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">listeners</span> <span class="o">&&</span> <span class="nx">listeners</span><span class="p">.</span><span class="nx">length</span><span class="p">)</span> <span class="o">?</span> <span class="nx">listeners</span> <span class="o">:</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span> <span class="kc">true</span><span class="p">);</span>
|
|
|
|
<span class="nx">Event</span><span class="p">.</span><span class="nx">on</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">addListener</span><span class="p">;</span>
|
|
|
|
<span class="p">}());</span>
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">register</span><span class="p">(</span><span class="s2">"event-mouseenter"</span><span class="p">,</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Event</span><span class="p">,</span> <span class="p">{</span><span class="nx">version</span><span class="o">:</span> <span class="s2">"@VERSION@"</span><span class="p">,</span> <span class="nx">build</span><span class="o">:</span> <span class="s2">"@BUILD@"</span><span class="p">});</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">Y</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">,</span>
|
|
<span class="nx">Y_DOM</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Dom</span><span class="p">,</span>
|
|
<span class="nx">EMPTY_ARRAY</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">Y_UA</span> <span class="o">=</span> <span class="nx">Y</span><span class="p">.</span><span class="nx">env</span><span class="p">.</span><span class="nx">ua</span><span class="p">,</span>
|
|
<span class="nx">Y_Lang</span> <span class="o">=</span> <span class="nx">Y</span><span class="p">.</span><span class="nx">lang</span><span class="p">,</span>
|
|
<span class="nx">Y_DOC</span> <span class="o">=</span> <span class="nb">document</span><span class="p">,</span>
|
|
<span class="nx">Y_DOCUMENT_ELEMENT</span> <span class="o">=</span> <span class="nx">Y_DOC</span><span class="p">.</span><span class="nx">documentElement</span><span class="p">,</span>
|
|
|
|
<span class="nx">Y_DOM_inDoc</span> <span class="o">=</span> <span class="nx">Y_DOM</span><span class="p">.</span><span class="nx">inDocument</span><span class="p">,</span>
|
|
<span class="nx">Y_mix</span> <span class="o">=</span> <span class="nx">Y_Lang</span><span class="p">.</span><span class="nx">augmentObject</span><span class="p">,</span>
|
|
<span class="nx">Y_guid</span> <span class="o">=</span> <span class="nx">Y_DOM</span><span class="p">.</span><span class="nx">generateId</span><span class="p">,</span>
|
|
|
|
<span class="nx">Y_getDoc</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">element</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">doc</span> <span class="o">=</span> <span class="nx">Y_DOC</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">element</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">doc</span> <span class="o">=</span> <span class="p">(</span><span class="nx">element</span><span class="p">.</span><span class="nx">nodeType</span> <span class="o">===</span> <span class="mi">9</span><span class="p">)</span> <span class="o">?</span> <span class="nx">element</span> <span class="o">:</span> <span class="c1">// element === document</span>
|
|
<span class="nx">element</span><span class="p">.</span><span class="nx">ownerDocument</span> <span class="o">||</span> <span class="c1">// element === DOM node</span>
|
|
<span class="nx">element</span><span class="p">.</span><span class="nb">document</span> <span class="o">||</span> <span class="c1">// element === window</span>
|
|
<span class="nx">Y_DOC</span><span class="p">;</span> <span class="c1">// default</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">doc</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">Y_Array</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="nx">startIdx</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">l</span><span class="p">,</span> <span class="nx">a</span><span class="p">,</span> <span class="nx">start</span> <span class="o">=</span> <span class="nx">startIdx</span> <span class="o">||</span> <span class="mi">0</span><span class="p">;</span>
|
|
|
|
<span class="c1">// IE errors when trying to slice HTMLElement collections</span>
|
|
<span class="k">try</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nb">Array</span><span class="p">.</span><span class="nx">prototype</span><span class="p">.</span><span class="nx">slice</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="nx">start</span><span class="p">);</span>
|
|
<span class="p">}</span> <span class="k">catch</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">a</span> <span class="o">=</span> <span class="p">[];</span>
|
|
<span class="nx">l</span> <span class="o">=</span> <span class="nx">o</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
|
|
<span class="k">for</span> <span class="p">(;</span> <span class="nx">start</span> <span class="o"><</span> <span class="nx">l</span><span class="p">;</span> <span class="nx">start</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">a</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">o</span><span class="p">[</span><span class="nx">start</span><span class="p">]);</span>
|
|
<span class="p">}</span>
|
|
<span class="k">return</span> <span class="nx">a</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">Y_DOM_allById</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">id</span><span class="p">,</span> <span class="nx">root</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">root</span> <span class="o">=</span> <span class="nx">root</span> <span class="o">||</span> <span class="nx">Y_DOC</span><span class="p">;</span>
|
|
<span class="kd">var</span> <span class="nx">nodes</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">ret</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">i</span><span class="p">,</span>
|
|
<span class="nx">node</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">root</span><span class="p">.</span><span class="nx">querySelectorAll</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">ret</span> <span class="o">=</span> <span class="nx">root</span><span class="p">.</span><span class="nx">querySelectorAll</span><span class="p">(</span><span class="s1">'[id="'</span> <span class="o">+</span> <span class="nx">id</span> <span class="o">+</span> <span class="s1">'"]'</span><span class="p">);</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">root</span><span class="p">.</span><span class="nx">all</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">nodes</span> <span class="o">=</span> <span class="nx">root</span><span class="p">.</span><span class="nx">all</span><span class="p">(</span><span class="nx">id</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodes</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// root.all may return HTMLElement or HTMLCollection.</span>
|
|
<span class="c1">// some elements are also HTMLCollection (FORM, SELECT).</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodes</span><span class="p">.</span><span class="nx">nodeName</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodes</span><span class="p">.</span><span class="nx">id</span> <span class="o">===</span> <span class="nx">id</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// avoid false positive on name</span>
|
|
<span class="nx">ret</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">nodes</span><span class="p">);</span>
|
|
<span class="nx">nodes</span> <span class="o">=</span> <span class="nx">EMPTY_ARRAY</span><span class="p">;</span> <span class="c1">// done, no need to filter</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span> <span class="c1">// prep for filtering</span>
|
|
<span class="nx">nodes</span> <span class="o">=</span> <span class="p">[</span><span class="nx">nodes</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodes</span><span class="p">.</span><span class="nx">length</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// filter out matches on node.name</span>
|
|
<span class="c1">// and element.id as reference to element with id === 'id'</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">node</span> <span class="o">=</span> <span class="nx">nodes</span><span class="p">[</span><span class="nx">i</span><span class="o">++</span><span class="p">];)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">id</span> <span class="o">===</span> <span class="nx">id</span> <span class="o">||</span>
|
|
<span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">attributes</span> <span class="o">&&</span> <span class="nx">node</span><span class="p">.</span><span class="nx">attributes</span><span class="p">.</span><span class="nx">id</span> <span class="o">&&</span>
|
|
<span class="nx">node</span><span class="p">.</span><span class="nx">attributes</span><span class="p">.</span><span class="nx">id</span><span class="p">.</span><span class="nx">value</span> <span class="o">===</span> <span class="nx">id</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">ret</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">node</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">ret</span> <span class="o">=</span> <span class="p">[</span><span class="nx">Y_getDoc</span><span class="p">(</span><span class="nx">root</span><span class="p">).</span><span class="nx">getElementById</span><span class="p">(</span><span class="nx">id</span><span class="p">)];</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">ret</span><span class="p">;</span>
|
|
<span class="p">};</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * The selector-native module provides support for native querySelector</span>
|
|
<span class="cm"> * @module dom</span>
|
|
<span class="cm"> * @submodule selector-native</span>
|
|
<span class="cm"> * @for Selector</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Provides support for using CSS selectors to query the DOM</span>
|
|
<span class="cm"> * @class Selector</span>
|
|
<span class="cm"> * @static</span>
|
|
<span class="cm"> * @for Selector</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">COMPARE_DOCUMENT_POSITION</span> <span class="o">=</span> <span class="s1">'compareDocumentPosition'</span><span class="p">,</span>
|
|
<span class="nx">OWNER_DOCUMENT</span> <span class="o">=</span> <span class="s1">'ownerDocument'</span><span class="p">,</span>
|
|
|
|
<span class="nx">Selector</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">_foundCache</span><span class="o">:</span> <span class="p">[],</span>
|
|
|
|
<span class="nx">useNative</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span>
|
|
|
|
<span class="nx">_compare</span><span class="o">:</span> <span class="p">(</span><span class="s1">'sourceIndex'</span> <span class="k">in</span> <span class="nx">Y_DOCUMENT_ELEMENT</span><span class="p">)</span> <span class="o">?</span>
|
|
<span class="kd">function</span><span class="p">(</span><span class="nx">nodeA</span><span class="p">,</span> <span class="nx">nodeB</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">a</span> <span class="o">=</span> <span class="nx">nodeA</span><span class="p">.</span><span class="nx">sourceIndex</span><span class="p">,</span>
|
|
<span class="nx">b</span> <span class="o">=</span> <span class="nx">nodeB</span><span class="p">.</span><span class="nx">sourceIndex</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">a</span> <span class="o">===</span> <span class="nx">b</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">a</span> <span class="o">></span> <span class="nx">b</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="mi">1</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span> <span class="o">:</span> <span class="p">(</span><span class="nx">Y_DOCUMENT_ELEMENT</span><span class="p">[</span><span class="nx">COMPARE_DOCUMENT_POSITION</span><span class="p">]</span> <span class="o">?</span>
|
|
<span class="kd">function</span><span class="p">(</span><span class="nx">nodeA</span><span class="p">,</span> <span class="nx">nodeB</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodeA</span><span class="p">[</span><span class="nx">COMPARE_DOCUMENT_POSITION</span><span class="p">](</span><span class="nx">nodeB</span><span class="p">)</span> <span class="o">&</span> <span class="mi">4</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="mi">1</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span> <span class="o">:</span>
|
|
<span class="kd">function</span><span class="p">(</span><span class="nx">nodeA</span><span class="p">,</span> <span class="nx">nodeB</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">rangeA</span><span class="p">,</span> <span class="nx">rangeB</span><span class="p">,</span> <span class="nx">compare</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodeA</span> <span class="o">&&</span> <span class="nx">nodeB</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">rangeA</span> <span class="o">=</span> <span class="nx">nodeA</span><span class="p">[</span><span class="nx">OWNER_DOCUMENT</span><span class="p">].</span><span class="nx">createRange</span><span class="p">();</span>
|
|
<span class="nx">rangeA</span><span class="p">.</span><span class="nx">setStart</span><span class="p">(</span><span class="nx">nodeA</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
|
|
<span class="nx">rangeB</span> <span class="o">=</span> <span class="nx">nodeB</span><span class="p">[</span><span class="nx">OWNER_DOCUMENT</span><span class="p">].</span><span class="nx">createRange</span><span class="p">();</span>
|
|
<span class="nx">rangeB</span><span class="p">.</span><span class="nx">setStart</span><span class="p">(</span><span class="nx">nodeB</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
|
|
<span class="nx">compare</span> <span class="o">=</span> <span class="nx">rangeA</span><span class="p">.</span><span class="nx">compareBoundaryPoints</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="nx">rangeB</span><span class="p">);</span> <span class="c1">// 1 === Range.START_TO_END</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">compare</span><span class="p">;</span>
|
|
|
|
<span class="p">}),</span>
|
|
|
|
<span class="nx">_sort</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">nodes</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodes</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">nodes</span> <span class="o">=</span> <span class="nx">Y_Array</span><span class="p">(</span><span class="nx">nodes</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodes</span><span class="p">.</span><span class="nx">sort</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">nodes</span><span class="p">.</span><span class="nx">sort</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_compare</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">nodes</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_deDupe</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">nodes</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">ret</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">i</span><span class="p">,</span> <span class="nx">node</span><span class="p">;</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="p">(</span><span class="nx">node</span> <span class="o">=</span> <span class="nx">nodes</span><span class="p">[</span><span class="nx">i</span><span class="o">++</span><span class="p">]);)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">node</span><span class="p">.</span><span class="nx">_found</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">ret</span><span class="p">[</span><span class="nx">ret</span><span class="p">.</span><span class="nx">length</span><span class="p">]</span> <span class="o">=</span> <span class="nx">node</span><span class="p">;</span>
|
|
<span class="nx">node</span><span class="p">.</span><span class="nx">_found</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="p">(</span><span class="nx">node</span> <span class="o">=</span> <span class="nx">ret</span><span class="p">[</span><span class="nx">i</span><span class="o">++</span><span class="p">]);)</span> <span class="p">{</span>
|
|
<span class="nx">node</span><span class="p">.</span><span class="nx">_found</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
<span class="nx">node</span><span class="p">.</span><span class="nx">removeAttribute</span><span class="p">(</span><span class="s1">'_found'</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">ret</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Retrieves a set of nodes based on a given CSS selector.</span>
|
|
<span class="cm"> * @method query</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @param {string} selector The CSS Selector to test the node against.</span>
|
|
<span class="cm"> * @param {HTMLElement} root optional An HTMLElement to start the query from. Defaults to Y.config.doc</span>
|
|
<span class="cm"> * @param {Boolean} firstOnly optional Whether or not to return only the first match.</span>
|
|
<span class="cm"> * @return {Array} An array of nodes that match the given selector.</span>
|
|
<span class="cm"> * @static</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">query</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">selector</span><span class="p">,</span> <span class="nx">root</span><span class="p">,</span> <span class="nx">firstOnly</span><span class="p">,</span> <span class="nx">skipNative</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">root</span> <span class="o">==</span> <span class="s1">'string'</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">root</span> <span class="o">=</span> <span class="nx">Y_DOM</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="nx">root</span><span class="p">);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">root</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">firstOnly</span><span class="p">)</span> <span class="o">?</span> <span class="kc">null</span> <span class="o">:</span> <span class="p">[];</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">root</span> <span class="o">=</span> <span class="nx">root</span> <span class="o">||</span> <span class="nx">Y_DOC</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">ret</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">useNative</span> <span class="o">=</span> <span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">useNative</span> <span class="o">&&</span> <span class="nx">Y_DOC</span><span class="p">.</span><span class="nx">querySelector</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">skipNative</span><span class="p">),</span>
|
|
<span class="nx">queries</span> <span class="o">=</span> <span class="p">[[</span><span class="nx">selector</span><span class="p">,</span> <span class="nx">root</span><span class="p">]],</span>
|
|
<span class="nx">query</span><span class="p">,</span>
|
|
<span class="nx">result</span><span class="p">,</span>
|
|
<span class="nx">i</span><span class="p">,</span>
|
|
<span class="nx">fn</span> <span class="o">=</span> <span class="p">(</span><span class="nx">useNative</span><span class="p">)</span> <span class="o">?</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_nativeQuery</span> <span class="o">:</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_bruteQuery</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">selector</span> <span class="o">&&</span> <span class="nx">fn</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// split group into seperate queries</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">skipNative</span> <span class="o">&&</span> <span class="c1">// already done if skipping</span>
|
|
<span class="p">(</span><span class="o">!</span><span class="nx">useNative</span> <span class="o">||</span> <span class="nx">root</span><span class="p">.</span><span class="nx">tagName</span><span class="p">))</span> <span class="p">{</span> <span class="c1">// split native when element scoping is needed</span>
|
|
<span class="nx">queries</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_splitQueries</span><span class="p">(</span><span class="nx">selector</span><span class="p">,</span> <span class="nx">root</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="p">(</span><span class="nx">query</span> <span class="o">=</span> <span class="nx">queries</span><span class="p">[</span><span class="nx">i</span><span class="o">++</span><span class="p">]);)</span> <span class="p">{</span>
|
|
<span class="nx">result</span> <span class="o">=</span> <span class="nx">fn</span><span class="p">(</span><span class="nx">query</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="nx">query</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="nx">firstOnly</span><span class="p">);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">firstOnly</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// coerce DOM Collection to Array</span>
|
|
<span class="nx">result</span> <span class="o">=</span> <span class="nx">Y_Array</span><span class="p">(</span><span class="nx">result</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">result</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">ret</span> <span class="o">=</span> <span class="nx">ret</span><span class="p">.</span><span class="nx">concat</span><span class="p">(</span><span class="nx">result</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">queries</span><span class="p">.</span><span class="nx">length</span> <span class="o">></span> <span class="mi">1</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// remove dupes and sort by doc order</span>
|
|
<span class="nx">ret</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_sort</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_deDupe</span><span class="p">(</span><span class="nx">ret</span><span class="p">));</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">Y</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">'query: '</span> <span class="o">+</span> <span class="nx">selector</span> <span class="o">+</span> <span class="s1">' returning: '</span> <span class="o">+</span> <span class="nx">ret</span><span class="p">.</span><span class="nx">length</span><span class="p">,</span> <span class="s1">'info'</span><span class="p">,</span> <span class="s1">'Selector'</span><span class="p">);</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">firstOnly</span><span class="p">)</span> <span class="o">?</span> <span class="p">(</span><span class="nx">ret</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">||</span> <span class="kc">null</span><span class="p">)</span> <span class="o">:</span> <span class="nx">ret</span><span class="p">;</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
<span class="c1">// allows element scoped queries to begin with combinator</span>
|
|
<span class="c1">// e.g. query('> p', document.body) === query('body > p')</span>
|
|
<span class="nx">_splitQueries</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">selector</span><span class="p">,</span> <span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">groups</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">split</span><span class="p">(</span><span class="s1">','</span><span class="p">),</span>
|
|
<span class="nx">queries</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">prefix</span> <span class="o">=</span> <span class="s1">''</span><span class="p">,</span>
|
|
<span class="nx">i</span><span class="p">,</span> <span class="nx">len</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// enforce for element scoping</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">node</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">node</span><span class="p">.</span><span class="nx">id</span> <span class="o">||</span> <span class="nx">Y_guid</span><span class="p">();</span>
|
|
<span class="nx">prefix</span> <span class="o">=</span> <span class="s1">'[id="'</span> <span class="o">+</span> <span class="nx">node</span><span class="p">.</span><span class="nx">id</span> <span class="o">+</span> <span class="s1">'"] '</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">groups</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="p">;</span> <span class="o">++</span><span class="nx">i</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">prefix</span> <span class="o">+</span> <span class="nx">groups</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
<span class="nx">queries</span><span class="p">.</span><span class="nx">push</span><span class="p">([</span><span class="nx">selector</span><span class="p">,</span> <span class="nx">node</span><span class="p">]);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">queries</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_nativeQuery</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">selector</span><span class="p">,</span> <span class="nx">root</span><span class="p">,</span> <span class="nx">one</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">Y_UA</span><span class="p">.</span><span class="nx">webkit</span> <span class="o">&&</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="s1">':checked'</span><span class="p">)</span> <span class="o">></span> <span class="o">-</span><span class="mi">1</span> <span class="o">&&</span>
|
|
<span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">pseudos</span> <span class="o">&&</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">pseudos</span><span class="p">.</span><span class="nx">checked</span><span class="p">))</span> <span class="p">{</span> <span class="c1">// webkit (chrome, safari) fails to find "selected"</span>
|
|
<span class="k">return</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">query</span><span class="p">(</span><span class="nx">selector</span><span class="p">,</span> <span class="nx">root</span><span class="p">,</span> <span class="nx">one</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span> <span class="c1">// redo with skipNative true to try brute query</span>
|
|
<span class="p">}</span>
|
|
<span class="k">try</span> <span class="p">{</span>
|
|
<span class="c1">//Y.log('trying native query with: ' + selector, 'info', 'selector-native');</span>
|
|
<span class="k">return</span> <span class="nx">root</span><span class="p">[</span><span class="s1">'querySelector'</span> <span class="o">+</span> <span class="p">(</span><span class="nx">one</span> <span class="o">?</span> <span class="s1">''</span> <span class="o">:</span> <span class="s1">'All'</span><span class="p">)](</span><span class="nx">selector</span><span class="p">);</span>
|
|
<span class="p">}</span> <span class="k">catch</span><span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// fallback to brute if available</span>
|
|
<span class="c1">//Y.log('native query error; reverting to brute query with: ' + selector, 'info', 'selector-native');</span>
|
|
<span class="k">return</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">query</span><span class="p">(</span><span class="nx">selector</span><span class="p">,</span> <span class="nx">root</span><span class="p">,</span> <span class="nx">one</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span> <span class="c1">// redo with skipNative true</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">filter</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">nodes</span><span class="p">,</span> <span class="nx">selector</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">ret</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">i</span><span class="p">,</span> <span class="nx">node</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodes</span> <span class="o">&&</span> <span class="nx">selector</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="p">(</span><span class="nx">node</span> <span class="o">=</span> <span class="nx">nodes</span><span class="p">[</span><span class="nx">i</span><span class="o">++</span><span class="p">]);)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">test</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">selector</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">ret</span><span class="p">[</span><span class="nx">ret</span><span class="p">.</span><span class="nx">length</span><span class="p">]</span> <span class="o">=</span> <span class="nx">node</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">Y</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">'invalid filter input (nodes: '</span> <span class="o">+</span> <span class="nx">nodes</span> <span class="o">+</span>
|
|
<span class="s1">', selector: '</span> <span class="o">+</span> <span class="nx">selector</span> <span class="o">+</span> <span class="s1">')'</span><span class="p">,</span> <span class="s1">'warn'</span><span class="p">,</span> <span class="s1">'Selector'</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">ret</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">test</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">selector</span><span class="p">,</span> <span class="nx">root</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">ret</span> <span class="o">=</span> <span class="kc">false</span><span class="p">,</span>
|
|
<span class="nx">groups</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">split</span><span class="p">(</span><span class="s1">','</span><span class="p">),</span>
|
|
<span class="nx">useFrag</span> <span class="o">=</span> <span class="kc">false</span><span class="p">,</span>
|
|
<span class="nx">parent</span><span class="p">,</span>
|
|
<span class="nx">item</span><span class="p">,</span>
|
|
<span class="nx">items</span><span class="p">,</span>
|
|
<span class="nx">frag</span><span class="p">,</span>
|
|
<span class="nx">i</span><span class="p">,</span> <span class="nx">j</span><span class="p">,</span> <span class="nx">group</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">node</span> <span class="o">&&</span> <span class="nx">node</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// only test HTMLElements</span>
|
|
|
|
<span class="c1">// we need a root if off-doc</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">root</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">Y_DOM_inDoc</span><span class="p">(</span><span class="nx">node</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">parent</span> <span class="o">=</span> <span class="nx">node</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">parent</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">root</span> <span class="o">=</span> <span class="nx">parent</span><span class="p">;</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span> <span class="c1">// only use frag when no parent to query</span>
|
|
<span class="nx">frag</span> <span class="o">=</span> <span class="nx">node</span><span class="p">[</span><span class="nx">OWNER_DOCUMENT</span><span class="p">].</span><span class="nx">createDocumentFragment</span><span class="p">();</span>
|
|
<span class="nx">frag</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">node</span><span class="p">);</span>
|
|
<span class="nx">root</span> <span class="o">=</span> <span class="nx">frag</span><span class="p">;</span>
|
|
<span class="nx">useFrag</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="nx">root</span> <span class="o">=</span> <span class="nx">root</span> <span class="o">||</span> <span class="nx">node</span><span class="p">[</span><span class="nx">OWNER_DOCUMENT</span><span class="p">];</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">node</span><span class="p">.</span><span class="nx">id</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">node</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">Y_guid</span><span class="p">();</span>
|
|
<span class="p">}</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="p">(</span><span class="nx">group</span> <span class="o">=</span> <span class="nx">groups</span><span class="p">[</span><span class="nx">i</span><span class="o">++</span><span class="p">]);)</span> <span class="p">{</span> <span class="c1">// TODO: off-dom test</span>
|
|
<span class="nx">group</span> <span class="o">+=</span> <span class="s1">'[id="'</span> <span class="o">+</span> <span class="nx">node</span><span class="p">.</span><span class="nx">id</span> <span class="o">+</span> <span class="s1">'"]'</span><span class="p">;</span>
|
|
<span class="nx">items</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">query</span><span class="p">(</span><span class="nx">group</span><span class="p">,</span> <span class="nx">root</span><span class="p">);</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">j</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">item</span> <span class="o">=</span> <span class="nx">items</span><span class="p">[</span><span class="nx">j</span><span class="o">++</span><span class="p">];)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">item</span> <span class="o">===</span> <span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">ret</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">ret</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">useFrag</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// cleanup</span>
|
|
<span class="nx">frag</span><span class="p">.</span><span class="nx">removeChild</span><span class="p">(</span><span class="nx">node</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">ret</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Selector</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">;</span>
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * The selector module provides helper methods allowing CSS2 Selectors to be used with DOM elements.</span>
|
|
<span class="cm"> * @module dom</span>
|
|
<span class="cm"> * @submodule selector-css2</span>
|
|
<span class="cm"> * @for Selector</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Provides helper methods for collecting and filtering DOM elements.</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">PARENT_NODE</span> <span class="o">=</span> <span class="s1">'parentNode'</span><span class="p">,</span>
|
|
<span class="nx">TAG_NAME</span> <span class="o">=</span> <span class="s1">'tagName'</span><span class="p">,</span>
|
|
<span class="nx">ATTRIBUTES</span> <span class="o">=</span> <span class="s1">'attributes'</span><span class="p">,</span>
|
|
<span class="nx">COMBINATOR</span> <span class="o">=</span> <span class="s1">'combinator'</span><span class="p">,</span>
|
|
<span class="nx">PSEUDOS</span> <span class="o">=</span> <span class="s1">'pseudos'</span><span class="p">,</span>
|
|
|
|
<span class="nx">SelectorCSS2</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">_reRegExpTokens</span><span class="o">:</span> <span class="sr">/([\^\$\?\[\]\*\+\-\.\(\)\|\\])/</span><span class="p">,</span> <span class="c1">// TODO: move?</span>
|
|
<span class="nx">SORT_RESULTS</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span>
|
|
<span class="nx">_children</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">tag</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">ret</span> <span class="o">=</span> <span class="nx">node</span><span class="p">.</span><span class="nx">children</span><span class="p">,</span>
|
|
<span class="nx">i</span><span class="p">,</span>
|
|
<span class="nx">children</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">childNodes</span><span class="p">,</span>
|
|
<span class="nx">child</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">children</span> <span class="o">&&</span> <span class="nx">tag</span> <span class="o">&&</span> <span class="nx">node</span><span class="p">.</span><span class="nx">children</span><span class="p">.</span><span class="nx">tags</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">children</span> <span class="o">=</span> <span class="nx">node</span><span class="p">.</span><span class="nx">children</span><span class="p">.</span><span class="nx">tags</span><span class="p">(</span><span class="nx">tag</span><span class="p">);</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">((</span><span class="o">!</span><span class="nx">ret</span> <span class="o">&&</span> <span class="nx">node</span><span class="p">[</span><span class="nx">TAG_NAME</span><span class="p">])</span> <span class="o">||</span> <span class="p">(</span><span class="nx">ret</span> <span class="o">&&</span> <span class="nx">tag</span><span class="p">))</span> <span class="p">{</span> <span class="c1">// only HTMLElements have children</span>
|
|
<span class="nx">childNodes</span> <span class="o">=</span> <span class="nx">ret</span> <span class="o">||</span> <span class="nx">node</span><span class="p">.</span><span class="nx">childNodes</span><span class="p">;</span>
|
|
<span class="nx">ret</span> <span class="o">=</span> <span class="p">[];</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="p">(</span><span class="nx">child</span> <span class="o">=</span> <span class="nx">childNodes</span><span class="p">[</span><span class="nx">i</span><span class="o">++</span><span class="p">]);)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">child</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">tag</span> <span class="o">||</span> <span class="nx">tag</span> <span class="o">===</span> <span class="nx">child</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">ret</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">child</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">ret</span> <span class="o">||</span> <span class="p">[];</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_re</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="c1">//attr: /(\[.*\])/g,</span>
|
|
<span class="nx">attr</span><span class="o">:</span> <span class="sr">/(\[[^\]]*\])/g</span><span class="p">,</span>
|
|
<span class="c1">//esc: /\\[:\[][\w\d\]]*/gi,</span>
|
|
<span class="nx">esc</span><span class="o">:</span> <span class="sr">/\\[:\[\]\(\)#\.\'\>+~"]/gi</span><span class="p">,</span>
|
|
<span class="c1">//pseudos: /:([\-\w]+(?:\(?:['"]?(.+)['"]?\))*)/i</span>
|
|
<span class="nx">pseudos</span><span class="o">:</span> <span class="sr">/(\([^\)]*\))/g</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Mapping of shorthand tokens to corresponding attribute selector</span>
|
|
<span class="cm"> * @property shorthand</span>
|
|
<span class="cm"> * @type object</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">shorthand</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="c1">//'\\#([^\\s\\\\(\\[:]*)': '[id=$1]',</span>
|
|
<span class="s1">'\\#(-?[_a-z]+[-\\w\\uE000]*)'</span><span class="o">:</span> <span class="s1">'[id=$1]'</span><span class="p">,</span>
|
|
<span class="c1">//'\\#([^\\s\\\.:\\[\\]]*)': '[id=$1]',</span>
|
|
<span class="c1">//'\\.([^\\s\\\\(\\[:]*)': '[className=$1]'</span>
|
|
<span class="s1">'\\.(-?[_a-z]+[-\\w\\uE000]*)'</span><span class="o">:</span> <span class="s1">'[className~=$1]'</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * List of operators and corresponding boolean functions.</span>
|
|
<span class="cm"> * These functions are passed the attribute and the current node's value of the attribute.</span>
|
|
<span class="cm"> * @property operators</span>
|
|
<span class="cm"> * @type object</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">operators</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">''</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">attr</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="o">!!</span><span class="nx">node</span><span class="p">.</span><span class="nx">getAttribute</span><span class="p">(</span><span class="nx">attr</span><span class="p">);</span> <span class="p">},</span> <span class="c1">// Just test for existence of attribute</span>
|
|
<span class="c1">//'': '.+',</span>
|
|
<span class="c1">//'=': '^{val}$', // equality</span>
|
|
<span class="s1">'~='</span><span class="o">:</span> <span class="s1">'(?:^|\\s+){val}(?:\\s+|$)'</span><span class="p">,</span> <span class="c1">// space-delimited</span>
|
|
<span class="s1">'|='</span><span class="o">:</span> <span class="s1">'^{val}(?:-|$)'</span> <span class="c1">// optional hyphen-delimited</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">pseudos</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'first-child'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_children</span><span class="p">(</span><span class="nx">node</span><span class="p">[</span><span class="nx">PARENT_NODE</span><span class="p">])[</span><span class="mi">0</span><span class="p">]</span> <span class="o">===</span> <span class="nx">node</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_bruteQuery</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">selector</span><span class="p">,</span> <span class="nx">root</span><span class="p">,</span> <span class="nx">firstOnly</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">ret</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">nodes</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">tokens</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_tokenize</span><span class="p">(</span><span class="nx">selector</span><span class="p">),</span>
|
|
<span class="nx">token</span> <span class="o">=</span> <span class="nx">tokens</span><span class="p">[</span><span class="nx">tokens</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">],</span>
|
|
<span class="nx">rootDoc</span> <span class="o">=</span> <span class="nx">Y_getDoc</span><span class="p">(</span><span class="nx">root</span><span class="p">),</span>
|
|
<span class="nx">child</span><span class="p">,</span>
|
|
<span class="nx">id</span><span class="p">,</span>
|
|
<span class="nx">className</span><span class="p">,</span>
|
|
<span class="nx">tagName</span><span class="p">;</span>
|
|
|
|
|
|
<span class="c1">// if we have an initial ID, set to root when in document</span>
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> if (tokens[0] && rootDoc === root &&</span>
|
|
<span class="cm"> (id = tokens[0].id) &&</span>
|
|
<span class="cm"> rootDoc.getElementById(id)) {</span>
|
|
<span class="cm"> root = rootDoc.getElementById(id);</span>
|
|
<span class="cm"> }</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">token</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// prefilter nodes</span>
|
|
<span class="nx">id</span> <span class="o">=</span> <span class="nx">token</span><span class="p">.</span><span class="nx">id</span><span class="p">;</span>
|
|
<span class="nx">className</span> <span class="o">=</span> <span class="nx">token</span><span class="p">.</span><span class="nx">className</span><span class="p">;</span>
|
|
<span class="nx">tagName</span> <span class="o">=</span> <span class="nx">token</span><span class="p">.</span><span class="nx">tagName</span> <span class="o">||</span> <span class="s1">'*'</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">root</span><span class="p">.</span><span class="nx">getElementsByTagName</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// non-IE lacks DOM api on doc frags</span>
|
|
<span class="c1">// try ID first, unless no root.all && root not in document</span>
|
|
<span class="c1">// (root.all works off document, but not getElementById)</span>
|
|
<span class="c1">// TODO: move to allById?</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">id</span> <span class="o">&&</span> <span class="p">(</span><span class="nx">root</span><span class="p">.</span><span class="nx">all</span> <span class="o">||</span> <span class="p">(</span><span class="nx">root</span><span class="p">.</span><span class="nx">nodeType</span> <span class="o">===</span> <span class="mi">9</span> <span class="o">||</span> <span class="nx">Y_DOM_inDoc</span><span class="p">(</span><span class="nx">root</span><span class="p">))))</span> <span class="p">{</span>
|
|
<span class="nx">nodes</span> <span class="o">=</span> <span class="nx">Y_DOM_allById</span><span class="p">(</span><span class="nx">id</span><span class="p">,</span> <span class="nx">root</span><span class="p">);</span>
|
|
<span class="c1">// try className</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">className</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">nodes</span> <span class="o">=</span> <span class="nx">root</span><span class="p">.</span><span class="nx">getElementsByClassName</span><span class="p">(</span><span class="nx">className</span><span class="p">);</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span> <span class="c1">// default to tagName</span>
|
|
<span class="nx">nodes</span> <span class="o">=</span> <span class="nx">root</span><span class="p">.</span><span class="nx">getElementsByTagName</span><span class="p">(</span><span class="nx">tagName</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span> <span class="c1">// brute getElementsByTagName('*')</span>
|
|
<span class="nx">child</span> <span class="o">=</span> <span class="nx">root</span><span class="p">.</span><span class="nx">firstChild</span><span class="p">;</span>
|
|
<span class="k">while</span> <span class="p">(</span><span class="nx">child</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">child</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// only collect HTMLElements</span>
|
|
<span class="nx">nodes</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">child</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="nx">child</span> <span class="o">=</span> <span class="nx">child</span><span class="p">.</span><span class="nx">nextSilbing</span> <span class="o">||</span> <span class="nx">child</span><span class="p">.</span><span class="nx">firstChild</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nodes</span><span class="p">.</span><span class="nx">length</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">ret</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_filterNodes</span><span class="p">(</span><span class="nx">nodes</span><span class="p">,</span> <span class="nx">tokens</span><span class="p">,</span> <span class="nx">firstOnly</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">ret</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_filterNodes</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">nodes</span><span class="p">,</span> <span class="nx">tokens</span><span class="p">,</span> <span class="nx">firstOnly</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span>
|
|
<span class="nx">j</span><span class="p">,</span>
|
|
<span class="nx">len</span> <span class="o">=</span> <span class="nx">tokens</span><span class="p">.</span><span class="nx">length</span><span class="p">,</span>
|
|
<span class="nx">n</span> <span class="o">=</span> <span class="nx">len</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span>
|
|
<span class="nx">result</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">node</span> <span class="o">=</span> <span class="nx">nodes</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">tmpNode</span> <span class="o">=</span> <span class="nx">node</span><span class="p">,</span>
|
|
<span class="nx">getters</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">getters</span><span class="p">,</span>
|
|
<span class="nx">operator</span><span class="p">,</span>
|
|
<span class="nx">combinator</span><span class="p">,</span>
|
|
<span class="nx">token</span><span class="p">,</span>
|
|
<span class="nx">path</span><span class="p">,</span>
|
|
<span class="nx">pass</span><span class="p">,</span>
|
|
<span class="c1">//FUNCTION = 'function',</span>
|
|
<span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">tests</span><span class="p">,</span>
|
|
<span class="nx">test</span><span class="p">;</span>
|
|
|
|
<span class="c1">//do {</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="p">(</span><span class="nx">tmpNode</span> <span class="o">=</span> <span class="nx">node</span> <span class="o">=</span> <span class="nx">nodes</span><span class="p">[</span><span class="nx">i</span><span class="o">++</span><span class="p">]);)</span> <span class="p">{</span>
|
|
<span class="nx">n</span> <span class="o">=</span> <span class="nx">len</span> <span class="o">-</span> <span class="mi">1</span><span class="p">;</span>
|
|
<span class="nx">path</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="nx">testLoop</span><span class="o">:</span>
|
|
<span class="k">while</span> <span class="p">(</span><span class="nx">tmpNode</span> <span class="o">&&</span> <span class="nx">tmpNode</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">token</span> <span class="o">=</span> <span class="nx">tokens</span><span class="p">[</span><span class="nx">n</span><span class="p">];</span>
|
|
<span class="nx">tests</span> <span class="o">=</span> <span class="nx">token</span><span class="p">.</span><span class="nx">tests</span><span class="p">;</span>
|
|
<span class="nx">j</span> <span class="o">=</span> <span class="nx">tests</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">j</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">pass</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">while</span> <span class="p">((</span><span class="nx">test</span> <span class="o">=</span> <span class="nx">tests</span><span class="p">[</span><span class="o">--</span><span class="nx">j</span><span class="p">]))</span> <span class="p">{</span>
|
|
<span class="nx">operator</span> <span class="o">=</span> <span class="nx">test</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">getters</span><span class="p">[</span><span class="nx">test</span><span class="p">[</span><span class="mi">0</span><span class="p">]])</span> <span class="p">{</span>
|
|
<span class="nx">value</span> <span class="o">=</span> <span class="nx">getters</span><span class="p">[</span><span class="nx">test</span><span class="p">[</span><span class="mi">0</span><span class="p">]](</span><span class="nx">tmpNode</span><span class="p">,</span> <span class="nx">test</span><span class="p">[</span><span class="mi">0</span><span class="p">]);</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">value</span> <span class="o">=</span> <span class="nx">tmpNode</span><span class="p">[</span><span class="nx">test</span><span class="p">[</span><span class="mi">0</span><span class="p">]];</span>
|
|
<span class="c1">// use getAttribute for non-standard attributes</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">value</span> <span class="o">===</span> <span class="kc">undefined</span> <span class="o">&&</span> <span class="nx">tmpNode</span><span class="p">.</span><span class="nx">getAttribute</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">value</span> <span class="o">=</span> <span class="nx">tmpNode</span><span class="p">.</span><span class="nx">getAttribute</span><span class="p">(</span><span class="nx">test</span><span class="p">[</span><span class="mi">0</span><span class="p">]);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">((</span><span class="nx">operator</span> <span class="o">===</span> <span class="s1">'='</span> <span class="o">&&</span> <span class="nx">value</span> <span class="o">!==</span> <span class="nx">test</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span> <span class="o">||</span> <span class="c1">// fast path for equality</span>
|
|
<span class="p">(</span><span class="k">typeof</span> <span class="nx">operator</span> <span class="o">!==</span> <span class="s1">'string'</span> <span class="o">&&</span> <span class="c1">// protect against String.test monkey-patch (Moo)</span>
|
|
<span class="nx">operator</span><span class="p">.</span><span class="nx">test</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">operator</span><span class="p">.</span><span class="nx">test</span><span class="p">(</span><span class="nx">value</span><span class="p">))</span> <span class="o">||</span> <span class="c1">// regex test</span>
|
|
<span class="p">(</span><span class="o">!</span><span class="nx">operator</span><span class="p">.</span><span class="nx">test</span> <span class="o">&&</span> <span class="c1">// protect against RegExp as function (webkit)</span>
|
|
<span class="k">typeof</span> <span class="nx">operator</span> <span class="o">===</span> <span class="s1">'function'</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">operator</span><span class="p">(</span><span class="nx">tmpNode</span><span class="p">,</span> <span class="nx">test</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="nx">test</span><span class="p">[</span><span class="mi">2</span><span class="p">])))</span> <span class="p">{</span> <span class="c1">// function test</span>
|
|
|
|
<span class="c1">// skip non element nodes or non-matching tags</span>
|
|
<span class="k">if</span> <span class="p">((</span><span class="nx">tmpNode</span> <span class="o">=</span> <span class="nx">tmpNode</span><span class="p">[</span><span class="nx">path</span><span class="p">]))</span> <span class="p">{</span>
|
|
<span class="k">while</span> <span class="p">(</span><span class="nx">tmpNode</span> <span class="o">&&</span>
|
|
<span class="p">(</span><span class="o">!</span><span class="nx">tmpNode</span><span class="p">.</span><span class="nx">tagName</span> <span class="o">||</span>
|
|
<span class="p">(</span><span class="nx">token</span><span class="p">.</span><span class="nx">tagName</span> <span class="o">&&</span> <span class="nx">token</span><span class="p">.</span><span class="nx">tagName</span> <span class="o">!==</span> <span class="nx">tmpNode</span><span class="p">.</span><span class="nx">tagName</span><span class="p">))</span>
|
|
<span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">tmpNode</span> <span class="o">=</span> <span class="nx">tmpNode</span><span class="p">[</span><span class="nx">path</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="k">continue</span> <span class="nx">testLoop</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">n</span><span class="o">--</span><span class="p">;</span> <span class="c1">// move to next token</span>
|
|
<span class="c1">// now that we've passed the test, move up the tree by combinator</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">pass</span> <span class="o">&&</span> <span class="p">(</span><span class="nx">combinator</span> <span class="o">=</span> <span class="nx">token</span><span class="p">.</span><span class="nx">combinator</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">path</span> <span class="o">=</span> <span class="nx">combinator</span><span class="p">.</span><span class="nx">axis</span><span class="p">;</span>
|
|
<span class="nx">tmpNode</span> <span class="o">=</span> <span class="nx">tmpNode</span><span class="p">[</span><span class="nx">path</span><span class="p">];</span>
|
|
|
|
<span class="c1">// skip non element nodes</span>
|
|
<span class="k">while</span> <span class="p">(</span><span class="nx">tmpNode</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">tmpNode</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">tmpNode</span> <span class="o">=</span> <span class="nx">tmpNode</span><span class="p">[</span><span class="nx">path</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">combinator</span><span class="p">.</span><span class="nx">direct</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// one pass only</span>
|
|
<span class="nx">path</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span> <span class="c1">// success if we made it this far</span>
|
|
<span class="nx">result</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">node</span><span class="p">);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">firstOnly</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">result</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span><span class="c1">// while (tmpNode = node = nodes[++i]);</span>
|
|
<span class="nx">node</span> <span class="o">=</span> <span class="nx">tmpNode</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
<span class="k">return</span> <span class="nx">result</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">combinators</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">' '</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="nx">axis</span><span class="o">:</span> <span class="s1">'parentNode'</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'>'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="nx">axis</span><span class="o">:</span> <span class="s1">'parentNode'</span><span class="p">,</span>
|
|
<span class="nx">direct</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="s1">'+'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="nx">axis</span><span class="o">:</span> <span class="s1">'previousSibling'</span><span class="p">,</span>
|
|
<span class="nx">direct</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_parsers</span><span class="o">:</span> <span class="p">[</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">name</span><span class="o">:</span> <span class="nx">ATTRIBUTES</span><span class="p">,</span>
|
|
<span class="c1">//re: /^\[(-?[a-z]+[\w\-]*)+([~\|\^\$\*!=]=?)?['"]?([^\]]*?)['"]?\]/i,</span>
|
|
<span class="nx">re</span><span class="o">:</span> <span class="sr">/^\uE003(-?[a-z]+[\w\-]*)+([~\|\^\$\*!=]=?)?['"]?([^\uE004'"]*)['"]?\uE004/i</span><span class="p">,</span>
|
|
<span class="nx">fn</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">match</span><span class="p">,</span> <span class="nx">token</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">operator</span> <span class="o">=</span> <span class="nx">match</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">||</span> <span class="s1">''</span><span class="p">,</span>
|
|
<span class="nx">operators</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">operators</span><span class="p">,</span>
|
|
<span class="nx">escVal</span> <span class="o">=</span> <span class="p">(</span><span class="nx">match</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span> <span class="o">?</span> <span class="nx">match</span><span class="p">[</span><span class="mi">3</span><span class="p">].</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\\/g</span><span class="p">,</span> <span class="s1">''</span><span class="p">)</span> <span class="o">:</span> <span class="s1">''</span><span class="p">,</span>
|
|
<span class="nx">test</span><span class="p">;</span>
|
|
|
|
<span class="c1">// add prefiltering for ID and CLASS</span>
|
|
<span class="k">if</span> <span class="p">((</span><span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">===</span> <span class="s1">'id'</span> <span class="o">&&</span> <span class="nx">operator</span> <span class="o">===</span> <span class="s1">'='</span><span class="p">)</span> <span class="o">||</span>
|
|
<span class="p">(</span><span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">===</span> <span class="s1">'className'</span> <span class="o">&&</span>
|
|
<span class="nx">Y_DOCUMENT_ELEMENT</span><span class="p">.</span><span class="nx">getElementsByClassName</span> <span class="o">&&</span>
|
|
<span class="p">(</span><span class="nx">operator</span> <span class="o">===</span> <span class="s1">'~='</span> <span class="o">||</span> <span class="nx">operator</span> <span class="o">===</span> <span class="s1">'='</span><span class="p">)))</span> <span class="p">{</span>
|
|
<span class="nx">token</span><span class="p">.</span><span class="nx">prefilter</span> <span class="o">=</span> <span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span>
|
|
|
|
|
|
<span class="nx">match</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="nx">escVal</span><span class="p">;</span>
|
|
|
|
<span class="c1">// escape all but ID for prefilter, which may run through QSA (via Dom.allById)</span>
|
|
<span class="nx">token</span><span class="p">[</span><span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">]]</span> <span class="o">=</span> <span class="p">(</span><span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">===</span> <span class="s1">'id'</span><span class="p">)</span> <span class="o">?</span> <span class="nx">match</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">:</span> <span class="nx">escVal</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// add tests</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">operator</span> <span class="k">in</span> <span class="nx">operators</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">test</span> <span class="o">=</span> <span class="nx">operators</span><span class="p">[</span><span class="nx">operator</span><span class="p">];</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">test</span> <span class="o">===</span> <span class="s1">'string'</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">match</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="nx">escVal</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_reRegExpTokens</span><span class="p">,</span> <span class="s1">'\\$1'</span><span class="p">);</span>
|
|
<span class="nx">test</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">RegExp</span><span class="p">(</span><span class="nx">test</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="s1">'{val}'</span><span class="p">,</span> <span class="nx">match</span><span class="p">[</span><span class="mi">3</span><span class="p">]));</span>
|
|
<span class="p">}</span>
|
|
<span class="nx">match</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">=</span> <span class="nx">test</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">token</span><span class="p">.</span><span class="nx">last</span> <span class="o">||</span> <span class="nx">token</span><span class="p">.</span><span class="nx">prefilter</span> <span class="o">!==</span> <span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">match</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">name</span><span class="o">:</span> <span class="nx">TAG_NAME</span><span class="p">,</span>
|
|
<span class="nx">re</span><span class="o">:</span> <span class="sr">/^((?:-?[_a-z]+[\w-]*)|\*)/i</span><span class="p">,</span>
|
|
<span class="nx">fn</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">match</span><span class="p">,</span> <span class="nx">token</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">tag</span> <span class="o">=</span> <span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="nx">toUpperCase</span><span class="p">();</span>
|
|
<span class="nx">token</span><span class="p">.</span><span class="nx">tagName</span> <span class="o">=</span> <span class="nx">tag</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">tag</span> <span class="o">!==</span> <span class="s1">'*'</span> <span class="o">&&</span> <span class="p">(</span><span class="o">!</span><span class="nx">token</span><span class="p">.</span><span class="nx">last</span> <span class="o">||</span> <span class="nx">token</span><span class="p">.</span><span class="nx">prefilter</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="p">[</span><span class="nx">TAG_NAME</span><span class="p">,</span> <span class="s1">'='</span><span class="p">,</span> <span class="nx">tag</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">token</span><span class="p">.</span><span class="nx">prefilter</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">token</span><span class="p">.</span><span class="nx">prefilter</span> <span class="o">=</span> <span class="s1">'tagName'</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">name</span><span class="o">:</span> <span class="nx">COMBINATOR</span><span class="p">,</span>
|
|
<span class="nx">re</span><span class="o">:</span> <span class="sr">/^\s*([>+~]|\s)\s*/</span><span class="p">,</span>
|
|
<span class="nx">fn</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">match</span><span class="p">,</span> <span class="nx">token</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">name</span><span class="o">:</span> <span class="nx">PSEUDOS</span><span class="p">,</span>
|
|
<span class="nx">re</span><span class="o">:</span> <span class="sr">/^:([\-\w]+)(?:\uE005['"]?([^\uE005]*)['"]?\uE006)*/i</span><span class="p">,</span>
|
|
<span class="nx">fn</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">match</span><span class="p">,</span> <span class="nx">token</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">test</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">[</span><span class="nx">PSEUDOS</span><span class="p">][</span><span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">]];</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">test</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// reorder match array and unescape special chars for tests</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">match</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span> <span class="p">{</span>
|
|
<span class="nx">match</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">=</span> <span class="nx">match</span><span class="p">[</span><span class="mi">2</span><span class="p">].</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\\/g</span><span class="p">,</span> <span class="s1">''</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="k">return</span> <span class="p">[</span><span class="nx">match</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span> <span class="nx">test</span><span class="p">];</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span> <span class="c1">// selector token not supported (possibly missing CSS3 module)</span>
|
|
<span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">],</span>
|
|
|
|
<span class="nx">_getToken</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">token</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="p">{</span>
|
|
<span class="nx">tagName</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
<span class="nx">id</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
<span class="nx">className</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
<span class="nx">attributes</span><span class="o">:</span> <span class="p">{},</span>
|
|
<span class="nx">combinator</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
<span class="nx">tests</span><span class="o">:</span> <span class="p">[]</span>
|
|
<span class="p">};</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> Break selector into token units per simple selector.</span>
|
|
<span class="cm"> Combinator is attached to the previous token.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_tokenize</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">selector</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span> <span class="o">||</span> <span class="s1">''</span><span class="p">;</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_replaceShorthand</span><span class="p">(</span><span class="nx">Y_Lang</span><span class="p">.</span><span class="nx">trim</span><span class="p">(</span><span class="nx">selector</span><span class="p">));</span>
|
|
<span class="kd">var</span> <span class="nx">token</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_getToken</span><span class="p">(),</span> <span class="c1">// one token per simple selector (left selector holds combinator)</span>
|
|
<span class="nx">query</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">,</span> <span class="c1">// original query for debug report</span>
|
|
<span class="nx">tokens</span> <span class="o">=</span> <span class="p">[],</span> <span class="c1">// array of tokens</span>
|
|
<span class="nx">found</span> <span class="o">=</span> <span class="kc">false</span><span class="p">,</span> <span class="c1">// whether or not any matches were found this pass</span>
|
|
<span class="nx">match</span><span class="p">,</span> <span class="c1">// the regex match</span>
|
|
<span class="nx">test</span><span class="p">,</span>
|
|
<span class="nx">i</span><span class="p">,</span> <span class="nx">parser</span><span class="p">;</span>
|
|
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> Search for selector patterns, store, and strip them from the selector string</span>
|
|
<span class="cm"> until no patterns match (invalid selector) or we run out of chars.</span>
|
|
|
|
<span class="cm"> Multiple attributes and pseudos are allowed, in any order.</span>
|
|
<span class="cm"> for example:</span>
|
|
<span class="cm"> 'form:first-child[type=button]:not(button)[lang|=en]'</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="nx">outer</span><span class="o">:</span>
|
|
<span class="k">do</span> <span class="p">{</span>
|
|
<span class="nx">found</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span> <span class="c1">// reset after full pass</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="p">(</span><span class="nx">parser</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_parsers</span><span class="p">[</span><span class="nx">i</span><span class="o">++</span><span class="p">]);)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span> <span class="p">(</span><span class="nx">match</span> <span class="o">=</span> <span class="nx">parser</span><span class="p">.</span><span class="nx">re</span><span class="p">.</span><span class="nx">exec</span><span class="p">(</span><span class="nx">selector</span><span class="p">))</span> <span class="p">)</span> <span class="p">{</span> <span class="c1">// note assignment</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">parser</span><span class="p">.</span><span class="nx">name</span> <span class="o">!==</span> <span class="nx">COMBINATOR</span> <span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">token</span><span class="p">.</span><span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="nx">match</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="s1">''</span><span class="p">);</span> <span class="c1">// strip current match from selector</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">selector</span><span class="p">.</span><span class="nx">length</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">token</span><span class="p">.</span><span class="nx">last</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_attrFilters</span><span class="p">[</span><span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">]])</span> <span class="p">{</span> <span class="c1">// convert class to className, etc.</span>
|
|
<span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_attrFilters</span><span class="p">[</span><span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">]];</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">test</span> <span class="o">=</span> <span class="nx">parser</span><span class="p">.</span><span class="nx">fn</span><span class="p">(</span><span class="nx">match</span><span class="p">,</span> <span class="nx">token</span><span class="p">);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">test</span> <span class="o">===</span> <span class="kc">false</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// selector not supported</span>
|
|
<span class="nx">found</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="k">break</span> <span class="nx">outer</span><span class="p">;</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">test</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">token</span><span class="p">.</span><span class="nx">tests</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">test</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">selector</span><span class="p">.</span><span class="nx">length</span> <span class="o">||</span> <span class="nx">parser</span><span class="p">.</span><span class="nx">name</span> <span class="o">===</span> <span class="nx">COMBINATOR</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">tokens</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">token</span><span class="p">);</span>
|
|
<span class="nx">token</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_getToken</span><span class="p">(</span><span class="nx">token</span><span class="p">);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">parser</span><span class="p">.</span><span class="nx">name</span> <span class="o">===</span> <span class="nx">COMBINATOR</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">token</span><span class="p">.</span><span class="nx">combinator</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">combinators</span><span class="p">[</span><span class="nx">match</span><span class="p">[</span><span class="mi">1</span><span class="p">]];</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="nx">found</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span> <span class="k">while</span> <span class="p">(</span><span class="nx">found</span> <span class="o">&&</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">length</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">found</span> <span class="o">||</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">length</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// not fully parsed</span>
|
|
<span class="nx">Y</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">'query: '</span> <span class="o">+</span> <span class="nx">query</span> <span class="o">+</span> <span class="s1">' contains unsupported token in: '</span> <span class="o">+</span> <span class="nx">selector</span><span class="p">,</span> <span class="s1">'warn'</span><span class="p">,</span> <span class="s1">'Selector'</span><span class="p">);</span>
|
|
<span class="nx">tokens</span> <span class="o">=</span> <span class="p">[];</span>
|
|
<span class="p">}</span>
|
|
<span class="k">return</span> <span class="nx">tokens</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_replaceShorthand</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">selector</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">shorthand</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">shorthand</span><span class="p">,</span>
|
|
<span class="nx">esc</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">match</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_re</span><span class="p">.</span><span class="nx">esc</span><span class="p">),</span> <span class="c1">// pull escaped colon, brackets, etc.</span>
|
|
<span class="nx">attrs</span><span class="p">,</span>
|
|
<span class="nx">pseudos</span><span class="p">,</span>
|
|
<span class="nx">re</span><span class="p">,</span> <span class="nx">i</span><span class="p">,</span> <span class="nx">len</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">esc</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_re</span><span class="p">.</span><span class="nx">esc</span><span class="p">,</span> <span class="s1">'\uE000'</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">attrs</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">match</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_re</span><span class="p">.</span><span class="nx">attr</span><span class="p">);</span>
|
|
<span class="nx">pseudos</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">match</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_re</span><span class="p">.</span><span class="nx">pseudos</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">attrs</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_re</span><span class="p">.</span><span class="nx">attr</span><span class="p">,</span> <span class="s1">'\uE001'</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">pseudos</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">_re</span><span class="p">.</span><span class="nx">pseudos</span><span class="p">,</span> <span class="s1">'\uE002'</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">re</span> <span class="k">in</span> <span class="nx">shorthand</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">shorthand</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">re</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="k">new</span> <span class="nb">RegExp</span><span class="p">(</span><span class="nx">re</span><span class="p">,</span> <span class="s1">'gi'</span><span class="p">),</span> <span class="nx">shorthand</span><span class="p">[</span><span class="nx">re</span><span class="p">]);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">attrs</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">attrs</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="p">;</span> <span class="o">++</span><span class="nx">i</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\uE001/</span><span class="p">,</span> <span class="nx">attrs</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">pseudos</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">pseudos</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="p">;</span> <span class="o">++</span><span class="nx">i</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\uE002/</span><span class="p">,</span> <span class="nx">pseudos</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\[/g</span><span class="p">,</span> <span class="s1">'\uE003'</span><span class="p">);</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\]/g</span><span class="p">,</span> <span class="s1">'\uE004'</span><span class="p">);</span>
|
|
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\(/g</span><span class="p">,</span> <span class="s1">'\uE005'</span><span class="p">);</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\)/g</span><span class="p">,</span> <span class="s1">'\uE006'</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">esc</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">esc</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="p">;</span> <span class="o">++</span><span class="nx">i</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">selector</span> <span class="o">=</span> <span class="nx">selector</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="s1">'\uE000'</span><span class="p">,</span> <span class="nx">esc</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">selector</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_attrFilters</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'class'</span><span class="o">:</span> <span class="s1">'className'</span><span class="p">,</span>
|
|
<span class="s1">'for'</span><span class="o">:</span> <span class="s1">'htmlFor'</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">getters</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="nx">href</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">attr</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">Y_DOM</span><span class="p">.</span><span class="nx">getAttribute</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">attr</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">};</span>
|
|
|
|
<span class="nx">Y_mix</span><span class="p">(</span><span class="nx">Selector</span><span class="p">,</span> <span class="nx">SelectorCSS2</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
<span class="nx">Selector</span><span class="p">.</span><span class="nx">getters</span><span class="p">.</span><span class="nx">src</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">getters</span><span class="p">.</span><span class="nx">rel</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">getters</span><span class="p">.</span><span class="nx">href</span><span class="p">;</span>
|
|
|
|
<span class="c1">// IE wants class with native queries</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">useNative</span> <span class="o">&&</span> <span class="nx">Y_DOC</span><span class="p">.</span><span class="nx">querySelector</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">Selector</span><span class="p">.</span><span class="nx">shorthand</span><span class="p">[</span><span class="s1">'\\.([^\\s\\\\(\\[:]*)'</span><span class="p">]</span> <span class="o">=</span> <span class="s1">'[class~=$1]'</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * The selector css3 module provides support for css3 selectors.</span>
|
|
<span class="cm"> * @module dom</span>
|
|
<span class="cm"> * @submodule selector-css3</span>
|
|
<span class="cm"> * @for Selector</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> an+b = get every _a_th node starting at the _b_th</span>
|
|
<span class="cm"> 0n+b = no repeat ("0" and "n" may both be omitted (together) , e.g. "0n+1" or "1", not "0+1"), return only the _b_th element</span>
|
|
<span class="cm"> 1n+b = get every element starting from b ("1" may may be omitted, e.g. "1n+0" or "n+0" or "n")</span>
|
|
<span class="cm"> an+0 = get every _a_th element, "0" may be omitted</span>
|
|
<span class="cm">*/</span>
|
|
|
|
<span class="nx">Selector</span><span class="p">.</span><span class="nx">_reNth</span> <span class="o">=</span> <span class="sr">/^(?:([\-]?\d*)(n){1}|(odd|even)$)*([\-+]?\d*)$/</span><span class="p">;</span>
|
|
|
|
<span class="nx">Selector</span><span class="p">.</span><span class="nx">_getNth</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">,</span> <span class="nx">tag</span><span class="p">,</span> <span class="nx">reverse</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">Selector</span><span class="p">.</span><span class="nx">_reNth</span><span class="p">.</span><span class="nx">test</span><span class="p">(</span><span class="nx">expr</span><span class="p">);</span>
|
|
<span class="kd">var</span> <span class="nx">a</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="p">(</span><span class="nb">RegExp</span><span class="p">.</span><span class="nx">$1</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span> <span class="c1">// include every _a_ elements (zero means no repeat, just first _a_)</span>
|
|
<span class="nx">n</span> <span class="o">=</span> <span class="nb">RegExp</span><span class="p">.</span><span class="nx">$2</span><span class="p">,</span> <span class="c1">// "n"</span>
|
|
<span class="nx">oddeven</span> <span class="o">=</span> <span class="nb">RegExp</span><span class="p">.</span><span class="nx">$3</span><span class="p">,</span> <span class="c1">// "odd" or "even"</span>
|
|
<span class="nx">b</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="p">(</span><span class="nb">RegExp</span><span class="p">.</span><span class="nx">$4</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span> <span class="o">||</span> <span class="mi">0</span><span class="p">,</span> <span class="c1">// start scan from element _b_</span>
|
|
<span class="nx">result</span> <span class="o">=</span> <span class="p">[],</span>
|
|
<span class="nx">siblings</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_children</span><span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">,</span> <span class="nx">tag</span><span class="p">),</span>
|
|
<span class="nx">op</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oddeven</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">a</span> <span class="o">=</span> <span class="mi">2</span><span class="p">;</span> <span class="c1">// always every other</span>
|
|
<span class="nx">op</span> <span class="o">=</span> <span class="s1">'+'</span><span class="p">;</span>
|
|
<span class="nx">n</span> <span class="o">=</span> <span class="s1">'n'</span><span class="p">;</span>
|
|
<span class="nx">b</span> <span class="o">=</span> <span class="p">(</span><span class="nx">oddeven</span> <span class="o">===</span> <span class="s1">'odd'</span><span class="p">)</span> <span class="o">?</span> <span class="mi">1</span> <span class="o">:</span> <span class="mi">0</span><span class="p">;</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span> <span class="nb">isNaN</span><span class="p">(</span><span class="nx">a</span><span class="p">)</span> <span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">a</span> <span class="o">=</span> <span class="p">(</span><span class="nx">n</span><span class="p">)</span> <span class="o">?</span> <span class="mi">1</span> <span class="o">:</span> <span class="mi">0</span><span class="p">;</span> <span class="c1">// start from the first or no repeat</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">a</span> <span class="o">===</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// just the first</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">reverse</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">b</span> <span class="o">=</span> <span class="nx">siblings</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="nx">b</span> <span class="o">+</span> <span class="mi">1</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">siblings</span><span class="p">[</span><span class="nx">b</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]</span> <span class="o">===</span> <span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">a</span> <span class="o"><</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">reverse</span> <span class="o">=</span> <span class="o">!!</span><span class="nx">reverse</span><span class="p">;</span>
|
|
<span class="nx">a</span> <span class="o">=</span> <span class="nb">Math</span><span class="p">.</span><span class="nx">abs</span><span class="p">(</span><span class="nx">a</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">reverse</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="nx">b</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">siblings</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span><span class="p">;</span> <span class="nx">i</span> <span class="o">+=</span> <span class="nx">a</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span> <span class="nx">i</span> <span class="o">>=</span> <span class="mi">0</span> <span class="o">&&</span> <span class="nx">siblings</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">===</span> <span class="nx">node</span> <span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="nx">siblings</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="nx">b</span><span class="p">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">siblings</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span> <span class="o">>=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">-=</span> <span class="nx">a</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">len</span> <span class="o">&&</span> <span class="nx">siblings</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">===</span> <span class="nx">node</span> <span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">};</span>
|
|
|
|
<span class="nx">Y_mix</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">pseudos</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="s1">'root'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">node</span> <span class="o">===</span> <span class="nx">node</span><span class="p">.</span><span class="nx">ownerDocument</span><span class="p">.</span><span class="nx">documentElement</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'nth-child'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_getNth</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'nth-last-child'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_getNth</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">,</span> <span class="kc">null</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'nth-of-type'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_getNth</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">,</span> <span class="nx">node</span><span class="p">.</span><span class="nx">tagName</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'nth-last-of-type'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_getNth</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">,</span> <span class="nx">node</span><span class="p">.</span><span class="nx">tagName</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'last-child'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">children</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_children</span><span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">);</span>
|
|
<span class="k">return</span> <span class="nx">children</span><span class="p">[</span><span class="nx">children</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]</span> <span class="o">===</span> <span class="nx">node</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'first-of-type'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_children</span><span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">,</span> <span class="nx">node</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span> <span class="o">===</span> <span class="nx">node</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'last-of-type'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">children</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_children</span><span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">,</span> <span class="nx">node</span><span class="p">.</span><span class="nx">tagName</span><span class="p">);</span>
|
|
<span class="k">return</span> <span class="nx">children</span><span class="p">[</span><span class="nx">children</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]</span> <span class="o">===</span> <span class="nx">node</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'only-child'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">children</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_children</span><span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">);</span>
|
|
<span class="k">return</span> <span class="nx">children</span><span class="p">.</span><span class="nx">length</span> <span class="o">===</span> <span class="mi">1</span> <span class="o">&&</span> <span class="nx">children</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">===</span> <span class="nx">node</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'only-of-type'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">children</span> <span class="o">=</span> <span class="nx">Selector</span><span class="p">.</span><span class="nx">_children</span><span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">,</span> <span class="nx">node</span><span class="p">.</span><span class="nx">tagName</span><span class="p">);</span>
|
|
<span class="k">return</span> <span class="nx">children</span><span class="p">.</span><span class="nx">length</span> <span class="o">===</span> <span class="mi">1</span> <span class="o">&&</span> <span class="nx">children</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">===</span> <span class="nx">node</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'empty'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">node</span><span class="p">.</span><span class="nx">childNodes</span><span class="p">.</span><span class="nx">length</span> <span class="o">===</span> <span class="mi">0</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'not'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="o">!</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">test</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'contains'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">expr</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">text</span> <span class="o">=</span> <span class="nx">node</span><span class="p">.</span><span class="nx">innerText</span> <span class="o">||</span> <span class="nx">node</span><span class="p">.</span><span class="nx">textContent</span> <span class="o">||</span> <span class="s1">''</span><span class="p">;</span>
|
|
<span class="k">return</span> <span class="nx">text</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="nx">expr</span><span class="p">)</span> <span class="o">></span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'checked'</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">checked</span> <span class="o">===</span> <span class="kc">true</span> <span class="o">||</span> <span class="nx">node</span><span class="p">.</span><span class="nx">selected</span> <span class="o">===</span> <span class="kc">true</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">enabled</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">disabled</span> <span class="o">!==</span> <span class="kc">undefined</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">node</span><span class="p">.</span><span class="nx">disabled</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">disabled</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">disabled</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">});</span>
|
|
|
|
<span class="nx">Y_mix</span><span class="p">(</span><span class="nx">Selector</span><span class="p">.</span><span class="nx">operators</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="s1">'^='</span><span class="o">:</span> <span class="s1">'^{val}'</span><span class="p">,</span> <span class="c1">// Match starts with value</span>
|
|
<span class="s1">'!='</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">attr</span><span class="p">,</span> <span class="nx">val</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="nx">node</span><span class="p">[</span><span class="nx">attr</span><span class="p">]</span> <span class="o">!==</span> <span class="nx">val</span><span class="p">;</span> <span class="p">},</span> <span class="c1">// Match starts with value</span>
|
|
<span class="s1">'$='</span><span class="o">:</span> <span class="s1">'{val}$'</span><span class="p">,</span> <span class="c1">// Match ends with value</span>
|
|
<span class="s1">'*='</span><span class="o">:</span> <span class="s1">'{val}'</span> <span class="c1">// Match contains value as substring</span>
|
|
<span class="p">});</span>
|
|
|
|
<span class="nx">Selector</span><span class="p">.</span><span class="nx">combinators</span><span class="p">[</span><span class="s1">'~'</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">axis</span><span class="o">:</span> <span class="s1">'previousSibling'</span>
|
|
<span class="p">};</span>
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">register</span><span class="p">(</span><span class="s2">"selector"</span><span class="p">,</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Selector</span><span class="p">,</span> <span class="p">{</span><span class="nx">version</span><span class="o">:</span> <span class="s2">"@VERSION@"</span><span class="p">,</span> <span class="nx">build</span><span class="o">:</span> <span class="s2">"@BUILD@"</span><span class="p">});</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="selected"><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 id="classList" class="module">
|
|
<h4>Classes</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="YAHOO.util.Chain.html" title="YAHOO.util.Chain">YAHOO.util.Chain</a></li>
|
|
<li class=""><a href="YAHOO.util.ColumnDD.html" title="YAHOO.util.ColumnDD">YAHOO.util.ColumnDD</a></li>
|
|
<li class=""><a href="YAHOO.util.ColumnResizer.html" title="YAHOO.util.ColumnResizer">YAHOO.util.ColumnResizer</a></li>
|
|
<li class=""><a href="YAHOO.util.Sort.html" title="YAHOO.util.Sort">YAHOO.util.Sort</a></li>
|
|
<li class=""><a href="YAHOO.widget.BaseCellEditor.html" title="YAHOO.widget.BaseCellEditor">YAHOO.widget.BaseCellEditor</a></li>
|
|
<li class=""><a href="YAHOO.widget.CellEditor.html" title="YAHOO.widget.CellEditor">YAHOO.widget.CellEditor</a></li>
|
|
<li class=""><a href="YAHOO.widget.CheckboxCellEditor.html" title="YAHOO.widget.CheckboxCellEditor">YAHOO.widget.CheckboxCellEditor</a></li>
|
|
<li class=""><a href="YAHOO.widget.Column.html" title="YAHOO.widget.Column">YAHOO.widget.Column</a></li>
|
|
<li class=""><a href="YAHOO.widget.ColumnSet.html" title="YAHOO.widget.ColumnSet">YAHOO.widget.ColumnSet</a></li>
|
|
<li class=""><a href="YAHOO.widget.DataTable.html" title="YAHOO.widget.DataTable">YAHOO.widget.DataTable</a></li>
|
|
<li class=""><a href="YAHOO.widget.DateCellEditor.html" title="YAHOO.widget.DateCellEditor">YAHOO.widget.DateCellEditor</a></li>
|
|
<li class=""><a href="YAHOO.widget.DropdownCellEditor.html" title="YAHOO.widget.DropdownCellEditor">YAHOO.widget.DropdownCellEditor</a></li>
|
|
<li class=""><a href="YAHOO.widget.RadioCellEditor.html" title="YAHOO.widget.RadioCellEditor">YAHOO.widget.RadioCellEditor</a></li>
|
|
<li class=""><a href="YAHOO.widget.TextareaCellEditor.html" title="YAHOO.widget.TextareaCellEditor">YAHOO.widget.TextareaCellEditor</a></li>
|
|
<li class=""><a href="YAHOO.widget.TextboxCellEditor.html" title="YAHOO.widget.TextboxCellEditor">YAHOO.widget.TextboxCellEditor</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div id="fileList" class="module">
|
|
<h4>Files</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="CellEditor.js.html" title="CellEditor.js">CellEditor.js</a></li>
|
|
<li class=""><a href="Chain.js.html" title="Chain.js">Chain.js</a></li>
|
|
<li class=""><a href="ColumnSet.js.html" title="ColumnSet.js">ColumnSet.js</a></li>
|
|
<li class=""><a href="DataTable.js.html" title="DataTable.js">DataTable.js</a></li>
|
|
<li class="selected"><a href="EventDelegate.js.html" title="EventDelegate.js">EventDelegate.js</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="ft">
|
|
<hr />
|
|
Copyright © 2011 Yahoo! Inc. All rights reserved.
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
|
|
var ALL_YUI_PROPS = [{"access": "", "host": "YAHOO.widget.Column", "name": "abbr", "url": "YAHOO.widget.Column.html#property_abbr", "type": "property"}, {"access": "", "host": "YAHOO.util.Chain", "name": "add", "url": "YAHOO.util.Chain.html#method_add", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "addCellEditor", "url": "YAHOO.widget.DataTable.html#method_addCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "addRow", "url": "YAHOO.widget.DataTable.html#method_addRow", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "addRows", "url": "YAHOO.widget.DataTable.html#method_addRows", "type": "method"}, {"access": "private", "host": "YAHOO.widget.ColumnSet", "name": "_aDefinitions", "url": "YAHOO.widget.ColumnSet.html#property__aDefinitions", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_aDynFunctions", "url": "YAHOO.widget.DataTable.html#property__aDynFunctions", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_aSelections", "url": "YAHOO.widget.DataTable.html#property__aSelections", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "asyncSubmitter", "url": "YAHOO.widget.BaseCellEditor.html#property_asyncSubmitter", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "attach", "url": "YAHOO.widget.BaseCellEditor.html#method_attach", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeCaptionChange", "url": "YAHOO.widget.DataTable.html#event_beforeCaptionChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeCurrencyOptionsChange", "url": "YAHOO.widget.DataTable.html#event_beforeCurrencyOptionsChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeCurrencySymbolChange", "url": "YAHOO.widget.DataTable.html#event_beforeCurrencySymbolChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeDateOptionsChange", "url": "YAHOO.widget.DataTable.html#event_beforeDateOptionsChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeDraggableColumnsChange", "url": "YAHOO.widget.DataTable.html#event_beforeDraggableColumnsChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeDynamicDataChange", "url": "YAHOO.widget.DataTable.html#event_beforeDynamicDataChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeFormatRowChange", "url": "YAHOO.widget.DataTable.html#event_beforeFormatRowChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeGenerateRequestChange", "url": "YAHOO.widget.DataTable.html#event_beforeGenerateRequestChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeInitialLoadChange", "url": "YAHOO.widget.DataTable.html#event_beforeInitialLoadChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeInitialRequestChange", "url": "YAHOO.widget.DataTable.html#event_beforeInitialRequestChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeMSG_EMPTYChange", "url": "YAHOO.widget.DataTable.html#event_beforeMSG_EMPTYChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeMSG_ERRORChange", "url": "YAHOO.widget.DataTable.html#event_beforeMSG_ERRORChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeMSG_LOADINGChange", "url": "YAHOO.widget.DataTable.html#event_beforeMSG_LOADINGChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeMSG_SORTASCChange", "url": "YAHOO.widget.DataTable.html#event_beforeMSG_SORTASCChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeMSG_SORTDESCChange", "url": "YAHOO.widget.DataTable.html#event_beforeMSG_SORTDESCChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeNumberOptionsChange", "url": "YAHOO.widget.DataTable.html#event_beforeNumberOptionsChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforePaginatorChange", "url": "YAHOO.widget.DataTable.html#event_beforePaginatorChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeRenderEvent", "url": "YAHOO.widget.DataTable.html#event_beforeRenderEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeRenderLoopSizeChange", "url": "YAHOO.widget.DataTable.html#event_beforeRenderLoopSizeChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeSelectionModeChange", "url": "YAHOO.widget.DataTable.html#event_beforeSelectionModeChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeSortedByChange", "url": "YAHOO.widget.DataTable.html#event_beforeSortedByChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeSortFunctionChange", "url": "YAHOO.widget.DataTable.html#event_beforeSortFunctionChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "beforeSummaryChange", "url": "YAHOO.widget.DataTable.html#event_beforeSummaryChange", "type": "event"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_bInit", "url": "YAHOO.widget.DataTable.html#property__bInit", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "block", "url": "YAHOO.widget.BaseCellEditor.html#method_block", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "blurEvent", "url": "YAHOO.widget.BaseCellEditor.html#event_blurEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "buttonClickEvent", "url": "YAHOO.widget.DataTable.html#event_buttonClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DateCellEditor", "name": "calendar", "url": "YAHOO.widget.DateCellEditor.html#property_calendar", "type": "property"}, {"access": "", "host": "YAHOO.widget.DateCellEditor", "name": "calendarOptions", "url": "YAHOO.widget.DateCellEditor.html#property_calendarOptions", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "cancel", "url": "YAHOO.widget.BaseCellEditor.html#method_cancel", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cancelCellEditor", "url": "YAHOO.widget.DataTable.html#method_cancelCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "cancelEvent", "url": "YAHOO.widget.BaseCellEditor.html#event_cancelEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "caption", "url": "YAHOO.widget.DataTable.html#config_caption", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "captionChange", "url": "YAHOO.widget.DataTable.html#event_captionChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellClickEvent", "url": "YAHOO.widget.DataTable.html#event_cellClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellDblclickEvent", "url": "YAHOO.widget.DataTable.html#event_cellDblclickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "CellEditor.CLASS_CELLEDITOR", "url": "YAHOO.widget.BaseCellEditor.html#property_CellEditor.CLASS_CELLEDITOR", "type": "property"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "CellEditor._nCount", "url": "YAHOO.widget.BaseCellEditor.html#property_CellEditor._nCount", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellFormatEvent", "url": "YAHOO.widget.DataTable.html#event_cellFormatEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellHighlightEvent", "url": "YAHOO.widget.DataTable.html#event_cellHighlightEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellMousedownEvent", "url": "YAHOO.widget.DataTable.html#event_cellMousedownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellMouseoutEvent", "url": "YAHOO.widget.DataTable.html#event_cellMouseoutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellMouseoverEvent", "url": "YAHOO.widget.DataTable.html#event_cellMouseoverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellMouseupEvent", "url": "YAHOO.widget.DataTable.html#event_cellMouseupEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellSelectEvent", "url": "YAHOO.widget.DataTable.html#event_cellSelectEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellUnhighlightEvent", "url": "YAHOO.widget.DataTable.html#event_cellUnhighlightEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellUnselectEvent", "url": "YAHOO.widget.DataTable.html#event_cellUnselectEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "cellUpdateEvent", "url": "YAHOO.widget.DataTable.html#event_cellUpdateEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "checkboxClickEvent", "url": "YAHOO.widget.DataTable.html#event_checkboxClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.CheckboxCellEditor", "name": "checkboxes", "url": "YAHOO.widget.CheckboxCellEditor.html#property_checkboxes", "type": "property"}, {"access": "", "host": "YAHOO.widget.CheckboxCellEditor", "name": "checkboxOptions", "url": "YAHOO.widget.CheckboxCellEditor.html#property_checkboxOptions", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "children", "url": "YAHOO.widget.Column.html#property_children", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "className", "url": "YAHOO.widget.BaseCellEditor.html#property_className", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "className", "url": "YAHOO.widget.Column.html#property_className", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_clearMinWidth", "url": "YAHOO.widget.DataTable.html#method__clearMinWidth", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "clearTextSelection", "url": "YAHOO.widget.DataTable.html#method_clearTextSelection", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_clearTrTemplateEl", "url": "YAHOO.widget.DataTable.html#method__clearTrTemplateEl", "type": "method"}, {"access": "private", "host": "YAHOO.util.ColumnResizer", "name": "clickValidator", "url": "YAHOO.util.ColumnResizer.html#method_clickValidator", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnHideEvent", "url": "YAHOO.widget.DataTable.html#event_columnHideEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnHighlightEvent", "url": "YAHOO.widget.DataTable.html#event_columnHighlightEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnInsertEvent", "url": "YAHOO.widget.DataTable.html#event_columnInsertEvent", "type": "event"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "Column._nCount", "url": "YAHOO.widget.Column.html#property_Column._nCount", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnRemoveEvent", "url": "YAHOO.widget.DataTable.html#event_columnRemoveEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnReorderEvent", "url": "YAHOO.widget.DataTable.html#event_columnReorderEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnResizeEvent", "url": "YAHOO.widget.DataTable.html#event_columnResizeEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnSelectEvent", "url": "YAHOO.widget.DataTable.html#event_columnSelectEvent", "type": "event"}, {"access": "private", "host": "YAHOO.widget.ColumnSet", "name": "ColumnSet._nCount", "url": "YAHOO.widget.ColumnSet.html#property_ColumnSet._nCount", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnSetWidthEvent", "url": "YAHOO.widget.DataTable.html#event_columnSetWidthEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnShowEvent", "url": "YAHOO.widget.DataTable.html#event_columnShowEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnSortEvent", "url": "YAHOO.widget.DataTable.html#event_columnSortEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnUnhighlightEvent", "url": "YAHOO.widget.DataTable.html#event_columnUnhighlightEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnUnselectEvent", "url": "YAHOO.widget.DataTable.html#event_columnUnselectEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "columnUnsetWidthEvent", "url": "YAHOO.widget.DataTable.html#event_columnUnsetWidthEvent", "type": "event"}, {"access": "", "host": "YAHOO.util.Sort", "name": "compare", "url": "YAHOO.util.Sort.html#method_compare", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "configs", "url": "YAHOO.widget.DataTable.html#property_configs", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_createTrEl", "url": "YAHOO.widget.DataTable.html#method__createTrEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "currencyOptions", "url": "YAHOO.widget.Column.html#property_currencyOptions", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "currencyOptions", "url": "YAHOO.widget.DataTable.html#config_currencyOptions", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "currencyOptionsChange", "url": "YAHOO.widget.DataTable.html#event_currencyOptionsChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "currencySymbol", "url": "YAHOO.widget.DataTable.html#config_currencySymbol", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "currencySymbolChange", "url": "YAHOO.widget.DataTable.html#event_currencySymbolChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "dataReturnEvent", "url": "YAHOO.widget.DataTable.html#event_dataReturnEvent", "type": "event"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "DataTable._bDynStylesFallback", "url": "YAHOO.widget.DataTable.html#property_DataTable._bDynStylesFallback", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_ASC", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_ASC", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_BUTTON", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_BUTTON", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_CHECKBOX", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_CHECKBOX", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_COLTARGET", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_COLTARGET", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_DATA", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_DATA", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_DATATABLE", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_DATATABLE", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_DEFAULT", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_DEFAULT", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_DESC", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_DESC", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_DISABLED", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_DISABLED", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_DRAGGABLE", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_DRAGGABLE", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_DROPDOWN", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_DROPDOWN", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_EDITABLE", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_EDITABLE", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_EDITOR", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_EDITOR", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_EDITOR_SHIM", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_EDITOR_SHIM", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_EMPTY", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_EMPTY", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_ERROR", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_ERROR", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_EVEN", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_EVEN", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_FIRST", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_FIRST", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_HIDDEN", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_HIDDEN", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_HIGHLIGHTED", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_HIGHLIGHTED", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_LABEL", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_LABEL", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_LAST", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_LAST", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_LINER", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_LINER", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_LOADING", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_LOADING", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_MASK", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_MASK", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_MESSAGE", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_MESSAGE", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_NEXT", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_NEXT", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_ODD", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_ODD", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_PAGE", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_PAGE", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_PAGINATOR", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_PAGINATOR", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_PREVIOUS", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_PREVIOUS", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_RADIO", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_RADIO", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_REC", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_REC", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_RESIZEABLE", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_RESIZEABLE", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_RESIZER", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_RESIZER", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_RESIZERLINER", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_RESIZERLINER", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_RESIZERPROXY", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_RESIZERPROXY", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_SCROLLABLE", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_SCROLLABLE", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_SELECTED", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_SELECTED", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.CLASS_SORTABLE", "url": "YAHOO.widget.DataTable.html#property_DataTable.CLASS_SORTABLE", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "DataTable._cloneObject", "url": "YAHOO.widget.DataTable.html#method_DataTable._cloneObject", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.editCheckbox", "url": "YAHOO.widget.DataTable.html#method_DataTable.editCheckbox", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.editDate", "url": "YAHOO.widget.DataTable.html#method_DataTable.editDate", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.editDropdown", "url": "YAHOO.widget.DataTable.html#method_DataTable.editDropdown", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextboxCellEditor", "name": "DataTable.Editors", "url": "YAHOO.widget.TextboxCellEditor.html#property_DataTable.Editors", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.editRadio", "url": "YAHOO.widget.DataTable.html#method_DataTable.editRadio", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.editTextarea", "url": "YAHOO.widget.DataTable.html#method_DataTable.editTextarea", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.editTextbox", "url": "YAHOO.widget.DataTable.html#method_DataTable.editTextbox", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "DataTable._elDynStyleNode", "url": "YAHOO.widget.DataTable.html#property_DataTable._elDynStyleNode", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatButton", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatButton", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatCheckbox", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatCheckbox", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatCurrency", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatCurrency", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatDate", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatDate", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatDefault", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatDefault", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatDropdown", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatDropdown", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatEmail", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatEmail", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatLink", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatLink", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatNumber", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatNumber", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatRadio", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatRadio", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.Formatter", "url": "YAHOO.widget.DataTable.html#property_DataTable.Formatter", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatText", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatText", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatTextarea", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatTextarea", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.formatTextbox", "url": "YAHOO.widget.DataTable.html#method_DataTable.formatTextbox", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "DataTable._nCount", "url": "YAHOO.widget.DataTable.html#property_DataTable._nCount", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "DataTable._nCurrentCount", "url": "YAHOO.widget.DataTable.html#property_DataTable._nCurrentCount", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "DataTable._oDynStyles", "url": "YAHOO.widget.DataTable.html#property_DataTable._oDynStyles", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "DataTable.validateNumber", "url": "YAHOO.widget.DataTable.html#method_DataTable.validateNumber", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "dateOptions", "url": "YAHOO.widget.Column.html#property_dateOptions", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "dateOptions", "url": "YAHOO.widget.DataTable.html#config_dateOptions", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "dateOptionsChange", "url": "YAHOO.widget.DataTable.html#event_dateOptionsChange", "type": "event"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_dd", "url": "YAHOO.widget.Column.html#property__dd", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_ddResizer", "url": "YAHOO.widget.Column.html#property__ddResizer", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_defaultPaginatorContainers", "url": "YAHOO.widget.DataTable.html#method__defaultPaginatorContainers", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "defaultValue", "url": "YAHOO.widget.BaseCellEditor.html#property_defaultValue", "type": "property"}, {"access": "", "host": "YAHOO.widget.DateCellEditor", "name": "defaultValue", "url": "YAHOO.widget.DateCellEditor.html#property_defaultValue", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "deleteRow", "url": "YAHOO.widget.DataTable.html#method_deleteRow", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "deleteRows", "url": "YAHOO.widget.DataTable.html#method_deleteRows", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_deleteTrEl", "url": "YAHOO.widget.DataTable.html#method__deleteTrEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "destroy", "url": "YAHOO.widget.BaseCellEditor.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "destroy", "url": "YAHOO.widget.DataTable.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "destroyCellEditor", "url": "YAHOO.widget.DataTable.html#method_destroyCellEditor", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyColgroupEl", "url": "YAHOO.widget.DataTable.html#method__destroyColgroupEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyColumnDragTargetEl", "url": "YAHOO.widget.DataTable.html#method__destroyColumnDragTargetEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyColumnHelpers", "url": "YAHOO.widget.DataTable.html#method__destroyColumnHelpers", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyColumnResizerProxyEl", "url": "YAHOO.widget.DataTable.html#method__destroyColumnResizerProxyEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyContainerEl", "url": "YAHOO.widget.DataTable.html#method__destroyContainerEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyDraggableColumns", "url": "YAHOO.widget.DataTable.html#method__destroyDraggableColumns", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyMsgTbodyEl", "url": "YAHOO.widget.DataTable.html#method__destroyMsgTbodyEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyPaginator", "url": "YAHOO.widget.DataTable.html#method__destroyPaginator", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyResizeableColumns", "url": "YAHOO.widget.DataTable.html#method__destroyResizeableColumns", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyTableEl", "url": "YAHOO.widget.DataTable.html#method__destroyTableEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyTbodyEl", "url": "YAHOO.widget.DataTable.html#method__destroyTbodyEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_destroyTheadEl", "url": "YAHOO.widget.DataTable.html#method__destroyTheadEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "disable", "url": "YAHOO.widget.DataTable.html#method_disable", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "disableBtns", "url": "YAHOO.widget.BaseCellEditor.html#property_disableBtns", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_disabled", "url": "YAHOO.widget.DataTable.html#property__disabled", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "disableEvent", "url": "YAHOO.widget.DataTable.html#event_disableEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "doAfterRender", "url": "YAHOO.widget.BaseCellEditor.html#method_doAfterRender", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "doBeforeLoadData", "url": "YAHOO.widget.DataTable.html#method_doBeforeLoadData", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "doBeforePaginatorChange", "url": "YAHOO.widget.DataTable.html#method_doBeforePaginatorChange", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "doBeforeShowCellEditor", "url": "YAHOO.widget.DataTable.html#method_doBeforeShowCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "doBeforeSortColumn", "url": "YAHOO.widget.DataTable.html#method_doBeforeSortColumn", "type": "method"}, {"access": "", "host": "YAHOO.util.Chain", "name": "Dom", "url": "YAHOO.util.Chain.html#property_Dom", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "draggableColumns", "url": "YAHOO.widget.DataTable.html#config_draggableColumns", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "draggableColumnsChange", "url": "YAHOO.widget.DataTable.html#event_draggableColumnsChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DropdownCellEditor", "name": "dropdown", "url": "YAHOO.widget.DropdownCellEditor.html#property_dropdown", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "dropdownChangeEvent", "url": "YAHOO.widget.DataTable.html#event_dropdownChangeEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DropdownCellEditor", "name": "dropdownOptions", "url": "YAHOO.widget.DropdownCellEditor.html#property_dropdownOptions", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "dropdownOptions", "url": "YAHOO.widget.Column.html#property_dropdownOptions", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "dynamicData", "url": "YAHOO.widget.DataTable.html#config_dynamicData", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "dynamicDataChange", "url": "YAHOO.widget.DataTable.html#event_dynamicDataChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.Column", "name": "editor", "url": "YAHOO.widget.Column.html#property_editor", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "editorBlockEvent", "url": "YAHOO.widget.DataTable.html#event_editorBlockEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "editorBlurEvent", "url": "YAHOO.widget.DataTable.html#event_editorBlurEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "editorCancelEvent", "url": "YAHOO.widget.DataTable.html#event_editorCancelEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "editorKeydownEvent", "url": "YAHOO.widget.DataTable.html#event_editorKeydownEvent", "type": "event"}, {"access": "", "host": "YAHOO.util.ColumnResizer", "name": "editorOptions", "url": "YAHOO.util.ColumnResizer.html#property_editorOptions", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "editorRevertEvent", "url": "YAHOO.widget.DataTable.html#event_editorRevertEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "editorSaveEvent", "url": "YAHOO.widget.DataTable.html#event_editorSaveEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "editorShowEvent", "url": "YAHOO.widget.DataTable.html#event_editorShowEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "editorUnblockEvent", "url": "YAHOO.widget.DataTable.html#event_editorUnblockEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "editorUpdateEvent", "url": "YAHOO.widget.DataTable.html#event_editorUpdateEvent", "type": "event"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_elCancelBtn", "url": "YAHOO.widget.BaseCellEditor.html#property__elCancelBtn", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elCaption", "url": "YAHOO.widget.DataTable.html#property__elCaption", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elColgroup", "url": "YAHOO.widget.DataTable.html#property__elColgroup", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elColumnDragTarget", "url": "YAHOO.widget.DataTable.html#property__elColumnDragTarget", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elColumnResizerProxy", "url": "YAHOO.widget.DataTable.html#property__elColumnResizerProxy", "type": "property"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_elContainer", "url": "YAHOO.widget.BaseCellEditor.html#property__elContainer", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elContainer", "url": "YAHOO.widget.DataTable.html#property__elContainer", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elMask", "url": "YAHOO.widget.DataTable.html#property__elMask", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elMsgTbody", "url": "YAHOO.widget.DataTable.html#property__elMsgTbody", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elMsgTd", "url": "YAHOO.widget.DataTable.html#property__elMsgTd", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elMsgTr", "url": "YAHOO.widget.DataTable.html#property__elMsgTr", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_elResizer", "url": "YAHOO.widget.Column.html#property__elResizer", "type": "property"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_elSaveBtn", "url": "YAHOO.widget.BaseCellEditor.html#property__elSaveBtn", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elTable", "url": "YAHOO.widget.DataTable.html#property__elTable", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elTbody", "url": "YAHOO.widget.DataTable.html#property__elTbody", "type": "property"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_elTd", "url": "YAHOO.widget.BaseCellEditor.html#property__elTd", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_elTh", "url": "YAHOO.widget.Column.html#property__elTh", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elThead", "url": "YAHOO.widget.DataTable.html#property__elThead", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_elThLabel", "url": "YAHOO.widget.Column.html#property__elThLabel", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_elThLiner", "url": "YAHOO.widget.Column.html#property__elThLiner", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_elTrTemplate", "url": "YAHOO.widget.DataTable.html#property__elTrTemplate", "type": "property"}, {"access": "", "host": "YAHOO.util.Chain", "name": "end", "url": "YAHOO.util.Chain.html#event_end", "type": "event"}, {"access": "", "host": "YAHOO.widget.Column", "name": "field", "url": "YAHOO.widget.Column.html#property_field", "type": "property"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "flat", "url": "YAHOO.widget.ColumnSet.html#property_flat", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "focus", "url": "YAHOO.widget.BaseCellEditor.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.CheckboxCellEditor", "name": "focus", "url": "YAHOO.widget.CheckboxCellEditor.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateCellEditor", "name": "focus", "url": "YAHOO.widget.DateCellEditor.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.DropdownCellEditor", "name": "focus", "url": "YAHOO.widget.DropdownCellEditor.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.RadioCellEditor", "name": "focus", "url": "YAHOO.widget.RadioCellEditor.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextareaCellEditor", "name": "focus", "url": "YAHOO.widget.TextareaCellEditor.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextboxCellEditor", "name": "focus", "url": "YAHOO.widget.TextboxCellEditor.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "focus", "url": "YAHOO.widget.DataTable.html#method_focus", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_focusEl", "url": "YAHOO.widget.DataTable.html#method__focusEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "focusTbodyEl", "url": "YAHOO.widget.DataTable.html#method_focusTbodyEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "focusTheadEl", "url": "YAHOO.widget.DataTable.html#method_focusTheadEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "formatCell", "url": "YAHOO.widget.DataTable.html#method_formatCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "formatRow", "url": "YAHOO.widget.DataTable.html#config_formatRow", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "formatRowChange", "url": "YAHOO.widget.DataTable.html#event_formatRowChange", "type": "event"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_formatTdEl", "url": "YAHOO.widget.DataTable.html#method__formatTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "formatter", "url": "YAHOO.widget.Column.html#property_formatter", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "formatTheadCell", "url": "YAHOO.widget.DataTable.html#method_formatTheadCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "generateRequest", "url": "YAHOO.widget.DataTable.html#config_generateRequest", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "generateRequestChange", "url": "YAHOO.widget.DataTable.html#event_generateRequestChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getAboveTdEl", "url": "YAHOO.widget.DataTable.html#method_getAboveTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getBelowTdEl", "url": "YAHOO.widget.DataTable.html#method_getBelowTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getBody", "url": "YAHOO.widget.DataTable.html#method_getBody", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getCell", "url": "YAHOO.widget.DataTable.html#method_getCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getCellEditor", "url": "YAHOO.widget.DataTable.html#method_getCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getCellIndex", "url": "YAHOO.widget.DataTable.html#method_getCellIndex", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getColEl", "url": "YAHOO.widget.Column.html#method_getColEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getColspan", "url": "YAHOO.widget.Column.html#method_getColspan", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "getColumn", "url": "YAHOO.widget.BaseCellEditor.html#method_getColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "getColumn", "url": "YAHOO.widget.ColumnSet.html#method_getColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getColumn", "url": "YAHOO.widget.DataTable.html#method_getColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "getColumnById", "url": "YAHOO.widget.ColumnSet.html#method_getColumnById", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getColumnById", "url": "YAHOO.widget.DataTable.html#method_getColumnById", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_getColumnClassnames", "url": "YAHOO.widget.DataTable.html#method__getColumnClassnames", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getColumnSet", "url": "YAHOO.widget.DataTable.html#method_getColumnSet", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getColumnSortDir", "url": "YAHOO.widget.DataTable.html#method_getColumnSortDir", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "getContainerEl", "url": "YAHOO.widget.BaseCellEditor.html#method_getContainerEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getContainerEl", "url": "YAHOO.widget.DataTable.html#method_getContainerEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getDataSource", "url": "YAHOO.widget.DataTable.html#method_getDataSource", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "getDataTable", "url": "YAHOO.widget.BaseCellEditor.html#method_getDataTable", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getDefinition", "url": "YAHOO.widget.Column.html#method_getDefinition", "type": "method"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "getDefinitions", "url": "YAHOO.widget.ColumnSet.html#method_getDefinitions", "type": "method"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "getDescendants", "url": "YAHOO.widget.ColumnSet.html#method_getDescendants", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getField", "url": "YAHOO.widget.Column.html#method_getField", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getFirstTdEl", "url": "YAHOO.widget.DataTable.html#method_getFirstTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getFirstTrEl", "url": "YAHOO.widget.DataTable.html#method_getFirstTrEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "getId", "url": "YAHOO.widget.BaseCellEditor.html#method_getId", "type": "method"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "getId", "url": "YAHOO.widget.ColumnSet.html#method_getId", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getId", "url": "YAHOO.widget.Column.html#method_getId", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getId", "url": "YAHOO.widget.DataTable.html#method_getId", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "getInputValue", "url": "YAHOO.widget.BaseCellEditor.html#method_getInputValue", "type": "method"}, {"access": "", "host": "YAHOO.widget.CheckboxCellEditor", "name": "getInputValue", "url": "YAHOO.widget.CheckboxCellEditor.html#method_getInputValue", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateCellEditor", "name": "getInputValue", "url": "YAHOO.widget.DateCellEditor.html#method_getInputValue", "type": "method"}, {"access": "", "host": "YAHOO.widget.DropdownCellEditor", "name": "getInputValue", "url": "YAHOO.widget.DropdownCellEditor.html#method_getInputValue", "type": "method"}, {"access": "", "host": "YAHOO.widget.RadioCellEditor", "name": "getInputValue", "url": "YAHOO.widget.RadioCellEditor.html#method_getInputValue", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextareaCellEditor", "name": "getInputValue", "url": "YAHOO.widget.TextareaCellEditor.html#method_getInputValue", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextboxCellEditor", "name": "getInputValue", "url": "YAHOO.widget.TextboxCellEditor.html#method_getInputValue", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getKey", "url": "YAHOO.widget.Column.html#method_getKey", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getKeyIndex", "url": "YAHOO.widget.Column.html#method_getKeyIndex", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getLastSelectedCell", "url": "YAHOO.widget.DataTable.html#method_getLastSelectedCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getLastSelectedRecord", "url": "YAHOO.widget.DataTable.html#method_getLastSelectedRecord", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getLastTdEl", "url": "YAHOO.widget.DataTable.html#method_getLastTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getLastTrEl", "url": "YAHOO.widget.DataTable.html#method_getLastTrEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getMsgTbodyEl", "url": "YAHOO.widget.DataTable.html#method_getMsgTbodyEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getMsgTdEl", "url": "YAHOO.widget.DataTable.html#method_getMsgTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getNextTdEl", "url": "YAHOO.widget.DataTable.html#method_getNextTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getNextTrEl", "url": "YAHOO.widget.DataTable.html#method_getNextTrEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getParent", "url": "YAHOO.widget.Column.html#method_getParent", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getPreviousTdEl", "url": "YAHOO.widget.DataTable.html#method_getPreviousTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getPreviousTrEl", "url": "YAHOO.widget.DataTable.html#method_getPreviousTrEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "getRecord", "url": "YAHOO.widget.BaseCellEditor.html#method_getRecord", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getRecord", "url": "YAHOO.widget.DataTable.html#method_getRecord", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getRecordIndex", "url": "YAHOO.widget.DataTable.html#method_getRecordIndex", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getRecordSet", "url": "YAHOO.widget.DataTable.html#method_getRecordSet", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getResizerEl", "url": "YAHOO.widget.Column.html#method_getResizerEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getRow", "url": "YAHOO.widget.DataTable.html#method_getRow", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getRowspan", "url": "YAHOO.widget.Column.html#method_getRowspan", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getSanitizedKey", "url": "YAHOO.widget.Column.html#method_getSanitizedKey", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getSelectedCells", "url": "YAHOO.widget.DataTable.html#method_getSelectedCells", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getSelectedColumns", "url": "YAHOO.widget.DataTable.html#method_getSelectedColumns", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getSelectedRows", "url": "YAHOO.widget.DataTable.html#method_getSelectedRows", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getSelectedTdEls", "url": "YAHOO.widget.DataTable.html#method_getSelectedTdEls", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getSelectedTrEls", "url": "YAHOO.widget.DataTable.html#method_getSelectedTrEls", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_getSelectionAnchor", "url": "YAHOO.widget.DataTable.html#method__getSelectionAnchor", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_getSelectionTrigger", "url": "YAHOO.widget.DataTable.html#method__getSelectionTrigger", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getState", "url": "YAHOO.widget.DataTable.html#method_getState", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getTableEl", "url": "YAHOO.widget.DataTable.html#method_getTableEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getTbodyEl", "url": "YAHOO.widget.DataTable.html#method_getTbodyEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "getTdEl", "url": "YAHOO.widget.BaseCellEditor.html#method_getTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getTdEl", "url": "YAHOO.widget.DataTable.html#method_getTdEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getTdLinerEl", "url": "YAHOO.widget.DataTable.html#method_getTdLinerEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getTheadEl", "url": "YAHOO.widget.DataTable.html#method_getTheadEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getThEl", "url": "YAHOO.widget.Column.html#method_getThEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getThEl", "url": "YAHOO.widget.DataTable.html#method_getThEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getThLInerEl", "url": "YAHOO.widget.Column.html#method_getThLInerEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getThLinerEl", "url": "YAHOO.widget.DataTable.html#method_getThLinerEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "getTreeIndex", "url": "YAHOO.widget.Column.html#method_getTreeIndex", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getTrEl", "url": "YAHOO.widget.DataTable.html#method_getTrEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "getTrIndex", "url": "YAHOO.widget.DataTable.html#method_getTrIndex", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_getTrTemplateEl", "url": "YAHOO.widget.DataTable.html#method__getTrTemplateEl", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.DataTable", "name": "_getViewRecords", "url": "YAHOO.widget.DataTable.html#method__getViewRecords", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleCellBlockSelectionByKey", "url": "YAHOO.widget.DataTable.html#method__handleCellBlockSelectionByKey", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleCellBlockSelectionByMouse", "url": "YAHOO.widget.DataTable.html#method__handleCellBlockSelectionByMouse", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleCellRangeSelectionByKey", "url": "YAHOO.widget.DataTable.html#method__handleCellRangeSelectionByKey", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleCellRangeSelectionByMouse", "url": "YAHOO.widget.DataTable.html#method__handleCellRangeSelectionByMouse", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleDataReturnPayload", "url": "YAHOO.widget.DataTable.html#method__handleDataReturnPayload", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "handleDataReturnPayload", "url": "YAHOO.widget.DataTable.html#method_handleDataReturnPayload", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "handleDisabledBtns", "url": "YAHOO.widget.BaseCellEditor.html#method_handleDisabledBtns", "type": "method"}, {"access": "", "host": "YAHOO.widget.CheckboxCellEditor", "name": "handleDisabledBtns", "url": "YAHOO.widget.CheckboxCellEditor.html#method_handleDisabledBtns", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateCellEditor", "name": "handleDisabledBtns", "url": "YAHOO.widget.DateCellEditor.html#method_handleDisabledBtns", "type": "method"}, {"access": "", "host": "YAHOO.widget.DropdownCellEditor", "name": "handleDisabledBtns", "url": "YAHOO.widget.DropdownCellEditor.html#method_handleDisabledBtns", "type": "method"}, {"access": "", "host": "YAHOO.widget.RadioCellEditor", "name": "handleDisabledBtns", "url": "YAHOO.widget.RadioCellEditor.html#method_handleDisabledBtns", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextareaCellEditor", "name": "handleDisabledBtns", "url": "YAHOO.widget.TextareaCellEditor.html#method_handleDisabledBtns", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handlePaginatorChange", "url": "YAHOO.widget.DataTable.html#method__handlePaginatorChange", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleSingleCellSelectionByKey", "url": "YAHOO.widget.DataTable.html#method__handleSingleCellSelectionByKey", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleSingleCellSelectionByMouse", "url": "YAHOO.widget.DataTable.html#method__handleSingleCellSelectionByMouse", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleSingleSelectionByKey", "url": "YAHOO.widget.DataTable.html#method__handleSingleSelectionByKey", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleSingleSelectionByMouse", "url": "YAHOO.widget.DataTable.html#method__handleSingleSelectionByMouse", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleStandardSelectionByKey", "url": "YAHOO.widget.DataTable.html#method__handleStandardSelectionByKey", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_handleStandardSelectionByMouse", "url": "YAHOO.widget.DataTable.html#method__handleStandardSelectionByMouse", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerCellClickEvent", "url": "YAHOO.widget.DataTable.html#event_headerCellClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerCellDblclickEvent", "url": "YAHOO.widget.DataTable.html#event_headerCellDblclickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerCellMousedownEvent", "url": "YAHOO.widget.DataTable.html#event_headerCellMousedownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerCellMouseoutEvent", "url": "YAHOO.widget.DataTable.html#event_headerCellMouseoutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerCellMouseoverEvent", "url": "YAHOO.widget.DataTable.html#event_headerCellMouseoverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerLabelClickEvent", "url": "YAHOO.widget.DataTable.html#event_headerLabelClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerLabelDbllickEvent", "url": "YAHOO.widget.DataTable.html#event_headerLabelDbllickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerLabelMousedownEvent", "url": "YAHOO.widget.DataTable.html#event_headerLabelMousedownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerLabelMouseoutEvent", "url": "YAHOO.widget.DataTable.html#event_headerLabelMouseoutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerLabelMouseoverEvent", "url": "YAHOO.widget.DataTable.html#event_headerLabelMouseoverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerRowClickEvent", "url": "YAHOO.widget.DataTable.html#event_headerRowClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerRowDblclickEvent", "url": "YAHOO.widget.DataTable.html#event_headerRowDblclickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerRowMousedownEvent", "url": "YAHOO.widget.DataTable.html#event_headerRowMousedownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerRowMouseoutEvent", "url": "YAHOO.widget.DataTable.html#event_headerRowMouseoutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "headerRowMouseoverEvent", "url": "YAHOO.widget.DataTable.html#event_headerRowMouseoverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "headers", "url": "YAHOO.widget.ColumnSet.html#property_headers", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "hidden", "url": "YAHOO.widget.Column.html#property_hidden", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "_hide", "url": "YAHOO.widget.BaseCellEditor.html#method__hide", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "hideColumn", "url": "YAHOO.widget.DataTable.html#method_hideColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "hideTableMessage", "url": "YAHOO.widget.DataTable.html#method_hideTableMessage", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "highlightCell", "url": "YAHOO.widget.DataTable.html#method_highlightCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "highlightColumn", "url": "YAHOO.widget.DataTable.html#method_highlightColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "highlightRow", "url": "YAHOO.widget.DataTable.html#method_highlightRow", "type": "method"}, {"access": "private", "host": "YAHOO.util.Chain", "name": "id", "url": "YAHOO.util.Chain.html#property_id", "type": "property"}, {"access": "private", "host": "YAHOO.widget.ColumnSet", "name": "_init", "url": "YAHOO.widget.ColumnSet.html#method__init", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "initAttributes", "url": "YAHOO.widget.DataTable.html#method_initAttributes", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initCaptionEl", "url": "YAHOO.widget.DataTable.html#method__initCaptionEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initCellEditing", "url": "YAHOO.widget.DataTable.html#method__initCellEditing", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initCellEditorEl", "url": "YAHOO.widget.DataTable.html#method__initCellEditorEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initColgroupEl", "url": "YAHOO.widget.DataTable.html#method__initColgroupEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initColumnDragTargetEl", "url": "YAHOO.widget.DataTable.html#method__initColumnDragTargetEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initColumnHelpers", "url": "YAHOO.widget.DataTable.html#method__initColumnHelpers", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initColumnResizerProxyEl", "url": "YAHOO.widget.DataTable.html#method__initColumnResizerProxyEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initColumnSet", "url": "YAHOO.widget.DataTable.html#method__initColumnSet", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initColumnSort", "url": "YAHOO.widget.DataTable.html#method__initColumnSort", "type": "method"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_initConfigs", "url": "YAHOO.widget.BaseCellEditor.html#method__initConfigs", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initConfigs", "url": "YAHOO.widget.DataTable.html#method__initConfigs", "type": "method"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_initContainerEl", "url": "YAHOO.widget.BaseCellEditor.html#method__initContainerEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initContainerEl", "url": "YAHOO.widget.DataTable.html#method__initContainerEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initDataSource", "url": "YAHOO.widget.DataTable.html#method__initDataSource", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initDomElements", "url": "YAHOO.widget.DataTable.html#method__initDomElements", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initDraggableColumns", "url": "YAHOO.widget.DataTable.html#method__initDraggableColumns", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "initEvent", "url": "YAHOO.widget.DataTable.html#event_initEvent", "type": "event"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_initEvents", "url": "YAHOO.widget.BaseCellEditor.html#method__initEvents", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initEvents", "url": "YAHOO.widget.DataTable.html#method__initEvents", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "initializeTable", "url": "YAHOO.widget.DataTable.html#method_initializeTable", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "initialLoad", "url": "YAHOO.widget.DataTable.html#config_initialLoad", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "initialLoadChange", "url": "YAHOO.widget.DataTable.html#event_initialLoadChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "initialRequest", "url": "YAHOO.widget.DataTable.html#config_initialRequest", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "initialRequestChange", "url": "YAHOO.widget.DataTable.html#event_initialRequestChange", "type": "event"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initMsgTbodyEl", "url": "YAHOO.widget.DataTable.html#method__initMsgTbodyEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initRecordSet", "url": "YAHOO.widget.DataTable.html#method__initRecordSet", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initResizeableColumns", "url": "YAHOO.widget.DataTable.html#method__initResizeableColumns", "type": "method"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_initShimEl", "url": "YAHOO.widget.BaseCellEditor.html#method__initShimEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initTableEl", "url": "YAHOO.widget.DataTable.html#method__initTableEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initTbodyEl", "url": "YAHOO.widget.DataTable.html#method__initTbodyEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initTheadEl", "url": "YAHOO.widget.DataTable.html#method__initTheadEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_initThEl", "url": "YAHOO.widget.DataTable.html#method__initThEl", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_insertColgroupColEl", "url": "YAHOO.widget.DataTable.html#method__insertColgroupColEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "insertColumn", "url": "YAHOO.widget.DataTable.html#method_insertColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "invalidDataEvent", "url": "YAHOO.widget.BaseCellEditor.html#event_invalidDataEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "isActive", "url": "YAHOO.widget.BaseCellEditor.html#property_isActive", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "isDisabled", "url": "YAHOO.widget.DataTable.html#method_isDisabled", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "isSelected", "url": "YAHOO.widget.DataTable.html#method_isSelected", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "key", "url": "YAHOO.widget.Column.html#property_key", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "keydownEvent", "url": "YAHOO.widget.BaseCellEditor.html#event_keydownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "keys", "url": "YAHOO.widget.ColumnSet.html#property_keys", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "label", "url": "YAHOO.widget.Column.html#property_label", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "LABEL_CANCEL", "url": "YAHOO.widget.BaseCellEditor.html#property_LABEL_CANCEL", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "LABEL_SAVE", "url": "YAHOO.widget.BaseCellEditor.html#property_LABEL_SAVE", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "linkClickEvent", "url": "YAHOO.widget.DataTable.html#event_linkClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "load", "url": "YAHOO.widget.DataTable.html#method_load", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "maxAutoWidth", "url": "YAHOO.widget.Column.html#property_maxAutoWidth", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "minWidth", "url": "YAHOO.widget.Column.html#property_minWidth", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "move", "url": "YAHOO.widget.BaseCellEditor.html#method_move", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextareaCellEditor", "name": "move", "url": "YAHOO.widget.TextareaCellEditor.html#method_move", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextboxCellEditor", "name": "move", "url": "YAHOO.widget.TextboxCellEditor.html#method_move", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_EMPTY", "url": "YAHOO.widget.DataTable.html#config_MSG_EMPTY", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_EMPTYChange", "url": "YAHOO.widget.DataTable.html#event_MSG_EMPTYChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_ERROR", "url": "YAHOO.widget.DataTable.html#config_MSG_ERROR", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_ERRORChange", "url": "YAHOO.widget.DataTable.html#event_MSG_ERRORChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_LOADING", "url": "YAHOO.widget.DataTable.html#config_MSG_LOADING", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_LOADINGChange", "url": "YAHOO.widget.DataTable.html#event_MSG_LOADINGChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_SORTASC", "url": "YAHOO.widget.DataTable.html#config_MSG_SORTASC", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_SORTASCChange", "url": "YAHOO.widget.DataTable.html#event_MSG_SORTASCChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_SORTDESC", "url": "YAHOO.widget.DataTable.html#config_MSG_SORTDESC", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "MSG_SORTDESCChange", "url": "YAHOO.widget.DataTable.html#event_MSG_SORTDESCChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DropdownCellEditor", "name": "multiple", "url": "YAHOO.widget.DropdownCellEditor.html#property_multiple", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_nColspan", "url": "YAHOO.widget.Column.html#property__nColspan", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_nIndex", "url": "YAHOO.widget.DataTable.html#property__nIndex", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_nKeyIndex", "url": "YAHOO.widget.Column.html#property__nKeyIndex", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_nRowspan", "url": "YAHOO.widget.Column.html#property__nRowspan", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_nTdCount", "url": "YAHOO.widget.DataTable.html#property__nTdCount", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_nTrCount", "url": "YAHOO.widget.DataTable.html#property__nTrCount", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_nTreeIndex", "url": "YAHOO.widget.Column.html#property__nTreeIndex", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "numberOptions", "url": "YAHOO.widget.DataTable.html#config_numberOptions", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "numberOptionsChange", "url": "YAHOO.widget.DataTable.html#event_numberOptionsChange", "type": "event"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_nWidth", "url": "YAHOO.widget.Column.html#property__nWidth", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_oAnchorCell", "url": "YAHOO.widget.DataTable.html#property__oAnchorCell", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_oAnchorRecord", "url": "YAHOO.widget.DataTable.html#property__oAnchorRecord", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_oCellEditor", "url": "YAHOO.widget.DataTable.html#property__oCellEditor", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_oChainRender", "url": "YAHOO.widget.DataTable.html#property__oChainRender", "type": "property"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_oColumn", "url": "YAHOO.widget.BaseCellEditor.html#property__oColumn", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_oColumnSet", "url": "YAHOO.widget.DataTable.html#property__oColumnSet", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_oDataSource", "url": "YAHOO.widget.DataTable.html#property__oDataSource", "type": "property"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_oDataTable", "url": "YAHOO.widget.BaseCellEditor.html#property__oDataTable", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onDataReturnAppendRows", "url": "YAHOO.widget.DataTable.html#method_onDataReturnAppendRows", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onDataReturnInitializeTable", "url": "YAHOO.widget.DataTable.html#method_onDataReturnInitializeTable", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onDataReturnInsertRows", "url": "YAHOO.widget.DataTable.html#method_onDataReturnInsertRows", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onDataReturnReplaceRows", "url": "YAHOO.widget.DataTable.html#method_onDataReturnReplaceRows", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onDataReturnSetRecords", "url": "YAHOO.widget.DataTable.html#method_onDataReturnSetRecords", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onDataReturnSetRows", "url": "YAHOO.widget.DataTable.html#method_onDataReturnSetRows", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onDataReturnUpdateRows", "url": "YAHOO.widget.DataTable.html#method_onDataReturnUpdateRows", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onDocumentClick", "url": "YAHOO.widget.DataTable.html#method__onDocumentClick", "type": "method"}, {"access": "", "host": "YAHOO.util.ColumnResizer", "name": "onDrag", "url": "YAHOO.util.ColumnResizer.html#method_onDrag", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onDropdownChange", "url": "YAHOO.widget.DataTable.html#method__onDropdownChange", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onEditorBlockEvent", "url": "YAHOO.widget.DataTable.html#method__onEditorBlockEvent", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEditorBlockEvent", "url": "YAHOO.widget.DataTable.html#method_onEditorBlockEvent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onEditorBlurEvent", "url": "YAHOO.widget.DataTable.html#method__onEditorBlurEvent", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEditorBlurEvent", "url": "YAHOO.widget.DataTable.html#method_onEditorBlurEvent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onEditorCancelEvent", "url": "YAHOO.widget.DataTable.html#method__onEditorCancelEvent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onEditorKeydownEvent", "url": "YAHOO.widget.DataTable.html#method__onEditorKeydownEvent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onEditorRevertEvent", "url": "YAHOO.widget.DataTable.html#method__onEditorRevertEvent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onEditorSaveEvent", "url": "YAHOO.widget.DataTable.html#method__onEditorSaveEvent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onEditorShowEvent", "url": "YAHOO.widget.DataTable.html#method__onEditorShowEvent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onEditorUnblockEvent", "url": "YAHOO.widget.DataTable.html#method__onEditorUnblockEvent", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEditorUnblockEvent", "url": "YAHOO.widget.DataTable.html#method_onEditorUnblockEvent", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventCancelCellEditor", "url": "YAHOO.widget.DataTable.html#method_onEventCancelCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventEditCell", "url": "YAHOO.widget.DataTable.html#method_onEventEditCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventFormatCell", "url": "YAHOO.widget.DataTable.html#method_onEventFormatCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventHighlightCell", "url": "YAHOO.widget.DataTable.html#method_onEventHighlightCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventHighlightColumn", "url": "YAHOO.widget.DataTable.html#method_onEventHighlightColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventHighlightRow", "url": "YAHOO.widget.DataTable.html#method_onEventHighlightRow", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventSaveCellEditor", "url": "YAHOO.widget.DataTable.html#method_onEventSaveCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventSelectCell", "url": "YAHOO.widget.DataTable.html#method_onEventSelectCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventSelectColumn", "url": "YAHOO.widget.DataTable.html#method_onEventSelectColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventSelectRow", "url": "YAHOO.widget.DataTable.html#method_onEventSelectRow", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventShowCellEditor", "url": "YAHOO.widget.DataTable.html#method_onEventShowCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventSortColumn", "url": "YAHOO.widget.DataTable.html#method_onEventSortColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventUnhighlightCell", "url": "YAHOO.widget.DataTable.html#method_onEventUnhighlightCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventUnhighlightColumn", "url": "YAHOO.widget.DataTable.html#method_onEventUnhighlightColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onEventUnhighlightRow", "url": "YAHOO.widget.DataTable.html#method_onEventUnhighlightRow", "type": "method"}, {"access": "", "host": "YAHOO.util.ColumnResizer", "name": "onMouseDown", "url": "YAHOO.util.ColumnResizer.html#method_onMouseDown", "type": "method"}, {"access": "", "host": "YAHOO.util.ColumnResizer", "name": "onMouseUp", "url": "YAHOO.util.ColumnResizer.html#method_onMouseUp", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onPaginatorChange", "url": "YAHOO.widget.DataTable.html#method_onPaginatorChange", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onPaginatorChangeRequest", "url": "YAHOO.widget.DataTable.html#method_onPaginatorChangeRequest", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onRenderChainEnd", "url": "YAHOO.widget.DataTable.html#method__onRenderChainEnd", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "onShow", "url": "YAHOO.widget.DataTable.html#method_onShow", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTableDblclick", "url": "YAHOO.widget.DataTable.html#method__onTableDblclick", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTableFocus", "url": "YAHOO.widget.DataTable.html#method__onTableFocus", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTableMousedown", "url": "YAHOO.widget.DataTable.html#method__onTableMousedown", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTableMouseout", "url": "YAHOO.widget.DataTable.html#method__onTableMouseout", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTableMouseover", "url": "YAHOO.widget.DataTable.html#method__onTableMouseover", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTableMouseup", "url": "YAHOO.widget.DataTable.html#method__onTableMouseup", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTbodyClick", "url": "YAHOO.widget.DataTable.html#method__onTbodyClick", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTbodyFocus", "url": "YAHOO.widget.DataTable.html#method__onTbodyFocus", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTbodyKeydown", "url": "YAHOO.widget.DataTable.html#method__onTbodyKeydown", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTheadClick", "url": "YAHOO.widget.DataTable.html#method__onTheadClick", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTheadFocus", "url": "YAHOO.widget.DataTable.html#method__onTheadFocus", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_onTheadKeydown", "url": "YAHOO.widget.DataTable.html#method__onTheadKeydown", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_oParent", "url": "YAHOO.widget.Column.html#property__oParent", "type": "property"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_oRecord", "url": "YAHOO.widget.BaseCellEditor.html#property__oRecord", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_oRecordSet", "url": "YAHOO.widget.DataTable.html#property__oRecordSet", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "paginator", "url": "YAHOO.widget.DataTable.html#config_paginator", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "paginatorChange", "url": "YAHOO.widget.DataTable.html#event_paginatorChange", "type": "event"}, {"access": "", "host": "YAHOO.util.Chain", "name": "pause", "url": "YAHOO.util.Chain.html#method_pause", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "postRenderEvent", "url": "YAHOO.widget.DataTable.html#event_postRenderEvent", "type": "event"}, {"access": "private", "host": "YAHOO.util.Chain", "name": "q", "url": "YAHOO.util.Chain.html#property_q", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "radioClickEvent", "url": "YAHOO.widget.DataTable.html#event_radioClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.RadioCellEditor", "name": "radioOptions", "url": "YAHOO.widget.RadioCellEditor.html#property_radioOptions", "type": "property"}, {"access": "", "host": "YAHOO.widget.RadioCellEditor", "name": "radios", "url": "YAHOO.widget.RadioCellEditor.html#property_radios", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "refreshView", "url": "YAHOO.widget.DataTable.html#method_refreshView", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_removeColgroupColEl", "url": "YAHOO.widget.DataTable.html#method__removeColgroupColEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "removeColumn", "url": "YAHOO.widget.DataTable.html#method_removeColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "render", "url": "YAHOO.widget.BaseCellEditor.html#method_render", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "render", "url": "YAHOO.widget.DataTable.html#method_render", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "renderBtns", "url": "YAHOO.widget.BaseCellEditor.html#method_renderBtns", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "renderEvent", "url": "YAHOO.widget.DataTable.html#event_renderEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "renderForm", "url": "YAHOO.widget.BaseCellEditor.html#method_renderForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.CheckboxCellEditor", "name": "renderForm", "url": "YAHOO.widget.CheckboxCellEditor.html#method_renderForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateCellEditor", "name": "renderForm", "url": "YAHOO.widget.DateCellEditor.html#method_renderForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.DropdownCellEditor", "name": "renderForm", "url": "YAHOO.widget.DropdownCellEditor.html#method_renderForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.RadioCellEditor", "name": "renderForm", "url": "YAHOO.widget.RadioCellEditor.html#method_renderForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextareaCellEditor", "name": "renderForm", "url": "YAHOO.widget.TextareaCellEditor.html#method_renderForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextboxCellEditor", "name": "renderForm", "url": "YAHOO.widget.TextboxCellEditor.html#method_renderForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "renderLoopSize", "url": "YAHOO.widget.DataTable.html#config_renderLoopSize", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "renderLoopSizeChange", "url": "YAHOO.widget.DataTable.html#event_renderLoopSizeChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "renderPaginator", "url": "YAHOO.widget.DataTable.html#method_renderPaginator", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_reorderColgroupColEl", "url": "YAHOO.widget.DataTable.html#method__reorderColgroupColEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "reorderColumn", "url": "YAHOO.widget.DataTable.html#method_reorderColumn", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_repaintGecko", "url": "YAHOO.widget.DataTable.html#method__repaintGecko", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_repaintOpera", "url": "YAHOO.widget.DataTable.html#method__repaintOpera", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_repaintWebkit", "url": "YAHOO.widget.DataTable.html#method__repaintWebkit", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "resetCellEditor", "url": "YAHOO.widget.DataTable.html#method_resetCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "resetForm", "url": "YAHOO.widget.BaseCellEditor.html#method_resetForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.CheckboxCellEditor", "name": "resetForm", "url": "YAHOO.widget.CheckboxCellEditor.html#method_resetForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.DateCellEditor", "name": "resetForm", "url": "YAHOO.widget.DateCellEditor.html#method_resetForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.DropdownCellEditor", "name": "resetForm", "url": "YAHOO.widget.DropdownCellEditor.html#method_resetForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.RadioCellEditor", "name": "resetForm", "url": "YAHOO.widget.RadioCellEditor.html#method_resetForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextareaCellEditor", "name": "resetForm", "url": "YAHOO.widget.TextareaCellEditor.html#method_resetForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.TextboxCellEditor", "name": "resetForm", "url": "YAHOO.widget.TextboxCellEditor.html#method_resetForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "resetInvalidData", "url": "YAHOO.widget.BaseCellEditor.html#property_resetInvalidData", "type": "property"}, {"access": "", "host": "YAHOO.util.ColumnResizer", "name": "resetResizerEl", "url": "YAHOO.util.ColumnResizer.html#method_resetResizerEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "resizeable", "url": "YAHOO.widget.Column.html#property_resizeable", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_restoreMinWidth", "url": "YAHOO.widget.DataTable.html#method__restoreMinWidth", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "revertEvent", "url": "YAHOO.widget.BaseCellEditor.html#event_revertEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowAddEvent", "url": "YAHOO.widget.DataTable.html#event_rowAddEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowClickEvent", "url": "YAHOO.widget.DataTable.html#event_rowClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowDblclickEvent", "url": "YAHOO.widget.DataTable.html#event_rowDblclickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowDeleteEvent", "url": "YAHOO.widget.DataTable.html#event_rowDeleteEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowHighlightEvent", "url": "YAHOO.widget.DataTable.html#event_rowHighlightEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowMousedownEvent", "url": "YAHOO.widget.DataTable.html#event_rowMousedownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowMouseoutEvent", "url": "YAHOO.widget.DataTable.html#event_rowMouseoutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowMouseoverEvent", "url": "YAHOO.widget.DataTable.html#event_rowMouseoverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowMouseupEvent", "url": "YAHOO.widget.DataTable.html#event_rowMouseupEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowsAddEvent", "url": "YAHOO.widget.DataTable.html#event_rowsAddEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowsDeleteEvent", "url": "YAHOO.widget.DataTable.html#event_rowsDeleteEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowSelectEvent", "url": "YAHOO.widget.DataTable.html#event_rowSelectEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowUnhighlightEvent", "url": "YAHOO.widget.DataTable.html#event_rowUnhighlightEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowUnselectEvent", "url": "YAHOO.widget.DataTable.html#event_rowUnselectEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "rowUpdateEvent", "url": "YAHOO.widget.DataTable.html#event_rowUpdateEvent", "type": "event"}, {"access": "", "host": "YAHOO.util.Chain", "name": "run", "url": "YAHOO.util.Chain.html#method_run", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_runRenderChain", "url": "YAHOO.widget.DataTable.html#method__runRenderChain", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "save", "url": "YAHOO.widget.BaseCellEditor.html#method_save", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "saveCellEditor", "url": "YAHOO.widget.DataTable.html#method_saveCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "saveEvent", "url": "YAHOO.widget.BaseCellEditor.html#event_saveEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "select", "url": "YAHOO.widget.DataTable.html#method_select", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "selectCell", "url": "YAHOO.widget.DataTable.html#method_selectCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "selectColumn", "url": "YAHOO.widget.DataTable.html#method_selectColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "selected", "url": "YAHOO.widget.Column.html#property_selected", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "selectionMode", "url": "YAHOO.widget.DataTable.html#config_selectionMode", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "selectionModeChange", "url": "YAHOO.widget.DataTable.html#event_selectionModeChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "selectRow", "url": "YAHOO.widget.DataTable.html#method_selectRow", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_setColumnWidth", "url": "YAHOO.widget.DataTable.html#method__setColumnWidth", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "setColumnWidth", "url": "YAHOO.widget.DataTable.html#method_setColumnWidth", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_setColumnWidthDynFunction", "url": "YAHOO.widget.DataTable.html#method__setColumnWidthDynFunction", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_setColumnWidthDynStyles", "url": "YAHOO.widget.DataTable.html#method__setColumnWidthDynStyles", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_setFirstRow", "url": "YAHOO.widget.DataTable.html#method__setFirstRow", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_setLastRow", "url": "YAHOO.widget.DataTable.html#method__setLastRow", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_setRowStripes", "url": "YAHOO.widget.DataTable.html#method__setRowStripes", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_setSelections", "url": "YAHOO.widget.DataTable.html#method__setSelections", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_sFirstTrId", "url": "YAHOO.widget.DataTable.html#property__sFirstTrId", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "show", "url": "YAHOO.widget.BaseCellEditor.html#method_show", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "showCellEditor", "url": "YAHOO.widget.DataTable.html#method_showCellEditor", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "showColumn", "url": "YAHOO.widget.DataTable.html#method_showColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "showEvent", "url": "YAHOO.widget.BaseCellEditor.html#event_showEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "showTableMessage", "url": "YAHOO.widget.DataTable.html#method_showTableMessage", "type": "method"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_sId", "url": "YAHOO.widget.BaseCellEditor.html#property__sId", "type": "property"}, {"access": "private", "host": "YAHOO.widget.ColumnSet", "name": "_sId", "url": "YAHOO.widget.ColumnSet.html#property__sId", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Column", "name": "_sId", "url": "YAHOO.widget.Column.html#property__sId", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_sId", "url": "YAHOO.widget.DataTable.html#property__sId", "type": "property"}, {"access": "", "host": "YAHOO.widget.DropdownCellEditor", "name": "size", "url": "YAHOO.widget.DropdownCellEditor.html#property_size", "type": "property"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_sLastTrId", "url": "YAHOO.widget.DataTable.html#property__sLastTrId", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "sortable", "url": "YAHOO.widget.Column.html#property_sortable", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "sortColumn", "url": "YAHOO.widget.DataTable.html#method_sortColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "sortedBy", "url": "YAHOO.widget.DataTable.html#config_sortedBy", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "sortedByChange", "url": "YAHOO.widget.DataTable.html#event_sortedByChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "sortFunction", "url": "YAHOO.widget.DataTable.html#config_sortFunction", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "sortFunctionChange", "url": "YAHOO.widget.DataTable.html#event_sortFunctionChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.Column", "name": "sortOptions.defaultDir", "url": "YAHOO.widget.Column.html#property_sortOptions.defaultDir", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "sortOptions.defaultOrder", "url": "YAHOO.widget.Column.html#property_sortOptions.defaultOrder", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "sortOptions.field", "url": "YAHOO.widget.Column.html#property_sortOptions.field", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "sortOptions.sortFunction", "url": "YAHOO.widget.Column.html#property_sortOptions.sortFunction", "type": "property"}, {"access": "", "host": "YAHOO.util.ColumnResizer", "name": "startDrag", "url": "YAHOO.util.ColumnResizer.html#method_startDrag", "type": "method"}, {"access": "", "host": "YAHOO.util.Chain", "name": "stop", "url": "YAHOO.util.Chain.html#method_stop", "type": "method"}, {"access": "private", "host": "YAHOO.widget.BaseCellEditor", "name": "_sType", "url": "YAHOO.widget.BaseCellEditor.html#property__sType", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "summary", "url": "YAHOO.widget.DataTable.html#config_summary", "type": "config"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "summaryChange", "url": "YAHOO.widget.DataTable.html#event_summaryChange", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "_syncColWidths", "url": "YAHOO.widget.DataTable.html#method__syncColWidths", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableBlurEvent", "url": "YAHOO.widget.DataTable.html#event_tableBlurEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableClickEvent", "url": "YAHOO.widget.DataTable.html#event_tableClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableDblclickEvent", "url": "YAHOO.widget.DataTable.html#event_tableDblclickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableFocusEvent", "url": "YAHOO.widget.DataTable.html#event_tableFocusEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableKeyEvent", "url": "YAHOO.widget.DataTable.html#event_tableKeyEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableMousedownEvent", "url": "YAHOO.widget.DataTable.html#event_tableMousedownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableMouseoutEvent", "url": "YAHOO.widget.DataTable.html#event_tableMouseoutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableMouseoverEvent", "url": "YAHOO.widget.DataTable.html#event_tableMouseoverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableMouseupEvent", "url": "YAHOO.widget.DataTable.html#event_tableMouseupEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableMsgHideEvent", "url": "YAHOO.widget.DataTable.html#event_tableMsgHideEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tableMsgShowEvent", "url": "YAHOO.widget.DataTable.html#event_tableMsgShowEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tbodyFocusEvent", "url": "YAHOO.widget.DataTable.html#event_tbodyFocusEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "tbodyKeyEvent", "url": "YAHOO.widget.DataTable.html#event_tbodyKeyEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.TextareaCellEditor", "name": "textarea", "url": "YAHOO.widget.TextareaCellEditor.html#property_textarea", "type": "property"}, {"access": "", "host": "YAHOO.widget.TextboxCellEditor", "name": "textbox", "url": "YAHOO.widget.TextboxCellEditor.html#property_textbox", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadCellClickEvent", "url": "YAHOO.widget.DataTable.html#event_theadCellClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadCellDblclickEvent", "url": "YAHOO.widget.DataTable.html#event_theadCellDblclickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadCellMousedownEvent", "url": "YAHOO.widget.DataTable.html#event_theadCellMousedownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadCellMouseoutEvent", "url": "YAHOO.widget.DataTable.html#event_theadCellMouseoutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadCellMouseoverEvent", "url": "YAHOO.widget.DataTable.html#event_theadCellMouseoverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadCellMouseupEvent", "url": "YAHOO.widget.DataTable.html#event_theadCellMouseupEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadFocusEvent", "url": "YAHOO.widget.DataTable.html#event_theadFocusEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadKeyEvent", "url": "YAHOO.widget.DataTable.html#event_theadKeyEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadLabelClickEvent", "url": "YAHOO.widget.DataTable.html#event_theadLabelClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadLabelDblclickEvent", "url": "YAHOO.widget.DataTable.html#event_theadLabelDblclickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadLabelMousedownEvent", "url": "YAHOO.widget.DataTable.html#event_theadLabelMousedownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadLabelMouseoutEvent", "url": "YAHOO.widget.DataTable.html#event_theadLabelMouseoutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadLabelMouseoverEvent", "url": "YAHOO.widget.DataTable.html#event_theadLabelMouseoverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadLabelMouseupEvent", "url": "YAHOO.widget.DataTable.html#event_theadLabelMouseupEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadRowClickEvent", "url": "YAHOO.widget.DataTable.html#event_theadRowClickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadRowDblclickEvent", "url": "YAHOO.widget.DataTable.html#event_theadRowDblclickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadRowMousedownEvent", "url": "YAHOO.widget.DataTable.html#event_theadRowMousedownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadRowMouseoutEvent", "url": "YAHOO.widget.DataTable.html#event_theadRowMouseoutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadRowMouseoverEvent", "url": "YAHOO.widget.DataTable.html#event_theadRowMouseoverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "theadRowMouseupEvent", "url": "YAHOO.widget.DataTable.html#event_theadRowMouseupEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "toString", "url": "YAHOO.widget.BaseCellEditor.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "toString", "url": "YAHOO.widget.ColumnSet.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.Column", "name": "toString", "url": "YAHOO.widget.Column.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "toString", "url": "YAHOO.widget.DataTable.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.ColumnSet", "name": "tree", "url": "YAHOO.widget.ColumnSet.html#property_tree", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "unblock", "url": "YAHOO.widget.BaseCellEditor.html#method_unblock", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "undisable", "url": "YAHOO.widget.DataTable.html#method_undisable", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "undisableEvent", "url": "YAHOO.widget.DataTable.html#event_undisableEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unhighlightCell", "url": "YAHOO.widget.DataTable.html#method_unhighlightCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unhighlightColumn", "url": "YAHOO.widget.DataTable.html#method_unhighlightColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unhighlightRow", "url": "YAHOO.widget.DataTable.html#method_unhighlightRow", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unselectAllCells", "url": "YAHOO.widget.DataTable.html#method_unselectAllCells", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unselectAllCellsEvent", "url": "YAHOO.widget.DataTable.html#event_unselectAllCellsEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unselectAllRows", "url": "YAHOO.widget.DataTable.html#method_unselectAllRows", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unselectAllRowsEvent", "url": "YAHOO.widget.DataTable.html#event_unselectAllRowsEvent", "type": "event"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_unselectAllTdEls", "url": "YAHOO.widget.DataTable.html#method__unselectAllTdEls", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_unselectAllTrEls", "url": "YAHOO.widget.DataTable.html#method__unselectAllTrEls", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unselectCell", "url": "YAHOO.widget.DataTable.html#method_unselectCell", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unselectColumn", "url": "YAHOO.widget.DataTable.html#method_unselectColumn", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "unselectRow", "url": "YAHOO.widget.DataTable.html#method_unselectRow", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_unsetFirstRow", "url": "YAHOO.widget.DataTable.html#method__unsetFirstRow", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_unsetLastRow", "url": "YAHOO.widget.DataTable.html#method__unsetLastRow", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "updateCell", "url": "YAHOO.widget.DataTable.html#method_updateCell", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_updatePaginator", "url": "YAHOO.widget.DataTable.html#method__updatePaginator", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "updateRow", "url": "YAHOO.widget.DataTable.html#method_updateRow", "type": "method"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "updateRows", "url": "YAHOO.widget.DataTable.html#method_updateRows", "type": "method"}, {"access": "private", "host": "YAHOO.widget.DataTable", "name": "_updateTrEl", "url": "YAHOO.widget.DataTable.html#method__updateTrEl", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "useIFrame", "url": "YAHOO.widget.BaseCellEditor.html#property_useIFrame", "type": "property"}, {"access": "", "host": "YAHOO.widget.DataTable", "name": "validateColumnWidths", "url": "YAHOO.widget.DataTable.html#method_validateColumnWidths", "type": "method"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "validator", "url": "YAHOO.widget.BaseCellEditor.html#property_validator", "type": "property"}, {"access": "", "host": "YAHOO.widget.BaseCellEditor", "name": "value", "url": "YAHOO.widget.BaseCellEditor.html#property_value", "type": "property"}, {"access": "", "host": "YAHOO.widget.CheckboxCellEditor", "name": "value", "url": "YAHOO.widget.CheckboxCellEditor.html#property_value", "type": "property"}, {"access": "", "host": "YAHOO.widget.Column", "name": "width", "url": "YAHOO.widget.Column.html#property_width", "type": "property"}];
|
|
</script>
|
|
</body>
|
|
</html>
|