Ben*_*aum 10 javascript drag-and-drop google-chrome-extension dom-events
在以下chrome用户脚本中,如何获取从桌面拖动的图像的URL?我debugger
有线,我得到空字符串e.dataTransfer.getData("text")
和e.dataTransfer.getData("url")
// ==UserScript==
// @match http://*/*
// @match https://*/*
// ==/UserScript==
function preventDrag(e) {
e.stopPropagation();
e.preventDefault();
}
function handleDrop(e) {
console.log("Just dropped: " + e.dataTransfer.files[0].name);
debugger
// TODO: grab the url for e.dataTransfer.files[0]
e.stopPropagation();
e.preventDefault();
}
document.addEventListener('drop', handleDrop, false);
document.addEventListener('dragenter', preventDrag, false);
document.addEventListener('dragover', preventDrag, false);
Run Code Online (Sandbox Code Playgroud)
Lei*_*iko 16
不确定我理解得很好,但如果我这样做,你将无法拥有文件路径(意味着删除文件的完整路径).
这是对浏览器的"保护".但你至少可以得到它的名字.
var file = e.originalEvent.dataTransfer.files[0],
reader = new FileReader();
reader.onloadend = function (event) {
console.log(file);
// filename is in file.name
// ... do something here
}
reader.readAsArrayBuffer(file);
Run Code Online (Sandbox Code Playgroud)
这是一个如何做的jsFiddle:jsFiddle演示
归档时间: |
|
查看次数: |
9350 次 |
最近记录: |