(function() {
Date.prototype.Format = function (fmt) { //author: meizz
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"H+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt;
}
$.extend($.fn, {
//提示框组件
alert: function(options) {
var defaults = {
tip: '',
cancelBtnLbl: '取消',
confirmBtnLbl: '确定',
otherBtnLbl: '其他',
maskColor: '#000',
cancelCallback: null,
confirmCallback: null
};
var settings = $.extend(defaults, options || {}),
$this;
function initialize() {
var HTML = '
'+
'
'+
''+
'
'+
'' +
settings.tip +
''+
'
'+
'
'+
'' +
''+
''+
'
'+
'
'+
'' +
settings.cancelBtnLbl +
''+
'' +
settings.confirmBtnLbl +
''+
'
'+
'
';
$this = $(HTML).appendTo($('body'));
var $btn = $this.children('div:eq(2)');
$btn.children().eq(0).off('click', cancelBtnClickHandler).on('click', cancelBtnClickHandler);
$btn.children().eq(1).off('click', confirmBtnClickHandler).on('click', confirmBtnClickHandler);
var currYear = (new Date()).getFullYear();
var opt={};
opt.date = {preset : 'date'};
opt.datetime = {preset : 'datetime'};
opt.time = {preset : 'time'};
opt.default = {
theme: 'android-ics light', //皮肤样式
display: 'modal', //显示方式
mode: 'scroller', //日期选择模式
dateFormat: 'yyyy-mm-dd',
lang: 'zh',
showNow: true,
nowText: "今天",
startYear: currYear - 50, //开始年份
endYear: currYear + 10 //结束年份
};
$("#selDate").mobiscroll($.extend(opt['date'], opt['default']));
$("#selDate").val(new Date().Format("yyyy-MM-dd"));
}
//取消按钮事件
function cancelBtnClickHandler() {
if (settings.cancelCallback && typeof settings.cancelCallback == 'function') {
settings.cancelCallback();
}
$this.remove();
}
function confirmBtnClickHandler() {
if (settings.confirmCallback && typeof settings.confirmCallback == 'function') {
settings.confirmCallback();
}
$this.remove();
}
initialize();
},
});
})(jQuery)