jQuery EasyUI Перетаскивание -Создание школьного расписания
В этом руководстве будет показано, как использовать jQuery EasyUI для создания школьного расписания. Мы создадим две таблицы: слева отображаются школьные предметы, а справа — расписание. Вы можете перетаскивать школьные предметы и отпускать их в ячейки расписания. Школьный предмет — это элемент <div class="item">, а ячейка расписания — элемент <td class="drop">.
Отображение школьных предметов
<div class="left"> <table> <tr> <td><div class="item">English</div></td> </tr> <tr> <td><div class="item">Science</div></td> </tr> <!-- other subjects --> </table> </div>
Отображение расписания
<div class="right"> <table> <tr> <td class="blank"></td> <td class="title">Monday</td> <td class="title">Tuesday</td> <td class="title">Wednesday</td> <td class="title">Thursday</td> <td class="title">Friday</td> </tr> <tr> <td class="time">08:00</td> <td class="drop"></td> <td class="drop"></td> <td class="drop"></td> <td class="drop"></td> <td class="drop"></td> </tr> <!-- other cells --> </table> </div>
Перетащите школьные предметы слева
$('.left .item').draggable({
revert:true,
proxy:'clone'
});
Отпустите школьные предметы в ячейки расписания
$('.right td.drop').droppable({
onDragEnter:function(){
$(this).addClass('over');
},
onDragLeave:function(){
$(this).removeClass('over');
},
onDrop:function(e,source){
$(this).removeClass('over');
if ($(source).hasClass('assigned')){
$(this).append(source);
} else {
var c = $(source).clone().addClass('assigned');
$(this).empty().append(c);
c.draggable({
revert:true
});
}
}
});
Как видно из кода выше, когда пользователь перетаскивает учебный предмет слева и отпускает его в ячейку расписания, будет вызвана callback-функция onDrop. Мы клонируем исходный элемент, перетащенный слева, и добавляем его в ячейку расписания. При перетаскивании учебного предмета из одной ячейки расписания в другую он просто перемещается.
Скачать примеры jQuery EasyUI
jeasyui-dd-timetable.zip
Другие расширения