platform-project
Version:
平台项目
213 lines (207 loc) • 7.72 kB
JavaScript
module.exports = (function () {
return {
/**
* 格式化时间
* @param time 时间
* @param spacer 日期与时间分隔符
* 1531909984020 -> 2018-07-18 18:33:04
*/
formatTime: function (time, spacer) {
var spacer = spacer || ' ';
var date = new Date(time);
var year = date.getFullYear(),
month = date.getMonth() + 1,
day = date.getDate(),
hour = date.getHours(),
minute = date.getMinutes(),
second = date.getSeconds();
if (month < 10) {
month = '0' + month;
}
if (day < 10) {
day = '0' + day;
}
if (hour < 10) {
hour = '0' + hour;
}
if (minute < 10) {
minute = '0' + minute;
}
if (second < 10) {
second = '0' + second;
}
return year + '-' + month + '-' + day + spacer + hour + ':' + minute + ':' + second;
},
getReplace: function (e) {
var replacement = {
"<": "<",
">": ">",
"\"": """,
"\u00ae": "®",
"\u00a9": "©"
};
return replacement[e];
},
/**
* 对文本进行编码
* @param {source} source
* @param {crlf} crlf
*/
encodeHTML: function (source, crlf) {
if (source == null) {
return "";
}
if (crlf == null) {
crlf = "";
}
return source.replace(new RegExp("[<>\"\\u00ae\\u00a9]", "g"), this.getReplace).replace(new RegExp("\\r?\\n", "g"), crlf);
},
/**
* 发送ajax请求
* @param {选项} opts
*/
doAjax: function (opts) {
var _this = this;
var method = opts.method || 'POST';
var url = opts.url;
var data = opts.data;
$.ajax({
url: url,
method: method,
data: data,
success: function (data) {
if (data.code === 0) {
opts.success(data.data);
} else {
_this.prompt(data.message);
}
},
error: function () {
_this.prompt('网络错误!');
}
});
},
/**
* 解析页面URL参数
*/
parseURL: function (url) {
var urlParaObj = {};
var url = url || window.location.href;
var qs = '';
if (url.indexOf('?') > -1) {
qs = url.substring(url.lastIndexOf("?") + 1);
var items = qs.length > 0 ? qs.split('&') : [],
item = null,
name = null,
value = null;
for (var i = 0; i < items.length; i++) {
item = items[i].split("=");
name = item[0];
value = item[1];
urlParaObj[name] = value;
}
}
return urlParaObj;
},
substring: function (str, len) {
if (!str) {
return '';
}
if (str.length > len) {
return str.substring(0, len - 1) + '...';
}
return str;
},
prompt: function(msg){
var $textPromptMask = $('.text-prompt-mask');
if ($textPromptMask.length === 0) {
$textPromptMask = $('<div class="text-prompt-mask prompt-mask">' +
'<div class="text-prompt prompt shadow">' +
'<div class="title-area">' +
' <a href="javascript:;" class="close-btn"></a>' +
'</div>' +
'<p class="msg"></p>' +
'<div class="btns-area">' +
' <a href="javascript:;" class="sure-btn blue-btn">确定</a>' +
'</div>' +
'</div></div>');
$textPromptMask.find('.close-btn').on('click', function(){
$textPromptMask.addClass('hidden');
});
$textPromptMask.find('.sure-btn').on('click', function(){
$textPromptMask.addClass('hidden');
});
$('body').append($textPromptMask);
}
$textPromptMask.find('.msg').html(msg);
$textPromptMask.removeClass('hidden');
},
deletePrompt: function () {
var $textPromptMask = $('.delete-prompt-mask');
if ($textPromptMask.length === 0) {
$textPromptMask = $('<div class="text-prompt-mask delete-prompt-mask prompt-mask">' +
'<div class="text-prompt prompt shadow">' +
'<div class="title-area">' +
' <a href="javascript:;" class="close-btn"></a>' +
'</div>' +
'<p class="msg"></p>' +
'<div class="btns-area">' +
' <a href="javascript:;" class="sure-btn blue-btn">确定</a>' +
'</div>' +
'</div></div>');
$textPromptMask.find('.close-btn').on('click', function () {
$textPromptMask.remove();
});
// $textPromptMask.find('.sure-btn').on('click', function () {
// $textPromptMask.addClass('hidden');
// });
$('body').append($textPromptMask);
}
$textPromptMask.find('.msg').html('确认删除该版本?');
$textPromptMask.removeClass('hidden');
return $textPromptMask;
},
doDownload: function (src) {
// var _this = this;
// this.doAjax({
// method: 'GET',
// url: src,
// success: function(data){
// var code = +data.code;
// if (code !== 0) {
// _this.prompt(data.message);
// }
// }
// });
var $iframe = $('#downloadIframe');
if ($iframe.length > 0) {
$iframe.remove();
}
var elemIF = $('<iframe id="downloadIframe" src=' + src + '></iframe>');
$('body').append(elemIF);
},
handleEmptyText: function(text){
return text || '暂无';
},
/**
* 格式化文件大小=
*/
sizeFormat: function(size){
if (size < 1024) {
return size + ' B';
} else if (size < (1024*1024)) {
var temp = size / 1024;
temp = temp.toFixed(2);
return temp + ' KB';
} else if (size < (1024*1024*1024)) {
var temp = size / (1024*1024);
temp = temp.toFixed(2);
return temp + ' MB';
} else {
var temp = size / (1024*1024*1024);
temp = temp.toFixed(2);
return temp + ' GB';
}
},
}
})();