新手问题:o)
我试图用 jQuery Draggable 对象生成一条水平线,并获取 ul li 标签的“位置”偏移量。问题是设置所有对象从开始处的偏移量。
有人吗?
谢谢!
<script src="http://code.jquery.com/jquery-1.5.2rc1.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.11/jquery-ui.min.js"></script>
<br>
<div id="slider">
<ul id="objects">
<li position="300">
1
</li>
<li position="30">
2
</li>
<li position="100">
3
</li>
</ul>
</div>
<br>
<p>
Position:
<input type="text" id="val" style="border:0; color:#f6931f; font-weight:bold;" />
</p>
$(document).ready(function()
{
$("ul li").draggable
({
containment: "#slider",
axis: "x",
snap: false,
drag: function(event, ui)
{
$("#val").val(ui.position.left);
}
});
$("ul li").offset({left: $(this).attr('position')});
});
最佳答案
您必须使用“each”来设置位置。
$(document).ready(function()
{
$("ul li").draggable
({
containment: "#slider",
axis: "x",
snap: false,
drag: function(event, ui)
{
$("#val").val(ui.position.left);
}
});
$('ul li').each(function(index) {
$(this).offset({left: $(this).attr('position')});
});
});
关于jQuery 可拖动对象列表 - 设置从开始处的偏移量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10684819/