Web弹出类似Android的Toast的信息提示

5年以前  |  阅读数:1829 次  |  编程语言:JavaScript 

web js的alert弹出框,有时候并不是我们想要的,但是有时候又想给用户友好的提示,看了android的toast提示框也可在web前端实现。

// JavaScript Document
//  prompt message

function warn(msg, opt, left, top) {
    if (opt) {
        var obj = $("#" + opt);
    }
    new Toast({
        context: $('body'),
        message: msg
    }, obj, left, top).show();

}
var Toast = function(config, obj, left, top) {
        this.context = config.context == null ? $('body') : config.context; //上下文
        this.message = config.message; //显示内容
        this.time = config.time == null ? 3000 : config.time; //持续时间
        this.left = config.left; //距容器左边的距离
        this.top = (screen.availHeight / 4) * 3; //距容器上方的距离
        if (obj) {
            this.left = obj.offset().left + left;
            this.top = obj.offset().top + top;
        }
        this.init();
    }
var msgEntity;
Toast.prototype = {
    //初始化显示的位置内容等
    init: function() {
        $("#toastMessage").remove();
        //设置消息体
        var msgDIV = new Array();
        msgDIV.push('<div id="toastMessage">');
        msgDIV.push('<span>' + this.message + '</span>');
        msgDIV.push('</div>');
        msgEntity = $(msgDIV.join('')).appendTo(this.context);
        //设置消息样式
        var left = this.left == null ? this.context.width() / 2 - msgEntity.find('span').width() / 2 : this.left;
        var top = this.top == null ? '20px' : this.top;
        msgEntity.css({
            position: 'absolute',
            top: top,
            'z-index': '99',
            left: left,
            'background-color': 'black',
            color: 'white',
            'font-size': '12px',
            padding: '5px',
            margin: '5px',
            'border-radius': '4px',
            '-moz-border-radius': '4px',
            '-webkit-border-radius': '4px',
            opacity: '0.5',
            'font-family': '微软雅黑'
        });
        //msgEntity.addClass(".toast");
        msgEntity.hide();
    },
    //显示动画
    show: function() {
        msgEntity.fadeIn(this.time / 2);
        msgEntity.fadeOut(this.time / 2);
    }

}
 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
Java生成UUID
PHP自定义函数获取搜索引擎来源关键字的方法
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
指定应用ID以获取对应的应用名称
再谈PHP中单双引号的区别详解
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例