这个是prototype的代码
this.middle = function(_sId) {
 $(_sId)['style']['display'] = '';
 $(_sId)['style']['position'] = "absolute";
 var sClientWidth = parent.document.body.clientWidth;
 var sClientHeight = parent.document.body.clientHeight;
 var sScrollTop = parent.document.body.scrollTop + parent.document.documentElement.scrollTop;
 var sleft = (sClientWidth - $(_sId).offsetWidth) / 2;
 var iTop = (g_dialog_height < 500) ? sScrollTop + 80 : sScrollTop;
 var sTop = iTop > 0 ? iTop : 0;
 $(_sId)['style']['left'] = sleft + "px";
 $(_sId)['style']['top'] = sTop + "px";
 }
这个是按照jquery的写法改的,但有问题,就是offsetWidth这里怎么处理,还有其它地方是否正确。
this.middle = function(_sId) {
 $("#" + _sId).show();
 $("#" + _sId).css("position", "absolute");
 var offset = $("#" + _sId).offset();
 var sClientWidth = parent.document.body.clientWidth;
 var sClientHeight = parent.document.body.clientHeight;
 var sScrollTop = parent.document.body.scrollTop + parent.document.documentElement.scrollTop;
 
var sleft = (sClientWidth - $("#" + _sId).offsetWidth) / 2;
 var iTop = (g_dialog_height < 500) ? sScrollTop + 80 : sScrollTop;
 var sTop = iTop > 0 ? iTop : 0;
 offset.left = sleft + "px"; 
offset.top = sTop + "px";
 }

解决方案 »

  1.   

    自己已经把问题解决,关贴。
      

  2.   

    接分。
    捎带说下,没有回复的帖子可以直接删除,点击左上角管理菜单
    当然,我回复了。。你就。。
      

  3.   

    呵呵,这么不厚道的行为,原罪啊,我替你分担一下.楼主可能是知道而故意散分的,自己解决也是高兴事。
      

  4.   

    楼主做人要厚道啊。见着有分,我都来了。多少给一点哦。呵呵,我脸皮厚!