<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
function drag(obj)
{
this.obj=$("#"+obj);
alert($("#dd").css("height"));//为什么这段会无效 弹出的是undefined
}
</script>
<div id="dd" style=" width:100px; height:100px; border:#FF0000 solid 1px; position:absolute; left:0px; top:0px;"></div>
<script type="text/javascript">
var a=new drag("dd");
</script>先谢过了

解决方案 »

  1.   

    当然会无效了,this.obj=$("#"+obj); //这是获得一个对像
    $("#dd").css("height")这是把IDdd高输出,你有id为dd的对象吗
      

  2.   

    var a=new drag("dd"); 而你的function drag(obj)  这样楼主把dd当做对象了~
    try  
    var a=new drag(document.getElemengtById("dd")); or
    var a=new drag(${"#dd"}); 
      

  3.   

    是因为你输出的时候必没有等到页面完全加载,还没有那个对象。
    有三种改正方式
    1,写在页面的最下面。
    2,写在window.onload=function(){}中,
    3,$(document).ready(写在这里面)
      

  4.   


    <script type="text/javascript">
    $(document).ready(function() {
    var a=new drag("dd");
    });function drag(obj){
    //this.obj=$("#"+obj);
    alert($("#dd").css("height"));
    }
    </script>
      

  5.   

    <html> <head> 
    <script type="text/javascript" charset="gb2312" src='jquery-1.3.1.min.js'> </script> 
    <script type="text/javascript"> 
    function drag(obj) 

    this.obj=$("#"+obj); 
    alert($("#dd").css("height"));//为什么这段会无效 弹出的是undefined 

    </script> 
    </head> <body> 
    <div id="dd" style=" width:100px; height:100px; border:#FF0000 solid 1px; position:absolute; left:0px; top:0px;"> </div> 
    <script type="text/javascript"> 
    var a=new drag("dd"); 
    </script> 
    </body> </html>
    测过了.完全没问题的弹出100px.用的是IE8和FF3.0.6
    1楼2楼大概都没看到你的DIV的ID就是DD