62 lines
1.4 KiB
JavaScript
62 lines
1.4 KiB
JavaScript
(function ($) {
|
|
$(document).ready(function() {
|
|
|
|
// jQuery reverse
|
|
$.fn.reverse = [].reverse;
|
|
|
|
$(document).on('mouseenter.fixedActionBtn', '.fixed-action-btn', function(e) {
|
|
var $this = $(this);
|
|
openFABMenu($this);
|
|
|
|
});
|
|
|
|
$(document).on('mouseleave.fixedActionBtn', '.fixed-action-btn', function(e) {
|
|
var $this = $(this);
|
|
closeFABMenu($this);
|
|
});
|
|
|
|
});
|
|
|
|
$.fn.extend({
|
|
openFAB: function() {
|
|
var $this = $(this);
|
|
openFABMenu($this);
|
|
},
|
|
closeFAB: function() {
|
|
closeFABMenu($this);
|
|
}
|
|
});
|
|
|
|
|
|
var openFABMenu = function (btn) {
|
|
$this = btn;
|
|
if ($this.hasClass('active') === false) {
|
|
$this.addClass('active');
|
|
$this.find('ul .btn-floating').velocity(
|
|
{ scaleY: ".4", scaleX: ".4", translateY: "40px"},
|
|
{ duration: 0 });
|
|
|
|
var time = 0;
|
|
$this.find('ul .btn-floating').reverse().each(function () {
|
|
$(this).velocity(
|
|
{ opacity: "1", scaleX: "1", scaleY: "1", translateY: "0"},
|
|
{ duration: 80, delay: time });
|
|
time += 40;
|
|
});
|
|
}
|
|
};
|
|
|
|
var closeFABMenu = function (btn) {
|
|
$this = btn;
|
|
$this.removeClass('active');
|
|
var time = 0;
|
|
$this.find('ul .btn-floating').velocity("stop", true);
|
|
$this.find('ul .btn-floating').velocity(
|
|
{ opacity: "0", scaleX: ".4", scaleY: ".4", translateY: "40px"},
|
|
{ duration: 80 }
|
|
);
|
|
};
|
|
|
|
|
|
}( jQuery ));
|