将文件从Windows资源管理器拖放到Internet Explorer

时间:2012-09-01 18:14:19

标签: javascript internet-explorer drag-and-drop

我正在做一些旧学校IE并尝试从Windows资源管理器拖放到IE工作。我正在获取drop事件,但dataTransfer对象不包含文件名。 getData("Text")也是null。我错过了什么?

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>DnD</title>
  <script src="scripts/jquery-1.7.2.min.js"></script>
</head>
<body>
  <div id="dropstuff">drop stuff here</div>
  <script>
    $(function () {
      var dropTarget = $("#dropstuff");

      dropTarget.bind("dragenter dragover", function () {
        window.event.returnValue = false;
        return false;
      });

      dropTarget.bind("drop", function (e) {
        window.event.returnValue = false;
        var file = e.originalEvent.dataTransfer.getData("Url");
        // file is null!
        return false;
      });
    });
</script>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

IE在支持事情上非常糟糕。

您应该使用特殊插件,即https://github.com/blueimp/jQuery-File-Uploadhttp://www.plupload.com/,或者您可能希望在Flash上​​找到解决方案。但这可能需要一些时间。

我建议你解决这个问题的组织方式:通过在IE中显示部分功能兼容性警告,建议用户使用现代浏览器。