在Internet Explorer(10)中交换(邮件)拖放电子邮件
我想将Office 365(Outlook) 中的电子邮件拖放到另一个浏览器窗口。在Internet Explorer(10)中交换(邮件)拖放电子邮件
问题是,我选择并拖放电子邮件到我的放置位置后,它不接受放置位置。 (仅适用于IE浏览器,Chrome浏览器)
如何创建接受电子邮件的放置位置?
我看看:https://www.html5rocks.com/en/tutorials/dnd/basics/ 但那里拖动的对象从来没有这样锁定。
然后我看了一下拖动的不同的实现,并在这个网站拖放功能:http://mereskin.github.io/dnd/
在Chrome浏览器中下面的代码工作: 的jsfiddle:https://jsfiddle.net/puq3y6u1/
(JavaScript来实现DropLocation)
var dropbox = document.getElementById('dropbox');
dropbox.addEventListener('dragenter', noopHandler, false);
dropbox.addEventListener('dragexit', noopHandler, false);
dropbox.addEventListener('dragover', noopHandler, false);
dropbox.addEventListener('drop', drop, false);
function noopHandler(evt) {
evt.stopPropagation();
evt.preventDefault();
}
function drop(evt) {
evt.stopPropagation();
evt.preventDefault();
var data = evt.dataTransfer.getData("text/plain");
console.log(data);
}
HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Drag and Drop the Office365 Mail</title>
<link rel="stylesheet" href="css/styles.css">
</head>
<body>
<div id="dropbox">DropZone </div>
<script src="js/script.js"></script>
</body>
</html>
CSS:
#dropbox {
width: 200px;
height: 200px;
background-color: blue;
color: white;
font-size: 30px;
text-align: center;
line-height: 200px;
}
我知道,对于Internet Explorer中的getData类型应改为只有 “文本”。
但是,我不能只将setData更改为“文本”,因为它已经由owa站点实施。
当我尝试通过chrome将邮件移入droplocation时,它按预期工作。
如果我尝试将邮件从Internet Explorer窗口移动到Internet Explorer窗口,当我不在文件夹所在的导航栏上时,立即得到阻止。
我试着调试Owa是怎么做的。因为您可以将eMails拖放到文件夹(在IE中)。但我卡在那里。代码被缩小了,非常大,我可以分析它。
当您在Outlook Web App或Exchange使用Internet Explorer拖动一个电子邮件就被复制到剪贴板。
有了:
window.clipboardData.getData("Text");
你可以得到的数据。但是,您需要在Internet安全策略设置中启用剪贴板选项。