最近开发经常会用到顶部弹出框,虽然有现成的(bootstrap等),但是都很臃肿,对于有些时候移动端活动页面有点大材小用。所以今晚花了20分钟写了一个通用的插件,我将其命名为msgalert.js
。
因为定位是jQuery插件,所以目前必须依赖jQuery。
有空将其改为纯JS。最近开发用jQuery,原生JS都不太会了。
代码很少,贴出来吧。
function msgAlert(type,msg) {
$('.msg_'+type).html(msg);
$('.msg_'+type).animate({'top': 0},500);
setTimeout(function(){$('.msg_'+type).animate({'top': '-3rem'},500)},2000);
}
$(document).ready(function(){
var htmlstyle = "<style>body{padding:0;margin:0;}.msg{color:#FFF;width:100%;height:3rem;text-align:center;font-size:1.2rem;line-height:3rem;position:fixed;top:-3rem;z-index:20;}"
+".msg_success{background-color:#1fcc6c;}"
+".msg_warning{background-color:#e94b35;}"
+".msg_primary{background-color:#337ab7;}"
+".msg_info{background-color:#5bc0de;}</style>";
$('head').append(htmlstyle);
$('body').prepend('<div class="msg msg_success"></div>'
+'<div class="msg msg_warning"></div>'
+'<div class="msg msg_primary"></div>'
+'<div class="msg msg_info"></div>');
})
使用时直接调用msgAlert(type,msg)函数;
参数type表示弹出框类型,可选择的String类型参数暂有:success / warning / info / primary;
参数msg表示弹出框内容,String类型;
示例:msgAlert("success","登录成功!");
弹出框会使用0.5秒的时间下来,停顿2秒后,重新收缩回去。