MINI Sh3ll
<div id="api" class="content section page hide">
<h1>API</h1>
<div class="box shadow">
<h3 class="code-head">Waves.init(config)</h3>
<p>Initialise Waves with an optional config.</p>
<p>
<strong>Arguments</strong>
</p>
<ul>
<li><span class="code">config</span> - (optional) Configuration object for displaying Waves effect.</li>
</ul>
{{#code class="lang-javascript"}}
var config = {
// How long Waves effect duration
// when it's clicked (in milliseconds)
duration: 500,
// Delay showing Waves effect on touch
// and hide the effect if user scrolls
// (0 to disable delay) (in milliseconds)
delay: 200
};
// Initialise Waves with the config
Waves.init(config);
{{/code}}
<hr>
<h3 class="code-head">Waves.attach(elements, classes)</h3>
<p>Attach ripple effect by adding <span class="code">.waves-effect</span> to HTML element. Make sure you call <span class="code">Waves.init()</span> to activated the ripple.</p>
<p><strong>Arguments</strong></p>
<ul>
<li><span class="code">elements</span> - A string selector, DOM element, or array of DOM elements to add <span class="code">.waves-effect</span> and other <span class="code">classes</span> to.</li>
<li><span class="code">classes</span> - (optional) Waves classes to add to theses elements, for example: <span class="code">'waves-light waves-classic'</span>. Accepts a single string, or array of classes.</li>
</ul>
{{#code class="lang-javascript"}}
// Adds .waves-effect and .waves-light to <button> elems
Waves.attach('button', 'waves-light');
// Make .box ripple when user moves the mouse over it
// with no additional classes
Waves.attach('.box', null);
{{/code}}
<hr>
<h3 class="code-head">Waves.ripple(elements, options)</h3>
<p>Create a ripple effect in HTML element programmaticaly.</p>
<p><strong>Arguments</strong></p>
<ul>
<li><span class="code">elements</span> - A string selector, DOM element, or array of DOM elements. <strong>Note:</strong> the elements must have the <span class="code">.waves-effect</span> class already applied, it can be added via <span class="code">Waves.attach(elements)</span></li>
<li><span class="code">options</span> - (optional) Specify how long to wait between starting and stopping the ripple, and it's position inside the element.</li>
</ul>
{{#code class="lang-javascript"}}
// Default values for options
var options = {
wait: 0, // null = infinite
position: null // null = centre
};
{{/code}}
{{#code class="lang-javascript"}}
// Cause a ripple to occur on .box
Waves.ripple('.box');
// Ripple with a 1s delay between starting
// and stopping the ripple, centred at
// (20px, 20px) inside .box
var options = {
wait: 1000, //ms
position: { // This position relative to HTML element.
x: 20, //px
y: 20 //px
}
};
Waves.ripple('.box', options);
{{/code}}
<hr>
<h3 class="code-head">Waves.calm(elements)</h3>
<p>Remove all ripples from inside an element immediately.</p>
<p><strong>Arguments</strong></p>
<ul>
<li><span class="code">elements</span> - A string selector for elements to remove ripples from.
</ul>
{{#code class="lang-javascript"}}
// Cause a non-terminating ripple at centre of .box
Waves.ripple('.box', {wait: null});
// ...
// Clear all ripples from .box
Waves.calm('.box');
// Ripple on hover
$('button').mouseenter(function() {
Waves.ripple(this, {wait: null});
}).mouseleave(function() {
Waves.calm(this);
});
{{/code}}
</div>
</div>
OHA YOOOO