【问题标题】:How to drag&drop online images with HTML5?如何使用 HTML5 拖放在线图像?
【发布时间】:2012-06-23 12:50:17
【问题描述】:

我目前正在测试拖放。从我的桌面拖放图像可以正常工作,但我遇到了一个问题:当我拖放“在线”图像(从另一个网站,甚至使用 a 从同一网页拖放时,变量 e.dataTransfer.files 为空.

总结一下我正在尝试做的事情:您将图像从桌面拖到我的页面(在特殊区域内),然后它将图像显示在 <canvas> 内。我还希望能够从我的页面中拖动一张图片,比如说“嘿,你可以先试试这些图片!”。

关于拖放的基础知识,我从这个教程中得到了灵感:http://www.html5rocks.com/en/tutorials/dnd/basics/

【问题讨论】:

    标签: image html drag-and-drop


    【解决方案1】:

    因为在线拖放被解释为链接,而不是文件传输。您必须首先将图片保存在桌面上,然后它将被解释为真正的拖放。 但是,由于您的页面上已经有图片,您可以通过用现有图片填充画布(例如使用 javascript)来实现您的目标。

    【讨论】:

    • 感谢您的回答,我明白了!但是如何从丢弃的图像中获取任何信息(即使我的页面上有它并且我知道该图像的路径,我想知道“好吧,是 image1 / image2 / image3”被丢弃了)。正如我所说,e.dataTransfer.files 是空的。
    • 如果您的页面上已有图片,您可以为图片添加事件侦听器,例如 onclick 或 onmousedown(当用户按下鼠标按钮但有尚未发布)。然后您将知道单击了哪个图像,并且您将能够从 DOM 结构(如 id、src)中提取信息。 Here你可以找到添加到HTML5的新事件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-08
    相关资源
    最近更新 更多