为什么我会收到此错误(TypeError: $h is undefined
)?
<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 :(得分: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"
});