2015-05-13 54 views
3

为什么我得到这个(TypeError: $h is undefined)错误?javascript变量是未定义的,它是。为什么?

<div style="clear: both;"> 
     <input type="button" value="test1" onclick="test1();" /> 
    </div> 
    <div id="box"></div> 
    <div id="debug"></div> 

     var $h; // also tried without "var" 
     $h = $("<div/>").css("position:absolute;top:100px;width:1px;height:1px;background:red;"); 
     function test1() { 
      var start = new Date().getTime(); 

      for (var i = 0; i < 10000; i++) { 
       $h.css("top", (i + 4)); 
       $h.appendTo("#box"); 
      } 
      var end = new Date().getTime(); 
      $("#debug").html(end - start); 
     } 
+0

哪里是'test1'调用.... –

回答

5

css函数调用一个字符串作为参数,返回有该名称的样式属性的值。

当然没有样式属性被命名为"position:absolute;top:100px;width:1px;height:1px;background:red;",这就是为什么它返回undefined

你可能想要的是

var $h = $("<div/>").css({ 
    position:"absolute", 
    top:"100px", 
    width:"1px", 
    height:"1px", 
    background:"red" 
}); 
+0

绝对正确的...愚蠢的错误由我:)谢谢 – yossi

相关问题