﻿function Layer()
{
var dialog="dialog",dialog_content="dialog_content",fullbg="fullbg";

 
this.frame=function( layerW,layerH,id,url)
{
  var txt="<div style=\"padding:2px;\"><iframe id=\"ff"+id+"\" src=\""+url+"\" frameborder=\"0\" width=\""+layerW+"\" height=\""+layerH+"\" scrolling=\"no\"></iframe><div>";
  this.show(layerW+10,layerH+10,txt);
  $("#ff"+id).attr("src",url);
}  
this.show=function(layerW,layerH,html){ 

$("#"+dialog).css({width:layerW,height:layerH,opacity:0.9}); 
$("#"+dialog_content).css({width:layerW-6,height:layerH-6}); 
$("#"+fullbg).css({opacity:0.5});
 $("#"+dialog_content).html(html); 
var pageSize=this.getPageSize();
var bH=pageSize[0];//$("body").height(); 
var bW=$("body").width()+0; 
var objWH=this.getObjWh(dialog); 
$("#"+fullbg).css({width:bW,height:bH,display:"block"}); 
var tbT=objWH.split("|")[0]+"px"; 
var tbL=objWH.split("|")[1]+"px"; 
$("#"+dialog).css({top:tbT,left:tbL,display:"block"}); 

$(window).scroll(function(){layer.resetBg()}); 
$(window).resize(function(){layer.resetBg()}); 
  
} 
this.showWH=function(layerW,layerH,html,objW,objH){ 

$("#"+dialog).css({width:layerW,height:layerH,opacity:0.9}); 
$("#"+dialog_content).css({width:layerW-6,height:layerH-6}); 
$("#"+fullbg).css({opacity:0.5});
 $("#"+dialog_content).html(html); 
var pageSize=this.getPageSize();
var bH=pageSize[0];//$("body").height(); 
var bW=$("body").width()+0; 
var objWH=this.getObjWh(dialog); 
$("#"+fullbg).css({width:bW,height:bH,display:"block"}); 
var tbT=objH>-1?objH+"px":objWH.split("|")[0]+"px"; 
var tbL=objW>-1?objW+"px":objWH.split("|")[1]+"px"; 

$("#"+dialog).css({top:tbT,left:tbL,display:"block"}); 

$(window).scroll(function(){layer.resetBg()}); 
$(window).resize(function(){layer.resetBg()}); 
  
}
this.getObjWh=function(obj){ 
var st=document.documentElement.scrollTop;//滚动条距顶部的距离 
var sl=document.documentElement.scrollLeft;//滚动条距左边的距离 
var ch=document.documentElement.clientHeight;//屏幕的高度 
var cw=document.documentElement.clientWidth;//屏幕的宽度 
var objH=$("#"+obj).height();//浮动对象的高度 
var objW=$("#"+obj).width();//浮动对象的宽度 
var objT=Number(st)+(Number(ch)-Number(objH))/2; 
var objL=Number(sl)+(Number(cw)-Number(objW))/2; 
return objT+"|"+objL; 
} 
this.resetBg=function(){ 
var pageSize=this.getPageSize(); 
var fullbg=$("#fullbg").css("display"); 
if(fullbg=="block"){ 
var bH2=pageSize[0];//$("body").height(); 
var bW2=$("body").width()+16; 
$("#fullbg").css({width:bW2,height:bH2}); 
var objV=getObjWh("dialog"); 
var tbT=objV.split("|")[0]+"px"; 
var tbL=objV.split("|")[1]+"px"; 
$("#dialog").css({top:tbT,left:tbL}); 
} 
}

this.pageHeight=function(){ 
if($.browser.msie){ 
return document.compatMode == "CSS1Compat"? document.documentElement.clientHeight : 
document.body.clientHeight; 
}else{ 
return self.innerHeight; 
} 
} 
this.close=function(spanTime){ 
setTimeout(function(){$("#"+fullbg).css("display","none"); $("#"+dialog).css("display","none"); },spanTime);
} 
this.go=function(spanTime,url){ 
setTimeout(function(){$("#"+fullbg).css("display","none"); $("#"+dialog).css("display","none");window.location=url },spanTime);
} 

this.getPageSize=function() 
{ 
var body = document.documentElement; 
var bodyOffsetWidth = 0; 
var bodyOffsetHeight = 0; 
var bodyScrollWidth = 0; 
var bodyScrollHeight = 0; 
var pageDimensions = [0,0]; 
pageDimensions[0]=body.clientHeight; 
pageDimensions[1]=body.clientWidth; 
bodyOffsetWidth=body.offsetWidth; 
bodyOffsetHeight=body.offsetHeight; 
bodyScrollWidth=body.scrollWidth; 
bodyScrollHeight=body.scrollHeight; 
if(bodyOffsetHeight > pageDimensions[0]) 
{ 
pageDimensions[0]=bodyOffsetHeight; 
} 
if(bodyOffsetWidth > pageDimensions[1]) 
{ 
pageDimensions[1]=bodyOffsetWidth; 
} 
if(bodyScrollHeight > pageDimensions[0]) 
{ 
pageDimensions[0]=bodyScrollHeight; 
} 
if(bodyScrollWidth > pageDimensions[1]) 
{ 
pageDimensions[1]=bodyScrollWidth; 
} 
return pageDimensions; 
}

}

$(document).ready(function()
{
 $("body").append($("<div id=\"fullbg\"></div> <div id=\"dialog\"> <div id=\"dialog_content\"></div> </div>"))
});


 
var layer=new  Layer();
