drop事件没有触发

时间:2014-03-12 09:38:09

标签: javascript jquery

正在使用jquery处理项目,我们必须拖动一个div并放到地图上。它正在工作但是第一个必须点击页面中的某个地方然后div被选中,否则它将不会选择而且无法丢弃..

 render: function(){
var leftMatrixTemplate = _.template(Application.Template.Maps.LeftMatrix, {});
$("#left-navigation").html(leftMatrixTemplate).removeClass("hidden");
var detailedViewTemplate = _.template(Application.Template.Maps.DetailedView, {});
$(this.el).html(detailedViewTemplate).removeClass("hidden");
$('div[id^="cu-"]').on('dragstart',function(e){
    e.originalEvent.dataTransfer.setData("Text",e.currentTarget.id);
});
$('div[id^="lum-"]').on('dragstart',function(e){
    e.originalEvent.dataTransfer.setData("Text",e.currentTarget.id);
});
$('#MapView').on('drop',function(e){
    var x = e.originalEvent.clientX + $(this).scrollLeft() - this.offsetLeft;
    var y = e.originalEvent.clientY + $(this).scrollTop() - this.offsetTop;
    e.originalEvent.stopPropagation();
    e.originalEvent.preventDefault();
    var data = e.originalEvent.dataTransfer.getData("Text");
    var did = 'd'+data;
    if (data.match("^cu")){
        $(this).append('<div class="dropped cuImg" id="'+did+'"></div>');
    }else{
        $(this).append('<div class="dropped luminaryImg" id="'+did+'"></div>');
    }
    $('#'+did).css('left',x).css('top',y);
}).on('dragover', function (e) {
    e.preventDefault();
});

}

请帮我从这里出来,谢谢你

0 个答案:

没有答案