Spin.js,追加div(具有绝对位置)并旋转它

时间:2014-09-04 12:18:50

标签: javascript

我正在使用Spin.js

我要做的是:将“div”(具有绝对位置)“附加”到另一个主div并激活其上的旋转。

Javascript代码

s+="<div style='position:relative;margin-top:"+obj.top+"px;margin-left:"+obj.left+"px;width:180px;height:70px;background-image:url(img.png);' oggetto='1' id='id1'>";
    s+="</div>";

$("#miodiv").append(s).spin();

附加的Html结果

<div style="position:absolute;margin-top:365px;margin-left:470px;width:180px;height:70px;background-image:url(img.png);" oggetto="1" id="id1"></div>

旋转是添加到div但不是在中心,而是在页面的中间。

我在SO(...)上看过这样的问题,这给了一个解决方案,将 position:relative 添加到div中,但我必须保持位置:绝对

另外,如果从谷歌Chrome控制台调用:

$("#id1").spin(); 

旋转成功添加到div的中心

更新

添加了JSFIDDLE,它以简化的方式表示我的情况

1 个答案:

答案 0 :(得分:1)

尝试给动态创建的div一个id(比如说spinContainer)并添加像这样的微调器:

var spinner = new Spinner().spin($("#spinContainer"));

您的代码也存在问题:

s+="<div style='position:relative;margin-top:"+obj.top+"px;margin-left:"+obj.left+"px;width:180px;height:70px;background-image:url(img.png);' oggetto='1' id='"+passid+"'>";
    s+="</div>";

$("#"+passid).append(s).spin();

在第一行中,您创建了一个id = passid

的div

并且$("#"+passid).append(s).spin()将此div附加到具有相同ID的其他元素...

编辑: 检查FIDDLE - 您应该将旋转添加到动态创建的div而不是父div。