Jac*_*ton 4 javascript jquery jquery-ui
Draggable可以在这里工作,但是当我将DIV拖到可放置区域时,警报功能不会被触发.我确定这是愚蠢的事,但也许有人可以阻止我把我的头撞到墙上,我做得对不对?
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js" type="text/javascript"></script>
<title></title>
</head>
<body>
<script>
$(function() {
$( ".draggable" ).draggable();
$( ".droppable" ).droppable({
drop: function(event, ui) {
alert('dropped');
}
});
});
</script>
<div id=10 class="draggable">one</div>
<div id="trash" class="droppable"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
问题在于,默认情况下,元素的中心用于确定元素的放置位置.您div没有定义的大小,因此它是屏幕的宽度.如果您设法删除它以使该元素的中心位于droppable中,您将看到警报.
这种背景颜色的小提琴说明了这个问题.
使用定义的宽度,您将看到您可能正在寻找的功能:
注意:我已经假设你已经遗漏了你的css并且#trashdiv有一些大小,所以它可以被丢弃.
詹姆斯·蒙塔涅的回答是正确的。特别是它不起作用的原因(谢谢!)。
然而,我认为更好的解决方案是通过将tolerancedroppable设置为 来提高放置精度pointer。
http://jsfiddle.net/org1b75t/2/
| 归档时间: |
|
| 查看次数: |
5936 次 |
| 最近记录: |