最近在做一个众筹系统的网站,客户要求需要有新订单就要在后台弹窗提醒,下面分享一下方法,以便以后用到!
改:加上了语音提醒
首先需要添加 artdialog下角弹窗的代码
将一下代码添加到的尾部即可\statics\js\dialog.js
artDialog.notice = function (options) {
var opt = options || {},
api, aConfig, hide, wrap, top,
duration = 800;
var config = {
id: 'Notice',
left: '100%',
top: '100%',
fixed: true,
drag: false,
resize: false,
follow: null,
lock: false,
init: function(here){
api = this;
aConfig = api.config;
wrap = api.DOM.wrap;
top = parseInt(wrap[0].style.top);
hide = top + wrap[0].offsetHeight;
wrap.css('top', hide + 'px')
.animate({top: top + 'px'}, duration, function () {
opt.init && opt.init.call(api, here);
});
},
close: function(here){
wrap.animate({top: hide + 'px'}, duration, function () {
opt.close && opt.close.call(this, here);
aConfig.close = $.noop;
api.close();
});
return false;
}
};
for (var i in opt) {
if (config[i] === undefined) config[i] = opt[i];
};
return artDialog(config);
};
在后台头部模板添加如下代码
<script>
//右下角提醒
setInterval("startRequest()",5000);
function startRequest() {
if(data){
//弹框加语音
art.dialog.notice({
title: '新订单提醒',
width: 220,// 必须指定一个像素宽度值或者百分比,否则浏览器窗口改变可能导致artDialog收缩
content: '<a href="index.php?m=zyshopc&c=zyshop&a=zyshop_orderss&pc_hash=<?php echo $_SESSION['pc_hash']?>">管理员!您好!有新订单需要您处理!请去订单管理处理!</a> <audio controls="controls" id="audio_player" style="display:none;"> <source src="<?php echo IMG_PATH?>11.mp3" > </audio><embed id="MPlayer_Alert" src="<?php echo IMG_PATH?>11.mp3" loop="false" width="0px" height="0px" /></embed>',
icon: 'face-sad',
time: 20, //持续10秒
close:function(){
//alert('提醒');
$.ajax({
url: "index.php?m=content&c=index&a=jiankong",
data: {
zipcode: data
},
success: function( result ) {
//$( "#weather-temp" ).html( "<strong>" + result + "</strong> degrees" );
}
});
//window.location.href="www.baidu.com";
}
});
}
});
}
</script>
其中index.php?m=content&c=index&a=jiankong
在images文件下加一个语音MP3文件
这个是用来实时访问数据库来获取是否有新数据写入数据库,这个我就不说了。以上几步就可以实现PC V9右下角弹窗提醒了!有问题请在下方留言!
控制器的写法:
大体思路是这样的:查询数据库没有更新过的订单,如果有这样的数据,那么返回‘id(1)’
注意:当上面的程序写完,记得要底层刷新浏览器,不然又缓存在,你可能看不见上面的效果