jquery - 引发 jquery Draggable 的 "create"事件

标签 jquery events jquery-ui

我一直在试图弄清楚如何使用 jquery.ui 可拖动控件的“create”事件。像发出警报这样简单的示例不起作用:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Drag "create event" test</title>

<script src="js/jquery.js"></script>
<script src="js/jquery-ui.js"></script>

<style type="text/css" media="all">
#pai { width:1000px; border:1px solid #ccc; position:relative; }
#filho { width:100px; border:1px solid #c00; position:relative; top:0; left:0; }
</style>

<script type="text/javascript">

$(document).ready(function(){                           

    $("#filho").draggable();

    $("#filho").bind("dragcreate", function(event, ui) {
        alert("VAAAAAAAAAAAI!");
    });
});
</script>

</head>

<body>
<div id="pai">
    <div id="filho">
        teste de drag
    </div>      
</div>
</body>
</html>

我已经搜索和测试过,但我似乎无法让这个简单的例子工作。如jquery draggable's web page所述,该控件确实有一个“创建”方法,可以通过在初始化期间关联它或稍后绑定(bind)它来调用它。我已经尝试了两种方法均未成功。

我正在使用 jquery v1.4.2 和 UI v1.8.1。

感谢任何帮助。

最佳答案

我认为应该是:

$(document).ready(function(){                              

    $("#filho").bind("dragcreate", function(event, ui) {
        alert("VAAAAAAAAAAAI!");
    });
    $("#filho").draggable();
});

首先绑定(bind)事件,然后创建可拖动。

JQuery UI 版本更新

不适用于低于 1.8.7 的 JQueryUI 版本。因此,您还需要将 JQueryUI 版本升级到较新的版本。正如 Frédéric Hamidi 所指出的在答案评论中。

关于jquery - 引发 jquery Draggable 的 "create"事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6179720/

相关文章:

jquery-ui - jquery ui 可拖动元素出现在其他元素后面?

jquery 复选框启用/禁用单选按钮列表

JavaFx 事件参数类型不匹配

java - 如果子级未使用事件,则允许父级处理鼠标事件

database - 为事件流设计简单的数据库

javascript - 结合 $(this) 和 $ ("li:eq(ui.item.index())")

jquery - 在 IE7 中隐藏 <TR>,jQuery UI 按钮仍然可见

javascript - jquery click事件在setinterval函数内执行多次

javascript - Shadowbox 和 jQuery 在照片库方面的冲突

javascript - 如何从选项 select - json 对象中获取特定值