【发布时间】:2014-08-28 14:18:22
【问题描述】:
我希望能够将页面上的元素拖到加载 ajax 的 div 内的可放置元素中。当我将可放置元素放在常规页面中时,我可以让代码工作,但当我在 ajax 加载的 div 上有相同的元素时,我就不行了。我很确定这是因为我调用脚本的方式以及它们在 dom 上的加载方式,但我找不到解决方案。注意:我尝试在调用 jquery ui 之前调用加载 ajax 内容的代码,但这也不起作用。 这是我如何调用所有内容的方式,为简洁起见,我删除了无关代码。
主页
<head>
<scripts -- jquery, jquery ui>
<script>
$(document).ready(function(){
$( "#site-preview" ).load( "/site/preview" );
});
</script>
</head>
<body>
<div class="draggable><img src=//etc/> </div>
//if I put this div here, I can drop to it, so i know the drop code works.
// <div class="droppable col-md-2" style="height:100px;border:1px solid gray"><p> </p></div>
<div id="site-preview"></div>
<script>
$(function() {
$( ".draggable" ).draggable({
helper:'clone',
appendTo: 'body',
scroll: false
});
$( ".droppable" ).droppable({
drop: function( event, ui ) {
$( this ).addClass( "ui-state-highlight" ).find( "p" ).html( "Dropped!" );
}
});
});
</script>
</body>
ajax 加载代码
<div class="droppable col-md-2" style="height:100px;border:1px solid gray">
<p> </p>
</div>
【问题讨论】:
标签: javascript jquery ajax jquery-ui drag-and-drop