265 lines
7.8 KiB
JavaScript
265 lines
7.8 KiB
JavaScript
/*!
|
||
* 主 题:《管理界面的控制中心》
|
||
* 说 明:管理界面console.aspx的控制,包括布局,功能设定等;
|
||
* 功能描述:
|
||
* 1、控制管理界面的布局,自动计算宽高,使其满屏;
|
||
*
|
||
* 作 者:宋雷鸣
|
||
* 开发时间: 2014年3月12日
|
||
*/
|
||
|
||
//一些页面级参数
|
||
//浏览器窗体初始宽高
|
||
//window.OldWindowWidth=$(window).width();
|
||
//window.OldWindowHeight=$(window).height();
|
||
// 管理控制台的布局操作
|
||
$(function(){
|
||
//初始化界面
|
||
loyoutInit();
|
||
//showFullMask();
|
||
//页面右上方,生成系统菜单
|
||
var drop=new DropMenu("#consDropMenu");
|
||
drop.load();
|
||
//页面左侧操作,生成功能菜单
|
||
var tree=new TreePanel();
|
||
tree.load();
|
||
//页面右侧操作 内容区的td
|
||
var context=$("#consContextPanel");
|
||
var h=document.documentElement.clientHeight;
|
||
var offset = $("#consBody").offset();
|
||
var height=h-offset.top;
|
||
context.height(height);
|
||
//打开起始页
|
||
new PagePanel().DefOpen();
|
||
//页面主要按钮的事件
|
||
btnEvent();
|
||
//时实保持登录状态
|
||
//Keeper();
|
||
//setInterval("Keeper()",6000);
|
||
//判断链接
|
||
//setInterval("checkConniction()",5000);
|
||
//隐藏遮罩层
|
||
HideFullMask();
|
||
//var p=new PageBox("说明","Explain.htm",80,80,"Explain");
|
||
//p.Open();
|
||
});
|
||
//当窗口大变化时
|
||
$(window).resize(function(){
|
||
window.windowResizeTemp=window.windowResizeTemp==null ? 0 : window.windowResizeTemp++;
|
||
if(window.windowResizeTemp%2==0)reLoyout();
|
||
});
|
||
//初始化布局
|
||
function loyoutInit(){
|
||
//窗体的内容宽高
|
||
var winHeight=document.documentElement.clientHeight;
|
||
var winWidth =document.documentElement.clientWidth;
|
||
//主要对象
|
||
var top=$("#consPageTop");//页面顶部
|
||
var bar=$("#consBoxTitleBar");//选项卡区域
|
||
var cbody=$("#consBody");//内容区域
|
||
var left=$("#consTreePanel");//内容区域的左侧
|
||
var right=$("#consContextPanel");//内容区域的右侧
|
||
//设置选项卡
|
||
bar.width(winWidth-left.width());
|
||
bar.css({left:left.width(),top:25});
|
||
//主内容区高度
|
||
cbody.height(winHeight-top.outerHeight()-Number(top.css("margin-bottom").replace("px","")));
|
||
//右则内容宽度,去除边距
|
||
right.width(winWidth-left.width()-Number(right.css("margin-left").replace("px","")));
|
||
}
|
||
//当窗体变动时,重新布局
|
||
function reLoyout(){
|
||
//窗体的内容宽高
|
||
var winHeight=document.documentElement.clientHeight;
|
||
var winWidth =document.documentElement.clientWidth;
|
||
//主要对象
|
||
var top=$("#consPageTop");//页面顶部
|
||
var bar=$("#consBoxTitleBar");//选项卡区域
|
||
var cbody=$("#consBody");//内容区域
|
||
var left=$("#consTreePanel");//内容区域的左侧
|
||
var right=$("#consContextPanel");//内容区域的右侧
|
||
//设置选项卡
|
||
bar.width(winWidth-left.width());
|
||
bar.css({left:left.width(),top:25});
|
||
//主内容区高度
|
||
cbody.height(winHeight-top.outerHeight()-Number(top.css("margin-bottom").replace("px","")));
|
||
//右则内容宽度,去除边距
|
||
right.width(winWidth-left.width()-Number(right.css("margin-left").replace("px","")));
|
||
right.height(cbody.height());
|
||
////左侧树形菜单的面板高度设置
|
||
left.height(cbody.height());
|
||
$(".treepanel").height(cbody.height());
|
||
//管理内容页区的高度设置
|
||
$(".consFramePanel").each(function(){
|
||
var iframe=$(this).find("iframe");
|
||
var topbar=$(this).find(".topBar");
|
||
var state=$(this).attr("state");
|
||
//如果不是全屏显示的,仅作为面板显示时
|
||
if(state=="panel")
|
||
{
|
||
$(this).height(right.height());
|
||
$(this).width(right.width());
|
||
var h=right.height()-topbar.height();
|
||
iframe.height(h);
|
||
iframe.width(right.width());
|
||
}
|
||
//当全屏显示时
|
||
if(state=="fullscreen")
|
||
{
|
||
$(this).height(winHeight);
|
||
$(this).width(winWidth);
|
||
var h=winHeight-topbar.height();
|
||
iframe.height(h);
|
||
iframe.width(winWidth);
|
||
//iframe.width(winWidth);
|
||
var span=$(this).find(".topBar .pagePanelMaxHand");
|
||
span.attr("w",right.width());
|
||
span.attr("h",right.height());
|
||
}
|
||
});
|
||
}
|
||
//按钮事件
|
||
function btnEvent(){
|
||
//当前登录员工的名称,用于打开个人信息查看
|
||
$("#lbName").click(function(){
|
||
var name=$(this).text();
|
||
var link=$(this).attr("href");
|
||
new PageBox("尊敬的 "+name +" 您的个人信息",link,400,300).Open();
|
||
return false;
|
||
});
|
||
//短消息的按钮
|
||
$("#messageMarker").click(function(){
|
||
var menu=$("#consTreePanel");
|
||
var node=menu.find("div[title='短消息']:first");
|
||
var link=node.attr("href");
|
||
var id=node.attr("nodeId");
|
||
var name=node.text();
|
||
var path=node.attr("path");
|
||
var p=new PagePanel();
|
||
p.add(name,path,link,id);
|
||
return false;
|
||
});
|
||
}
|
||
//保持登录状态,时实向服务器提交当前用户的在线时间
|
||
function Keeper(){
|
||
var urlPath="/manage/Panel/Keeper.aspx?id="+emplyeeId+"×tamp=" + new Date().getTime();
|
||
$.ajax({
|
||
type: "Get",
|
||
url: urlPath,
|
||
dataType: "text",
|
||
data:{},
|
||
//开始,进行预载
|
||
beforeSend: function(XMLHttpRequest, textStatus){
|
||
|
||
},
|
||
//加载出错
|
||
error: function(XMLHttpRequest, textStatus, errorThrown){
|
||
},
|
||
//加载成功!
|
||
success: function(data) {
|
||
//不等于0,表示登录失效
|
||
if(data!="0")
|
||
{
|
||
var p=new PageBox("重新登录","reLogin.aspx",300,225,"reLogin");
|
||
p.Open();
|
||
p.HideClose();
|
||
}
|
||
}
|
||
});
|
||
}
|
||
//隐藏遮罩层
|
||
function HideFullMask(){
|
||
var mask=$("#consFullMask");
|
||
mask.fadeOut(3000);
|
||
}
|
||
//打开一个pagepanel窗口
|
||
//通过menuid检索左侧树形菜单,找到并打开
|
||
//menuName:菜单项名称
|
||
//menuId:菜单项id
|
||
function OpenPagePanel(menuName,menuId){
|
||
var menu=$("#consTreePanel");
|
||
menuName=$.trim(menuName);
|
||
var node=menu.find("div[name='"+menuName+"'][nodeid='"+menuId+"'][nodetype='item']:first");
|
||
if(node.size()<1)
|
||
{
|
||
node=menu.find("div[name='"+menuName+"']:first");
|
||
if(node.size()<1)
|
||
{
|
||
alert("当前工作项:"+menuName+" 不存在。");
|
||
return;
|
||
}
|
||
}
|
||
var link=node.attr("href");
|
||
var id=node.attr("nodeId");
|
||
var name=node.text();
|
||
var path=node.attr("path");
|
||
var p=new PagePanel();
|
||
p.add(name,path,link,id);
|
||
}
|
||
|
||
|
||
//保持登录状态,时实向服务器提交当前用户的在线时间
|
||
function checkConniction(){
|
||
var urlPath="/manage/Panel/1.htm"+"?timestamp=" + new Date().getTime();
|
||
$.ajax({
|
||
type: "Get",
|
||
url: urlPath,
|
||
dataType: "text",
|
||
data:{},
|
||
//开始,进行预载
|
||
beforeSend: function(XMLHttpRequest, textStatus){
|
||
|
||
},
|
||
//加载出错
|
||
error: function(XMLHttpRequest, textStatus, errorThrown){
|
||
connMask();
|
||
},
|
||
//加载成功!
|
||
success: function(data) {
|
||
removeConnMask();
|
||
}
|
||
});
|
||
}
|
||
//去除遮罩
|
||
function removeConnMask(){
|
||
var mask=$("#ConnictionscreenMask");
|
||
mask.remove();
|
||
$("#showConnictionscreenBreek").remove();
|
||
}
|
||
//生成遮罩层
|
||
function connMask(){
|
||
var mask=$("#ConnictionscreenMask");
|
||
if(mask.size()>0)return;
|
||
var html="<div id=\"ConnictionscreenMask\"/>";
|
||
$("body").append(html);
|
||
mask=$("#ConnictionscreenMask");
|
||
mask.css("position","absolute");
|
||
mask.css("z-index","200000");
|
||
mask.css("width",$("body").width());
|
||
mask.css("height",$("body").height());
|
||
mask.css("top",0);
|
||
mask.css("left",0);
|
||
mask.css("background-color","#ffffff");
|
||
mask.css("filter","Alpha(Opacity=60)");
|
||
mask.css("display","block");
|
||
mask.css("-moz-opacity",0.6);
|
||
mask.css("opacity",0.6);
|
||
mask.fadeIn("slow");
|
||
showBreek();
|
||
}
|
||
//显示网络中断
|
||
function showBreek(){
|
||
var mask=$("#ConnictionscreenMask");
|
||
var html="<div id=\"showConnictionscreenBreek\"/>";
|
||
$("body").append(html);
|
||
var show=$("#showConnictionscreenBreek");
|
||
show.hide();
|
||
var str="连接中断<br/><br/>";
|
||
str+="连通后将自动取消锁定……";
|
||
show.html(str);
|
||
mask.css("filter","Alpha(Opacity=60)");
|
||
mask.css("display","block");
|
||
mask.css("-moz-opacity",0.6);
|
||
mask.css("opacity",0.6);
|
||
show.fadeIn("slow");
|
||
} |