Authored by ‘superliu’

杭州-故障诊断-消息推送弹框模板

... ... @@ -20,6 +20,7 @@ layui.extend({
,view = layui.view
,defaultIndex = ''
// 根据 路由渲染页面
,renderPage = function(){
var show = location.search.substr(1).split("&")[0].split("=")[1];
... ... @@ -361,6 +362,7 @@ layui.extend({
});
};
//系统登录后建立长连接监控实时告警信息
layui.use(['jquery','msgTips','sockjs','stomp', 'laytpl'], function () {
var msgTips = layui.msgTips
... ... @@ -448,28 +450,54 @@ layui.extend({
if (queryResult) {
content = laytpl(content).render(queryResult);
}
setTimeout(function () {
new msgTips({
dom: ".right-bottom-tips",
title: title,
message: `<p style="line-height: 40px">${content}</p>`,
duration: 10000,
space: 10,
firstSpace: 8,
limit: 8,
margin: 15,
direction: 'right bottom',
timingFun: 'ease',
width: '300px',
toastType: toastType,
type: 'click',
action: function () {
if (hash) {
location.hash = hash;
//判断是否为故障诊断的三种类型
if(toastType=='faultinfo'||toastType=='FAULTPROGRESS'||toastType=='FAULTOVER'){
setTimeout(function () {
new msgTips({
dom: ".right-bottom-tips",
title: title,
message: `<p style="line-height: 30px;background: url(/src/style/img/fault.png) no-repeat;background-size: 70%;height: 178px;padding: 10px;background-position-x: right;padding-left: 106px;padding-top: 96px;">${content}</p>`,
duration: 10000,
space: 10,
firstSpace: 8,
limit: 8,
margin: 15,
direction: 'right bottom',
timingFun: 'ease',
width: '300px',
toastType: toastType,
type: 'click',
action: function () {
if (hash) {
location.hash = hash;
}
}
}
})
}, delay);
})
}, delay);
}else{
setTimeout(function () {
new msgTips({
dom: ".right-bottom-tips",
title: title,
message: `<p style="line-height: 40px">${content}</p>`,
duration: 10000,
space: 10,
firstSpace: 8,
limit: 8,
margin: 15,
direction: 'right bottom',
timingFun: 'ease',
width: '300px',
toastType: toastType,
type: 'click',
action: function () {
if (hash) {
location.hash = hash;
}
}
})
}, delay);
}
}
... ...
... ... @@ -26,6 +26,7 @@ layui.define(['layer', 'laytpl', 'form'], function (exports) {
} else {
minus = "";
}
if ($('.ez_tips').size() == 0 || $('.ez_tips').size() < options.limit) {
var container = "<div class='ez_tips "+options.toastType+"' style="+firstDirection+":"+options.margin+"px;transform:translateX("+minus+"110%)></div>"
... ... @@ -94,9 +95,77 @@ layui.define(['layer', 'laytpl', 'form'], function (exports) {
$(newContent).css('cursor','pointer').on(options.type,options.action);
}
},1);
$(options.dom).append(newContainer);
} else if(options.toastType=='faultinfo'){
var container = "<div class='fault_ez_tips "+options.toastType+"' style="+firstDirection+":"+options.margin+"px;bottom: 319px;transform:translateX("+minus+"110%);></div>"
var head = "<div class='faultTitle faultClearfix'><i class='faultTips_icon_l fl'></i><i class='FaultTips_icon_r close'></i></div>";
var content = "<div class='FaultTips-message' style='cursor: pointer; display: flex;justify-content: flex-end;'></div>"
var newHead = $(head).append(options.title);
var newContent = $(content).append(options.message)
var newContainer = $(container).append(newHead,newContent);
setTimeout(function () {
var timer;
function timeOut () {
$(newContainer).removeClass('active');
setTimeout(function () {
$(newContainer).remove();
}, 700)
};
timer = setTimeout(timeOut, options.duration);
var newTimes;
var times = Date.now();
$(newContainer).css({
'transition-timing-function':options.timingFun,
'width':options.width,
});
var height = $(newContainer).outerHeight(true);
var len = $('.ez_tips').size();
if (len >= 2) {
for (var i = 1; i < len; i++) {
if (!$('.ez_tips').hasClass('length1')) {
$(newContainer).css(lastDirection,options.firstSpace + 'px');
$(newContainer).addClass('active length1');
break;
} else if (!$('.ez_tips').hasClass('length'+ (i+1))) {
$(newContainer).css(lastDirection,i * height + options.space * i + options.firstSpace + 'px');
$(newContainer).addClass('active length'+(i+1));
break; // break一定要加,否则每次点击都会循环到结束,导致一个目标div可能同时有length1 length2.....等多个类名
}
}
} else {
$(newContainer).css(lastDirection,options.firstSpace + 'px');
$(newContainer).addClass('active length1');
}
$(newContainer).on('mouseenter', function (event) {
event.stopPropagation();
$(newHead).find('.close').addClass('active');
clearTimeout(timer);
newTimes = Date.now() - times;
});
$(newContainer).on('mouseleave', function (event) {
event.stopPropagation();
$(newHead).find('.close').removeClass('active');
timer = setTimeout(timeOut, options.duration - newTimes);
});
$(newHead).find('.close').click(function () {
$(newContainer).removeClass('active');
setTimeout(function () {
$(newContainer).remove();
},700)
});
if (options.action) {
$(newContent).css('cursor','pointer').on(options.type,options.action);
}
},1);
$(options.dom).append(newContainer);
} else {
}else{
return;
}
... ... @@ -111,4 +180,5 @@ layui.define(['layer', 'laytpl', 'form'], function (exports) {
}
exports('msgTips', MsgTips);
layui.link('../../src/style/css/tips.css')
layui.link('../../src/style/css/tipsFault.css')
})
\ No newline at end of file
... ...
... ... @@ -26,8 +26,8 @@
padding:5px 5px 15px 5px;
transition: all .7s;
font-size: 14px;
box-shadow: 0 0 8px #999;
border:1px solid #8e7e7e;
/*box-shadow: 0 0 8px #999;*/
/*border:1px solid #8e7e7e;*/
}
.ez_tips.info {
background-color: #2f96b4;
... ...
.faultClearfix:after {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
@font-face {font-family: "iconfont";
src: url('../font/iconfont.eot?t=1545291398330'); /* IE9*/
src: url('../font/iconfont.eot?t=1545291398330#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAATwAAsAAAAAB1gAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFY870isY21hcAAAAYAAAABXAAABhmgk0b9nbHlmAAAB2AAAASIAAAE4K/A34GhlYWQAAAL8AAAALwAAADYTohMMaGhlYQAAAywAAAAcAAAAJAfeA4RobXR4AAADSAAAAAwAAAAMDAAAAGxvY2EAAANUAAAACAAAAAgANgCcbWF4cAAAA1wAAAAeAAAAIAEQAE5uYW1lAAADfAAAAUUAAAJtPlT+fXBvc3QAAATEAAAAKwAAAD14rrqieJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2BkYWCcwMDKwMHUyXSGgYGhH0IzvmYwYuRgYGBiYGVmwAoC0lxTGByeVT7bxdzwv4EhhrmBoQEozAiSAwD04A0WeJztkMERgCAMBPcAeTgW4sOCfNmHrVEQbWAStAtvZnPJBT4BFiAbh1FAF8J1WqrIM2vkJd5Uc5H63dsY8LlJtqvmyf+p8muLur9T8mtNom8T9ACizRISAHicLY+/TsJQFMbPx61WUm6lSlsaiUhji0jSQQIslFQSdCurpMaEXdwM3ZxNdLOsdHR1lBcor+E7uIpexZOcnD/fl/PLIUYi2CT3QYx26YAItXZtX4V8CLOPrgfmoS4aMarACJP14m2eSVI2T1aMrZJ4IUmLeJYyluL6Er6UJf9y9vXI0o0yi9M/DNH3K7tnER1Tk86JHA8+xH0P9rYsmHrptwhUa0Nv9XPulu3WWyqcjg+x6XT7ODNMwxQGvWSyW6OMcWiFNyLHKBs7KBg8VaIgiJSU6xzrp72qEivV9aeFi54mF9wTtyBr/hDWgx023scvzXav1z5NrpaN0FYsk8MfiUd9cNO6K3JefA6Gy8G0kteOXKem5SvTwXIY/AAGcUEEAAB4nGNgZGBgAOJZq2oE4/ltvjJwszCAwA3H9DYE/X8FCwNzNJDLwcAEEgUAF4AJoQB4nGNgZGBgbvjfwBDDwgACQJKRARUwAwBHCQJsBAAAAAQAAAAEAAAAAAAAAAA2AJx4nGNgZGBgYGZwAmIQYAJiLiBkYPgP5jMAAA9SAV8AAHicZY9NTsMwEIVf+gekEqqoYIfkBWIBKP0Rq25YVGr3XXTfpk6bKokjx63UA3AejsAJOALcgDvwSCebNpbH37x5Y08A3OAHHo7fLfeRPVwyO3INF7gXrlN/EG6QX4SbaONVuEX9TdjHM6bCbXRheYPXuGL2hHdhDx18CNdwjU/hOvUv4Qb5W7iJO/wKt9Dx6sI+5l5XuI1HL/bHVi+cXqnlQcWhySKTOb+CmV7vkoWt0uqca1vEJlODoF9JU51pW91T7NdD5yIVWZOqCas6SYzKrdnq0AUb5/JRrxeJHoQm5Vhj/rbGAo5xBYUlDowxQhhkiMro6DtVZvSvsUPCXntWPc3ndFsU1P9zhQEC9M9cU7qy0nk6T4E9XxtSdXQrbsuelDSRXs1JErJCXta2VELqATZlV44RelzRiT8oZ0j/AAlabsgAAAB4nGNgYoAALgbsgJmRiZGZkYWBJTHTzIInMzm/IjOvIjMRSDEwAABGIwaAAA==') format('woff'),
url('../font/iconfont.ttf?t=1545291398330') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
url('../font/iconfont.svg?t=1545291398330#iconfont') format('svg'); /* iOS 4.1- */
}
.fault_ez_tips {
position: fixed;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
z-index:9999999;
color: #fff;
opacity: .8;
background-position: 15px center;
background-repeat: no-repeat;
padding:5px 5px 15px 5px;
transition: all .7s;
font-size: 14px;
/*box-shadow: 0 0 8px #999;*/
/*border:1px solid #8e7e7e;*/
}
.fault_ez_tips.info {
background-color: #2f96b4;
bottom: 319px;
}
.fault_ez_tips.warning {
background-color: #f89406;
}
.fault_ez_tips.error {
background-color: #bd362f;
}
.fault_ez_tips.success {
background-color: #51a351;
}
.fault_ez_tips .faultTips_icon_l {
width: 10px;
height: 10px;
}
.fault_ez_tips.info .faultTips_icon_l {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=);
}
.fault_ez_tips.success .faultTips_icon_l {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==);
}
.fault_ez_tips.warning .faultTips_icon_l {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=);
}
.fault_ez_tips.error .faultTips_icon_l {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=);
}
.fault_ez_tips .FaultTips_icon_r.close {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAABY0lEQVRIS7XVsUtVURgA8N/LTMQCachBEEXQhpBoEBVsiCCJXF3cFaFBGmxqcRGCaMgGGxvERnHwP2gUdHRwUhAcpNXlyJHz5PJ4997ntXvgcuFy+H7nO9937mmEEK7QrabRCCFcor+m+CJwgpE6gX3M1Ql8w6c6gQX8qRMYxGkJ8BN/8Rtdmbn/8B4beN0uRiN+DCEcYqIAuUgBXmAnITH4GzzDLh4VAR/xoySLiMzgJX7hbVnwGK+ZwROcIb6LxjlmEbHpopU3g9wAaZu+Y7VOYAjH6MlBqm9RJot1fGkDlBV5Dw9zi5wB4uqPMNYyuahN3+FrYZtmg4UQnuMAvf/j8N0WuQX5kDrkwX2RtkDqqiVs1QYkZAWbqJxJbgaZws9jG4+rZFMKpExi4eO9MXxXpCMgIX2I/6w1PO0U6hjIbFmElhM0UAbdGchA8fe8iM8Yz4MqAy3nZhRTmEzPq+b9cA2H83u5C1cF7AAAAABJRU5ErkJggg==);
}
.fault_ez_tips.info:hover,.fault_ez_tips.warning:hover,.fault_ez_tips.error:hover,.fault_ez_tips.success:hover {
box-shadow: 0 0 8px #000;
opacity: 1;
}
.fault_ez_tips.active {
transform: translateX(0)!important;
}
.fault_ez_tips .faultTitle {
padding-bottom:10px;
text-align: center;
position: relative;
}
.fault_ez_tips .faultTitle > i.faultTips_icon_l{
position: absolute;
width: 24px;
height: 24px;
left: 0;
top: 0;
}
.fault_ez_tips .faultTitle > i.FaultTips_icon_r.close{
position: absolute;
width: 24px;
height: 24px;
right: -25;
top: 0;
cursor: pointer;
opacity: 0;
transition: opacity .5s;
}
.fault_ez_tips .faultTitle > i.FaultTips_icon_r.close.active {
opacity: 1;
}
.fault_ez_tips i {
font-style: normal;
}
.fault_ez_tips .FaultTips-message .num {
color: #fff000;
}
... ...