/*
调用示例
1.要引用jquery包。
2.
function GetHtml() {
return "<div>" + Math.random()+"</div>";
}
$(document).ready(function () {
var lmyBoxPage = new PopBoxPage(GetHtml);
})
项目中用到的功能,之前由于朋友也需要类似的功能,代码给他后,不方便阅读和使用。
今天就又该了下,对Jquery不够熟悉,写的不伦不类的,但是还能用。
分享给大家,说不定能用的到。
*/
//初始化的对象
var PopBoxPage = function (GetHtml, options) {
var lmy_TopRemind = 0; //top坐标
var lmy_LeftRemind = 0; //left坐标
var lmy_Top; //屏幕高度
var lmy_Left; //屏幕宽度
var lmy_Setting = $.extend(
{
"400", height: "165",
border: "2px solid rgb(167, 205, 240)",
backgroundColor: "White", title: "待办事项",
refreshTime: 600000//刷新时间
}, options);
var settime = new Array();
lmy_Top = $("html").height(); //此处根据情况可修改
lmy_Left = $("html").width(); //此处根据情况可修改
//获取内容的函数
var Pop_GetHtml = function () {
var html = "";
html += "获取提醒内容的函数。";
return html;
};
if (GetHtml != undefined) {
Pop_GetHtml = GetHtml;
}
//绑定关闭事件
$("#d_Close").live("click", function () {
$("#myxxDIV").remove();
});
var Pop_Init = function () {
//弹出层中的html代码
var lmyHtml = Pop_GetHtml();
//弹出层的坐标
lmy_TopRemind = lmy_Top;
lmy_LeftRemind = lmy_Left - lmy_Setting.width - 20; //left坐标值
var html = "<div id="myxxDIV" style="z-index: 10000;position: absolute; display:none;">";
html += "<table style='100%;padding-left:5px; padding-right:5px; padding-top:5px;'><tr>";
html += "<td>" + lmy_Setting.title + "</td>";//标题
html += "<td><div id='d_Close' style='cursor:pointer; text-align:right;'>关闭</div></td>";//关闭按钮
html += "</tr></table>";
html += lmyHtml;
html += "</div>";
$("body").css("overflow", "hidden");
$("body").append(html);
$("#myxxDIV").css("width", lmy_Setting.width);
$("#myxxDIV").offset({ top: $("html").height(), left: lmy_LeftRemind });
$("#myxxDIV").css("height", lmy_Setting.height);
$("#myxxDIV").css("border", lmy_Setting.border);
$("#myxxDIV").css("backgroundColor", lmy_Setting.backgroundColor);
$("#myxxDIV").css("display", "block");
setTimeout(Pop_SetTop, 1);
}
//设置高度
var Pop_SetTop = function () {
var top1 = lmy_Top - lmy_Setting.height - 20;
$("#myxxDIV").offset({ top: lmy_TopRemind, left: lmy_LeftRemind });
if (lmy_TopRemind > top1) {
lmy_TopRemind = lmy_TopRemind - 1;
setTimeout(Pop_SetTop, 1);
} else {
Pop_SetDingTime(); //隔断时间扫描数据
}
}
//定时刷新内容
var Pop_SetDingTime = function () {
//停用所有定时器
for (var i = 0; i < settime.length; i++) {
clearTimeout(settime[i]);
}
settime.splice(0, settime.length); //清空数组
var time = setTimeout(Pop_LoadDataByTime, lmy_Setting.refreshTime); //10分钟600000
settime.push(time);
}
//重新加载内容
var Pop_LoadDataByTime = function () {
$("#myxxDIV").remove();
Pop_Init();
}
Pop_Init();
}