console.info("drag"); window.dragItem; // 为Div添加ondragstart事件 function addDivDragStart() { if ($(".remove").length == 0) { var div = document.createElement("div"); div.className = "remove"; // div.style.display = "none"; $('#outCont').parent().append(div); // $('#displayArea').。Lin // var ofs = $('#displayArea').offset(); var width = $('#outCont').height(); // = $('#displayArea').。Lin var ofs = {}; ofs.position = "absolute"; ofs.bottom = "0"; ofs.display = "none"; ofs.left = -50 + "px"; ofs.width = width + 'px'; ofs.height = width + "px"; ofs.zIndex = 9999; $(div).css(ofs); console.log(div) } $('.item').off("dragstart").on('dragstart', function (ev) { window.dragItem = ev.target; }); $('.item').off("drop").on('drop', function (ev) { if (window.dragItem) if ($(ev.target).index() > $(window.dragItem).index()) { ev.target.parentNode.insertBefore(window.dragItem, ev.target.nextSibling); } else { ev.target.parentNode.insertBefore(window.dragItem, ev.target); } window.dragItem = null; ev.preventDefault(); }); dragPreventEvent(); } function dragover(ev) { // $(".remove").show(); ev.preventDefault(); } function drop(ev) { ev.preventDefault(); $(".remove").hide(); if (window.dragItem) window.dragItem.parentNode.removeChild(window.dragItem); // 把光标移到最后 // changeClassName(); } function dragPreventEvent() { $(top.document.body).off("dragover").on('dragover', dragover); $(top.document.body).off("drop").on('drop', drop); // 为displayArea添加拖拽事件,用来防止事件冒泡 $('#outCont,.editor').off("dragover").on('dragover', function (ev) { // $('#displayArea,.editor').。Lin ev.preventDefault(); return false; }); $('#outCont,.editor').off("drop").on('drop', function (ev) { // $('#displayArea,.editor').。Lin ev.preventDefault(); return false; }); (function addDropEvents() { /* 改,抛出错误 arguments[0].$ is not a function。Lin * 先去掉递归调用,其他的直接用 window(第一次调用的入口参数) -- 不会改 arguments[0].$( * 因抛出错误,导致第一个写的写字板里的字迹不会清空 * 另,完全不改的话,也不影响 拖放手写字 的操作 arguments[0].$("body").off("dragover").on('dragover', dragover); arguments[0].$("body").off("drop").on('drop', drop); arguments[0].$("iframe[haveDropEvents!=1]").attr("haveDropEvents","1").each(function () { addDropEvents(this.contentWindow.window); }); */ window.$("body").off("dragover").on('dragover', dragover); window.$("body").off("drop").on('drop', drop); })(window) window.addEventListener("unload", function () { $(top.document.body).off("dragover"); $(top.document.body).off("drop"); }); }