嘿家伙我有一个拖放功能,不完全工作。我想要做的就是能够将图片拖放到div中,并将该图片弹出到div中。我现在有一张2张图片的列表,所以我为每张图片回显以下功能。这两张图片都是可拖放的,但是第一张是唯一出现在div中的图片,无论哪张图片被拖入。我不确定是什么错误,因为jquery函数似乎对每张图片都是唯一的。如果任何人有任何建议,我将非常感激。jquery draggable/droppable issue
while ($row = mysql_fetch_assoc($query)) {
$image=htmlentities($row['image']); //image name
$uniqid=uniqid(); //unique id for jquery functions
$dirname = "usercontent/$user/images/$image";
echo "<img id=\"$uniqid\" src=\"$dirname\" width=\"75\" height=\"75\"/>";
echo "<script>
$(function() {
$(\"#$uniqid\").draggable({ scroll: true, scrollSensitivity: 10, scrollSpeed: 10, revert: true, helper: 'clone', cursorAt: { cursor: 'move', top: 27, left: 27 } });
$(\"#droppable2, #droppable-background , #droppable2-innerer\").droppable({
greedy: true,
activeClass: 'ui-state-hover',
hoverClass: 'ui-state-active',
drop: function(event, ui) {
$(this).addClass('ui-state-highlight').find('> p').html('Dropped!');
$('#droppable-background').css(\"background-image\",\"url($dirname)\");
}
});
});
</script>";
}
Fudgey,真的是一个伟大的提交,我真的很感激它。这真的帮助了我。我只有2个问题。 1.我想要做的是当照片被拖过盒子,它变成整个盒子的背景,当前在盒子里的照片(如果有的话)会回到起始位置,所以在你的例子中由于有两张照片,因此总会有一张照片放在盒子里,一张放在开始位置。 2.为什么使用像ui.draggable或ui.helper这样的变量?我知道他们代表什么,但他们是如何定义的,他们没有像我以前看到的那样宣布。再次感谢fudge – Scarface 2010-05-05 13:06:25
嗨疤面!我很高兴能够提供帮助。我也为你更新了我的答案:) – Mottie 2010-05-05 13:17:44
再次感谢fudgey,只有一个问题大声笑,我讨厌继续问,因为你一直这么大的帮助,但我真的没有其他人可以交谈。问题:是否可以为多个可丢弃div分别执行事件而不重复整个可丢弃函数多次?例如,如果将图片拖动到背景更改的一个div中,并且您拖动到其他背景更改中。 – Scarface 2010-05-05 14:44:23