代码改变世界

jquery中使用offset()获得的div的left=0,top=0

2014-04-03 16:21  yangzaizai  阅读(1670)  评论(0编辑  收藏  举报

   写东西的时候要获取div的left和top,但怎么也取不到值都为0,但在chrome的console下是可以取到值的,

瞬间就纳闷了,于是乎就在网上找各种方法,大家一般的问题可能都是要获取的div被隐藏了,所以只要在用offset

之前让他show()或者display为block就解决问题了。

  

<html>
<head>
<title>test</title>
<meta charset="utf-8" >
<style>
#test{margin: 100px; height: 100px; width: 100px; background-color: red}
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(function(){
var $left=$("#test").show().offset().left
alert($left)
})
</script>
</head>
<body>
<div id="test" style="display:none">haha</div>
</body>
</html>

   ****而我的问题真奇妙,各种招都试了,就是取不到,最后该从后台传值了,如果有人遇到类似问题,欢迎探讨