| <!doctype html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <title>jQuery UI mouse documentation</title> |
| |
| <style> |
| body { |
| font-family: "Trebuchet MS", "Arial", "Helvetica", "Verdana", "sans-serif" |
| } |
| .gutter { |
| display: none; |
| } |
| </style> |
| </head> |
| <body> |
| |
| <script>{ |
| "title": |
| "Mouse Interaction", |
| "excerpt": |
| "The base interaction layer.", |
| "termSlugs": { |
| "category": [ |
| "utilities","interactions" |
| ] |
| } |
| }</script><article id="mouse1" class="entry widget"><h2 class="section-title"><span>Mouse Interaction</span></h2> |
| <div class="entry-wrapper"> |
| <p class="desc"><strong>Description: </strong>The base interaction layer.</p> |
| <section id="quick-nav"><header><h2>QuickNav</h2></header><div class="quick-nav-section"> |
| <h3>Options</h3> |
| <div><a href="#option-cancel">cancel</a></div> |
| <div><a href="#option-delay">delay</a></div> |
| <div><a href="#option-distance">distance</a></div> |
| </div> |
| <div class="quick-nav-section"> |
| <h3>Methods</h3> |
| <div><a href="#method-_mouseCapture">_mouseCapture</a></div> |
| <div><a href="#method-_mouseDelayMet">_mouseDelayMet</a></div> |
| <div><a href="#method-_mouseDestroy">_mouseDestroy</a></div> |
| <div><a href="#method-_mouseDistanceMet">_mouseDistanceMet</a></div> |
| <div><a href="#method-_mouseDown">_mouseDown</a></div> |
| <div><a href="#method-_mouseDrag">_mouseDrag</a></div> |
| <div><a href="#method-_mouseInit">_mouseInit</a></div> |
| <div><a href="#method-_mouseMove">_mouseMove</a></div> |
| <div><a href="#method-_mouseStart">_mouseStart</a></div> |
| <div><a href="#method-_mouseStop">_mouseStop</a></div> |
| <div><a href="#method-_mouseUp">_mouseUp</a></div> |
| </div> |
| <div class="quick-nav-section"><h3>Events</h3></div></section><div class="longdesc" id="entry-longdesc"> |
| <p>Similar to <a href="/jQuery.Widget#jQuery-Widget2"><code>jQuery.Widget</code></a>, the mouse interaction is not intended to be used directly. It is purely a base layer for other widgets to inherit from. This page only documents what is added to <code>jQuery.Widget</code>, but it does include internal methods that are not intended to be overwritten. The intended public API is <a href="#method-_mouseStart"><code>_mouseStart()</code></a>, <a href="#method-_mouseDrag"><code>_mouseDrag()</code></a>, <a href="#method-_mouseStop"><code>_mouseStop()</code></a>, and <a href="#method-_mouseCapture"><code>_mouseCapture()</code></a>.</p> |
| |
| <h3>Dependencies</h3> |
| <ul> |
| <li><a href="/jQuery.widget/">Widget Factory</a></li> |
| </ul> |
| </div> |
| <section id="options"><header><h2>Options</h2></header><div id="option-cancel" class="api-item first-item"> |
| <h3>cancel<span class="option-type"><strong>Type: </strong><a href="http://api.jquery.com/Types/#Selector">Selector</a></span> |
| </h3> |
| <div class="default"> |
| <strong>Default: </strong><code>"input,textarea,button,select,option"</code> |
| </div> |
| <div>Prevents interactions from starting on specified elements.</div> |
| <strong>Code examples:</strong><p>Initialize the mouse with the <code>cancel</code> option specified:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse({ cancel: <span class="string">".title"</span> });</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| <p>Get or set the <code>cancel</code> option, after initialization:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| <div class="line n2">2</div> |
| |
| <div class="line n3">3</div> |
| |
| <div class="line n4">4</div> |
| |
| <div class="line n5">5</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code><span class="comment">// getter</span></code></div></div><div class="container"><div class="line"><code><span class="keyword">var</span> cancel = $( <span class="string">".selector"</span> ).mouse( <span class="string">"option"</span>, <span class="string">"cancel"</span> );</code></div></div><div class="container"><div class="line"><code> </code></div></div><div class="container"><div class="line"><code><span class="comment">// setter</span></code></div></div><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"option"</span>, <span class="string">"cancel"</span>, <span class="string">".title"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| <div id="option-delay" class="api-item"> |
| <h3>delay<span class="option-type"><strong>Type: </strong><a href="http://api.jquery.com/Types/#Number">Number</a></span> |
| </h3> |
| <div class="default"> |
| <strong>Default: </strong><code>0</code> |
| </div> |
| <div>Time in milliseconds after mousedown until the interaction should start. This option can be used to prevent unwanted interactions when clicking on an element.</div> |
| <strong>Code examples:</strong><p>Initialize the mouse with the <code>delay</code> option specified:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse({ delay: <span class="number">300</span> });</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| <p>Get or set the <code>delay</code> option, after initialization:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| <div class="line n2">2</div> |
| |
| <div class="line n3">3</div> |
| |
| <div class="line n4">4</div> |
| |
| <div class="line n5">5</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code><span class="comment">// getter</span></code></div></div><div class="container"><div class="line"><code><span class="keyword">var</span> delay = $( <span class="string">".selector"</span> ).mouse( <span class="string">"option"</span>, <span class="string">"delay"</span> );</code></div></div><div class="container"><div class="line"><code> </code></div></div><div class="container"><div class="line"><code><span class="comment">// setter</span></code></div></div><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"option"</span>, <span class="string">"delay"</span>, <span class="number">300</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| <div id="option-distance" class="api-item"> |
| <h3>distance<span class="option-type"><strong>Type: </strong><a href="http://api.jquery.com/Types/#Number">Number</a></span> |
| </h3> |
| <div class="default"> |
| <strong>Default: </strong><code>1</code> |
| </div> |
| <div>Distance in pixels after mousedown the mouse must move before the interaction should start. This option can be used to prevent unwanted interactions when clicking on an element.</div> |
| <strong>Code examples:</strong><p>Initialize the mouse with the <code>distance</code> option specified:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse({ distance: <span class="number">10</span> });</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| <p>Get or set the <code>distance</code> option, after initialization:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| <div class="line n2">2</div> |
| |
| <div class="line n3">3</div> |
| |
| <div class="line n4">4</div> |
| |
| <div class="line n5">5</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code><span class="comment">// getter</span></code></div></div><div class="container"><div class="line"><code><span class="keyword">var</span> distance = $( <span class="string">".selector"</span> ).mouse( <span class="string">"option"</span>, <span class="string">"distance"</span> );</code></div></div><div class="container"><div class="line"><code> </code></div></div><div class="container"><div class="line"><code><span class="comment">// setter</span></code></div></div><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"option"</span>, <span class="string">"distance"</span>, <span class="number">10</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div></section><section id="methods"><header><h2>Methods</h2></header><div id="method-_mouseCapture"><div class="api-item first-item"> |
| <h3>_mouseCapture()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#Boolean">Boolean</a></span> |
| </h3> |
| <div> |
| Determines whether an interaction should start based on event target of the interaction. The default implementation always returns <code>true</code>. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseCapture method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseCapture"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseDelayMet"><div class="api-item"> |
| <h3>_mouseDelayMet()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#Boolean">Boolean</a></span> |
| </h3> |
| <div> |
| Determines whether the <a href="#option-delay"><code>delay</code></a> option has been met for the current interaction. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseDelayMet method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseDelayMet"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseDestroy"><div class="api-item"> |
| <h3>_mouseDestroy()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#jQuery">jQuery</a> (<a href="http://learn.jquery.com/jquery-ui/widget-factory/widget-method-invocation/">plugin only</a>)</span> |
| </h3> |
| <div> |
| Destroys the interaction event handlers. This must be called from the extending widget's <code>_destroy()</code> method. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseDestroy method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseDestroy"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseDistanceMet"><div class="api-item"> |
| <h3>_mouseDistanceMet()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#Boolean">Boolean</a></span> |
| </h3> |
| <div> |
| Determines whether the <a href="#option-distance"><code>distance</code></a> option has been met for the current interaction. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseDistanceMet method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseDistanceMet"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseDown"><div class="api-item"> |
| <h3>_mouseDown()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#jQuery">jQuery</a> (<a href="http://learn.jquery.com/jquery-ui/widget-factory/widget-method-invocation/">plugin only</a>)</span> |
| </h3> |
| <div> |
| Handles the beginning of an interaction. Verifies that the event is associated with the primary mouse button and ensures that the <a href="#option-delay"><code>delay</code></a> and <a href="#option-distance"><code>distance</code></a> options are met prior to starting the interaction. When the interaction is ready to start, invokes the <a href="#method-_mouseStart"><code>_mouseStart()</code></a> method for the extending widget to handle. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseDown method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseDown"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseDrag"><div class="api-item"> |
| <h3>_mouseDrag()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#jQuery">jQuery</a> (<a href="http://learn.jquery.com/jquery-ui/widget-factory/widget-method-invocation/">plugin only</a>)</span> |
| </h3> |
| <div> |
| The extending widget should implement a <code>_mouseDrag()</code> method to handle each movement of an interaction. This method will receive the mouse event associated with the movement. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseDrag method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseDrag"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseInit"><div class="api-item"> |
| <h3>_mouseInit()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#jQuery">jQuery</a> (<a href="http://learn.jquery.com/jquery-ui/widget-factory/widget-method-invocation/">plugin only</a>)</span> |
| </h3> |
| <div> |
| Initializes the interaction event handlers. This must be called from the extending widget's <code>_create()</code> method. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseInit method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseInit"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseMove"><div class="api-item"> |
| <h3>_mouseMove()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#jQuery">jQuery</a> (<a href="http://learn.jquery.com/jquery-ui/widget-factory/widget-method-invocation/">plugin only</a>)</span> |
| </h3> |
| <div> |
| Handles each movement of the interaction. Invokes the <a href="#method-_mouseDrag"><code>mouseDrag()</code></a> method for the extending widget to handle. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseMove method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseMove"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseStart"><div class="api-item"> |
| <h3>_mouseStart()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#jQuery">jQuery</a> (<a href="http://learn.jquery.com/jquery-ui/widget-factory/widget-method-invocation/">plugin only</a>)</span> |
| </h3> |
| <div> |
| The extending widget should implement a <code>_mouseStart()</code> method to handle the beginning of an interaction. This method will receive the mouse event associated with the start of the interaction. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseStart method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseStart"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseStop"><div class="api-item"> |
| <h3>_mouseStop()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#jQuery">jQuery</a> (<a href="http://learn.jquery.com/jquery-ui/widget-factory/widget-method-invocation/">plugin only</a>)</span> |
| </h3> |
| <div> |
| The extending widget should implement a <code>_mouseStop()</code> method to handle the end of an interaction. This method will receive the mouse event associated with the end of the interaction. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseStop method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseStop"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div> |
| <div id="method-_mouseUp"><div class="api-item"> |
| <h3>_mouseUp()<span class="returns">Returns: <a href="http://api.jquery.com/Types/#jQuery">jQuery</a> (<a href="http://learn.jquery.com/jquery-ui/widget-factory/widget-method-invocation/">plugin only</a>)</span> |
| </h3> |
| <div> |
| Handles the end of the interaction. Invokes the <a href="#method-_mouseStop"><code>mouseStop()</code></a> method for the extending widget to handle. |
| </div> |
| <ul><li><div class="null-signature">This method does not accept any arguments.</div></li></ul> |
| <div> |
| <strong>Code examples:</strong><p>Invoke the _mouseUp method:</p> |
| <div class="syntaxhighlighter javascript nogutter"> |
| <table> |
| <tbody> |
| <tr> |
| <td class="gutter"> |
| |
| <div class="line n1">1</div> |
| |
| </td> |
| <td class="code"> |
| <pre><div class="container"><div class="line"><code>$( <span class="string">".selector"</span> ).mouse( <span class="string">"_mouseUp"</span> );</code></div></div></pre> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| </div> |
| </div></div></section> |
| </div></article> |
| |
| </body> |
| </html> |