60 lines
1.2 KiB
JavaScript
60 lines
1.2 KiB
JavaScript
layui.define(['jquery'], function (exports) {
|
|
"use strict";
|
|
|
|
/**
|
|
* @since Pear Admin 4.0
|
|
*
|
|
* Button component
|
|
* */
|
|
var MOD_NAME = 'button',
|
|
$ = layui.jquery;
|
|
|
|
var button = function (opt) {
|
|
this.option = opt;
|
|
};
|
|
|
|
/**
|
|
* @since Pear Admin 4.0
|
|
*
|
|
* Button start loading
|
|
* */
|
|
button.prototype.load = function (opt) {
|
|
|
|
var options = {
|
|
elem: opt.elem,
|
|
time: opt.time ? opt.time : false,
|
|
done: opt.done ? opt.done : function () { }
|
|
}
|
|
|
|
var text = $(options.elem).html();
|
|
|
|
$(options.elem).html("<i class='layui-anim layui-anim-rotate layui-icon layui-anim-loop layui-icon-loading'/>");
|
|
$(options.elem).attr("disabled", "disabled");
|
|
|
|
var $button = $(options.elem);
|
|
|
|
if (options.time != "" || options.time != false) {
|
|
setTimeout(function () {
|
|
$button.attr("disabled", false);
|
|
$button.html(text);
|
|
options.done();
|
|
}, options.time);
|
|
}
|
|
options.text = text;
|
|
return new button(options);
|
|
}
|
|
|
|
/**
|
|
* @since Pear Admin 4.0
|
|
*
|
|
* Button stop loaded
|
|
* */
|
|
button.prototype.stop = function (success) {
|
|
$(this.option.elem).attr("disabled", false);
|
|
$(this.option.elem).html(this.option.text);
|
|
success && success();
|
|
}
|
|
|
|
exports(MOD_NAME, new button());
|
|
});
|