Поднять событие создания jquery draggable - PullRequest
2 голосов
/ 30 мая 2011

Я пытался выяснить, как использовать событие 'create' перетаскиваемого элемента управления jquery.ui.И такой простой пример, как выдача оповещения, не работает:

<!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 , элемент управления действительно имеет метод "create", который можно вызывать, связывая его во время инициализации и связывая его позже.Я пробовал оба метода безуспешно.

Я использую jquery v1.4.2 и UI v1.8.1.

Любая помощь приветствуется.

Ответы [ 3 ]

2 голосов
/ 30 мая 2011

На мой взгляд, это должно быть:

$(document).ready(function(){                              

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

Событие связывания Firt, затем создайте перетаскиваемый.

Обновление версии JQuery UI

Это не будет работать с версией JQueryUI ниже 1.8.7. Поэтому вам также необходимо обновить версию JQueryUI до более новой. Как отметил Фредерик Хамиди в ответе на комментарии.

0 голосов
/ 22 января 2015

Мне кажется, что единственные вещи, которые отсутствуют, - это правильные ссылки на требуемый JS.=)

Добавить:

<script src="http://code.jquery.com/jquery-1.10.2.js"></script>

<script src="http://code.jquery.com/ui/1.11.2/jquery-ui.js"></script>

Вместо:

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

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

Я взял ваш код и переключил ссылки JS.Это сработало!

Надеюсь, оно вам поможет.

0 голосов
/ 30 мая 2011

Почему бы просто не добавить свою функцию в перетаскиваемый инициализатор:

<script type="text/javascript">

$(document).ready(function(){                           

    $("#filho").draggable({
create: onCreate
});

function onCreate(event, ui){
alert("VAAAAAAAAAAAI!");
}


});
</script>

Это должно дать тот же результат, что вам требуется

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...