这是我的代码:
var lef=$(this).css("left"); var top=$(this).css("top"); alert(lef); $(this).after("<div class='edit cancel' style='position:absolute;top:"+top+";left:"+lef+"'>Cancel</div>");
现在语句var lef = $(this).css(“left”)150,似乎不工作。我想获得左边的属性,并添加150像素
我怎么能这样做?
谢谢。
解决方法
Now the statement var
lef=$(this).css(“left”) + 150,
doesn’t seem to work
不起作用的原因是因为您必须在.after()中的顶部和左侧属性的末尾添加px。
你还需要使用parseInt,因为.css(‘left’)将返回“?? px”。
var lef = parseInt($(this).css("left")) + 150; // add 150 var top = parseInt($(this).css("top")); //also parseInt top for consistency alert(lef); $(this).after("<div class='edit cancel' style='position:absolute;top:"+top+"px;left:"+lef+"px'>Cancel</div>"); // ^^px ^^px