
//****************************
//
//  TT版弹出层
//  20090603　更新
//
//****************************

var PopLayer = function() {
    var bgOpacity = 0; //弹出层的透明度
    var bgBackground = "#888888"; //弹出层的背景颜色
    return {
        OpenLayer: function(conId, toUrl, Title, cWidth, cHeight) {
            var arrayPageSize = this.getPageSize(); //调用getPageSize()函数
            var arrayPageScroll = this.getPageScroll(); //调用getPageScroll()函数
            if (!window.document.getElementById("popupAddr")) {
                //创建弹出内容层window.top.
                var popupDiv = window.document.createElement("div");
                popupDiv.setAttribute("id", "popupAddr");
                popupDiv.style.position = "absolute";
                //popupDiv.style.border = "1px solid #88a9cc";
                popupDiv.style.background = "#fff";
                popupDiv.style.zIndex = 99;
                //创建弹出背景层
                var bodyBack = window.document.createElement("div");
                bodyBack.setAttribute("id", "bodybg");
                bodyBack.style.position = "absolute";
                bodyBack.style.width = (arrayPageSize[0] + 'px');
                bodyBack.style.height = (arrayPageSize[1] + 'px');
                bodyBack.style.zIndex = 98;
                bodyBack.style.top = 0;
                bodyBack.style.left = 0;
                bodyBack.style.filter = "alpha(opacity=" + bgOpacity + ")";
                bodyBack.style.opacity = bgOpacity / 100;
                bodyBack.style.background = bgBackground;
                //实现弹出(插入到目标元素之后)
                var mybody = document.getElementById(conId);
                this.insertAfter(popupDiv, mybody); //执行函数insertAfter()
                this.insertAfter(bodyBack, mybody); //执行函数insertAfter()
            }
            //内容层中的内容
            document.getElementById("ttWinBody").innerHTML = '<iframe frameBorder="0" src="' + toUrl + '" width="' + cWidth + '" height="' + cHeight + '" style="z-index:5"></iframe>';
            document.getElementById("ttWinTitle").innerHTML = Title;
            document.getElementById("ttMain").style.width = cWidth;
            //显示背景层
            document.getElementById("bodybg").style.display = "block";
            //显示内容层
            var popObj = document.getElementById("popupAddr");
            popObj.innerHTML = document.getElementById(conId).innerHTML;
            popObj.style.display = "block";
            //让弹出层在页面中垂直左右居中(统一)
            //popObj.style.width = "600px";
            //popObj.style.height = "400px";
            //popObj.style.top = arrayPageScroll[1] + (arrayPageSize[3] - 35 - 400) / 2 + 'px';
            //popObj.style.left = (arrayPageSize[0] - 20 - 600) / 2 + 'px';
            //让弹出层在页面中垂直左右居中(个性)
            var arrayConSize = this.getConSize(conId)
            popObj.style.top = arrayPageScroll[1] + (arrayPageSize[3] - arrayConSize[1]) / 2 + 'px';
            popObj.style.left = (arrayPageSize[0] - arrayConSize[0]) / 2 + 'px';
        },
        getConSize: function(conId) {//获取内容层内容原始尺寸
            var conObj = document.getElementById(conId)
            conObj.style.position = "absolute";
            conObj.style.left = -1000 + "px";
            conObj.style.display = "block";
            var arrayConSize = [conObj.offsetWidth, conObj.offsetHeight]
            conObj.style.display = "none";
            return arrayConSize;
        },
        insertAfter: function(newElement, targetElement) {//插入
            var parent = targetElement.parentNode;
            if (parent.lastChild == targetElement) {
                parent.appendChild(newElement);
            }
            else {
                parent.insertBefore(newElement, targetElement.nextSibling);
            }
        },
        getPageScroll: function() {//获取滚动条的高度
            var yScroll;
            if (self.pageYOffset) {
                yScroll = self.pageYOffset;
            } else if (document.documentElement && document.documentElement.scrollTop) {
                yScroll = document.documentElement.scrollTop;
            } else if (document.body) {
                yScroll = document.body.scrollTop;
            }
            arrayPageScroll = new Array('', yScroll)
            return arrayPageScroll;
        },
        getPageSize: function() {//获取页面实际大小
            var xScroll, yScroll;
            if (window.innerHeight && window.scrollMaxY) {
                xScroll = document.body.scrollWidth;
                yScroll = window.innerHeight + window.scrollMaxY;
            } else if (document.body.scrollHeight > document.body.offsetHeight) {
                xScroll = document.body.scrollWidth;
                yScroll = document.body.scrollHeight;
            } else {
                xScroll = document.body.offsetWidth;
                yScroll = document.body.offsetHeight;
            }
            var windowWidth, windowHeight;
            if (self.innerHeight) {
                windowWidth = self.innerWidth;
                windowHeight = self.innerHeight;
            } else if (document.documentElement && document.documentElement.clientHeight) {
                windowWidth = document.documentElement.clientWidth;
                windowHeight = document.documentElement.clientHeight;
            } else if (document.body) {
                windowWidth = document.body.clientWidth;
                windowHeight = document.body.clientHeight;
            }
            var pageWidth, pageHeight
            if (yScroll < windowHeight) {
                pageHeight = windowHeight;
            } else {
                pageHeight = yScroll;
            }
            if (xScroll < windowWidth) {
                pageWidth = windowWidth;
            } else {
                pageWidth = xScroll;
            }
            arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight)
            return arrayPageSize;
        },
        closeLayer: function() {//关闭弹出层
            document.getElementById("popupAddr").style.display = 'none';
            document.getElementById("bodybg").style.display = "none";
            var mFlash = document.frames[1].document.getElementById('Object1');
            if (mFlash == null) {
                mFlash = document.frames[1].document.getElementById('OBJECT1');
            }
            if (mFlash != null) {
                var obj = mFlash.BaseHref.substring(mFlash.BaseHref.lastIndexOf("."));
                if (obj == ".swf") {
                    mFlash.StopPlay();
                }
                else {
                    mFlash.DoStop();
                }
            }
            return false;
        }
    };
} ();

