JQ实现Ant Design 全局提示message效果

效果:
在这里插入图片描述

js代码:

/*
* 操作提示框: 成功、失败、提示
* imgSrc: 对应图片
* message: 提示文本
* $parent: 父级容器
* css: 样式
*/
function message(imgSrc, message, $parent, css) {
    var $exTips = $('<div class="exTips autoHide">' +
        '<img src="' + imgSrc + '" class="tipImg">' +
        '<span class="tipContent">' + message + '</span>' +
        '</div>');
    var $parentDom = $parent ? $parent : $('body');
    if( $('.exTips.autoHide').length > 0 ) {
        //向下排队
        var top = parseFloat($('.exTips.autoHide:first').attr('finalTop'));
        $exTips.css({
            'top': $('.exTips.autoHide:first').css('top'),
        }).prependTo( $parentDom ).css('left', 'calc(50% - ' + $exTips.width() / 2 + 'px)').attr({
            'finalTop': top + 70 + 'px',
            'beginTop': $('.exTips.autoHide:first').css('top')
        }).animate({
            'top': top + 70 + 'px',
            'opacity': 1,
        }, 800, 'easeOutQuint',function() {
            setTimeout(function() {
                $exTips.animate({
                    'top': $(this).attr('beginTop'),
                    'opacity': 0
                }, function() {
                    $(this).remove()
                })
            }, 2500) 
        })
    }else {
        $exTips.prependTo( $parentDom ).attr('finalTop', $parent ? '0px' : '60px')
        .css('left', 'calc(50% - ' + $exTips.width() / 2 + 'px)').animate({
            'top': $parent ? '0px' : (60 + document.documentElement.scrollTop + 'px'),
            'opacity': 1,
        }, 800, 'easeOutQuint', function() {
            setTimeout(function() {
                $exTips.animate({
                    'top': $(this).attr('finalTop'),
                    'opacity': 0
                }, function() {
                    $(this).remove()
                })  
            }, 2500)  
        })
    }
},

css:

.exTips {
    position: absolute;
    left: 45%;
    top: 0px;
  	opacity: 0;
    height: 44px;
    padding: 10px 20px;
    background-color: #FFFFFF;
    border-radius: 4px;
    z-index: 999;
    box-sizing: border-box;
    overflow: hidden;
    box-shadow: 0px 10px 32px 0px rgba(38, 38, 38, 0.18);
}
.exTips .tipImg {
    width: 20px;
    vertical-align: top;
}
.exTips .tipContent {
	font-size: 14px;
    margin-left: 16px;
}

调用

message('/Tip_yellow.svg', '至少选中一条告警记录!')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值