1
拖放在其他浏览器工作正常,只是有问题的Firefox。fullcalendar事件拖放不工作在Firefox中
我已经阅读不够了解,Firefox有不同的机制进行拖放,但没有我发现已经帮助 试图实现jsEvent.preventDefault();
的评注建议here 但是这并没有改变行为和林不知道如何实现该标记为答案部分,其确实event.originalEvent.dataTransfer.setData('text/plain', 'anything');
这是我的拖放代码:
设置可拖动TR
$('#workOrdersTable tbody tr').each(function() {
var tds = $(this).children('td');
if (tds.length > 0) {
var workOrder = $.grep(workOrders, function(e) {
return e.woNumber == tds[0].innerText;
})[0];
if (typeof workOrder !== "undefined" || workOrder !== null) { // store the Event Object in the DOM element so we can get to it later
$(this).data('workOrder', workOrder);
// make the event draggable using jQuery UI
$(this).draggable({
zIndex: 999,
revert: true, // will cause the event to go back to its
revertDuration: 0 // original position after the drag
});
}
}
});
我怎样才能让这个工作在Firefox?
FullCalendar设置实现降
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
editable: false,
droppable: true,
//edit existing
eventClick: function(calEvent, jsEvent, view) {
populateEvent(calEvent, true);
},
//create new
drop: function(date, jsEvent, ui) {
//alert('jsEvent '+jsEvent);
jsEvent.preventDefault();
var workOrder = $(this).data('workOrder');
workOrder.title = workOrder.woNumber + ' ' + workOrder.account
workOrder.description = workOrder.problemDescription;
workOrder.start = date;
workOrder.end = moment(date).add(1, 'hour'); //change default so the start and end dont match
populateEvent(workOrder, false);
},
我也使用Firefox,并没有拖放问题。我只是在黑暗中拍摄,但你是否也有这个d&d的问题?:http://jsfiddle.net/VjNFn/16/ – Slyvain