Untitled
By: a guest | Jul 20th, 2010 | Syntax:
JavaScript | Size: 2.19 KB | Hits: 238 | Expires: Never
/* 浮动层类- 2010-07-19 @author longxiao*/
var Popup=function(btn,target,close){
var self=this;
self.btn=btn;
self.target=target;
self.close=close;
self.status='none';
self.w=parseInt(D.getStyle(target,'width'))/2;
self.ffh=parseInt(D.getStyle(target,'height'))/2;
self.adjustPostion=function(){
self.h=D.getDocumentScrollTop()+D.getViewportHeight()/2-parseInt(D.getStyle(target,'height'))/2;
D.get(self.target).style.cssText='display:'+self.status+';position:absolute;z-index:99999;left:50%;margin-left:-'+self.w+'px;top:'+self.h+'px;';
};
return {
'int':function(){
this.Event(self.btn);
if(typeof self.close==='string'){
this.close(self.close);
}else{
for(var i=0;i<self.close.length;i++){
this.close(self.close[i]);
}
};
if (6 == YAHOO.env.ua.ie) {
E.onDOMReady(function(){
E.on(window, 'resize', self.adjustPostion);
E.on(window, 'scroll', self.adjustPostion);
});
}
},
'Event':function(btn){
var ele=D.get(btn);
E.addListener(ele,'click',function(){
if (6 == YAHOO.env.ua.ie) {
self.status='block';
self.h=D.getDocumentScrollTop()+D.getViewportHeight()/2-parseInt(D.getStyle(target,'height'))/2;
D.get(self.target).style.cssText='display:'+self.status+';position:absolute;z-index:99999;left:50%;margin-left:-'+self.w+'px;top:'+self.h+'px;';
}else{
D.get(self.target).style.cssText='display:block;position:fixed;left:50%;top:50%;margin-left:-'+self.w+'px;margin-top:-'+self.ffh+'px';
}
})
},
'close':function(btn){
var ele=D.get(btn);
E.addListener(ele,'click',function(){
D.get(self.target).style.display='none';
self.status='none';
});
}
}
};
/* 调用方法:
* 第一个参数是点击调出层的按钮ID;
* 第二个参数是目标弹出层【默认样式要设置display:none】;
* 第三个参数是关闭弹出层的按钮ID,多个用数组形式表达;
*/
var madoubox=new Popup("Popup","prompt-box-madou",['prompt-box-madou-close','prompt-box-madou-cel']);
madoubox['int']();