我有IE8 + jQuery.css('top')函数的问题。
1)我的DIV高度为100px,宽度为600px。我在第一个DIV中有另一个DIV,其中style =“top:50%”所以它应该放在top = 50px。
2)所有浏览器都正确显示。但是,稍后,我需要使用jQuery来找到元素的位置,这就是IE8的问题:
$('#txt')。css('top')给我的回报不是50px但是300px !!!!!这是不正确的。另外我注意到它总是返回父DIV的0.5 * WIDTH的值!!这让我发疯!怎么会这样?
这是代码示例:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>demo</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript">
function onLoadTest(){
alert("document.getElementById('txt').style.top="+document.getElementById('txt').style.top+"\n$(#txt).css('top')="+$('#txt').css('top'));
}
</script>
</head>
<body onload="onLoadTest()" style="padding: 0px; margin: 0px; width:100%; height:100%">
<div id="box" style="width:600px; height:100px; position:absolute; padding:0px; margin:0px; border: solid 1px">
<div id="txt" style="top:50%; position:relative; padding:0px; margin:0px;border: solid 1px">
im in the position top=50% (which is 50px), plz compare to alert box data
</div>
</div>
</body>
</html>