我构建了拖放系统,但是当我尝试排序元素时,会出现错误。
Uncaught :无法在e.(匿名函数)处读取未定义的属性“top”。(匿名函数)._mouseDrag (jquery-ui.min.js:12:536)在e.(匿名函数).(匿名函数)._mouseDrag (jquery-ui.min.js:6:7983)在e.(匿名函数).(匿名函数)._mouseStart(jQuery-ui..js:12:191)在e.(匿名函数).(匿名函数).HTMLDocument.n._mouseCapture._mouseDistanceMet._mouseDelayMet._mouseMoveDelegate (jquery-ui.min.js:6:7983) e.(匿名函数).(匿名函数)._mouseMove (jquery-ui.min.js:6:15443) e.(匿名函数).(匿名函数)._mouseMove (jquery-ui.min.js:6:7983)在HTMLDocument.dispatch (jquery-2 )(jQuery-2.1.min.js:3:3179)
在我的html中,我得到了很多“块”div,都是空的。我的代码:
$('#elements_Button').on('click', function(){
var origin = 'sortable';
//var $iframe = $('#courseBuilder_PageFrame');
$('.card-element').draggable({
helper: function(e) {
return $('<div>').addClass('block').text($(e.target).text()));
},
containment:'body',
iframeFix: true,
connectToSortable:$('#courseBuilder_PageFrame').contents().find('.container').sortable({
iframeFix: true
}),
// revert: "invalid",
start: function () {
origin = 'draggable';
}
});
$('#courseBuilder_PageFrame').contents().find('.container').droppable({
iframeFix: true,
drop: function (event, ui) {
if (origin === 'draggable') {
ui.draggable.html(Course.getElementByName(ui.draggable.text()));
console.log(ui.draggable);
origin = 'sortable';
}
}
});
});Html:
<div class="row block card-content card-element ui-draggable ui-draggable-handle">
<span class="card-title activator grey-text text-darken-4">Header</span>
<div class="container ui-sortable ui-droppable">
<div class="row block card-content card-element ui-draggable ui-draggable-handle" style="display: block;">
<div class="col l12 m12 s12 header2">
<h1 class="4s-editable">C-40Ai Aircraft</h1>
</div>
</div>
....这里是jsfiddle http://jsfiddle.net/w9L3eorx/39/
我觉得我的jquery版本不合适..。
发布于 2018-02-06 10:00:07
解决方案是使用最新版本的jquery v1.12.1。
https://stackoverflow.com/questions/41978685
复制相似问题