日期:2014-05-16  浏览次数:20372 次

为何显示一个绝对定位的Div,在ie中能达成,在FireFox中却总不好用??
一个Div,使用绝对定位方式,想在点击某个区域中显示出来,它的CSS是这样设置的:
#popupDiv{
display:none;
position:absolute;
z-index:3;
 
padding-top:0px;
padding-bottom:0px;
padding-left:0px;
padding-right:0px;
 
width:200px;
border:1px solid #000000;
background:#ffffff;
}

而点击后,让它出现的JS代码如下:
function showMembers(obj,tdId){
var x=0;
var y=0;

var browserName=navigator.appName; 
if (browserName=="Netscape") { 

x=300;//getElementPos(tdId).x+300;
y=300;//getElementPos(tdId).y-300;
} else if (browserName=="Microsoft Internet Explorer") { 
x=getElementPos(tdId).x+124;
y=getElementPos(tdId).y;


var popupDiv=$("popupDiv");

popupDiv.style.display= "block";
popupDiv.style.left = x;
popupDiv.style.top = y; 
}

以上代码在IE中没有问题,但关键是
x=300;//getElementPos(tdId).x+300;
y=300;//getElementPos(tdId).y-300;

这两句,即使是手工调整坐标,想定位的Div总还是在原来的地方,一点不动。

这个问题困扰我好几天,请问大家该怎么解决这个问题?

------解决方案--------------------
加上单位px试试。。