2010-08-28 75 views
1

我有一个输入框,我想将链接拖放到使用jQuery中。我的目标是点击链接将其拖放到输入框中,并将它填充到图像标签(如果其链接指向图像)或href标签(如果链接指向文件)。使用jQuery将链接拖放到表单输入框中

这可能吗?任何人都可以想到这样的事情的任何例子?越多的答案越好,所以请发布什么对你有用。

在此先感谢!

以下是一些有兴趣的人的更多信息: 拖放功能依赖支持File.API的浏览器。

的更多信息:

http://www.thebuzzmedia.com/html5-drag-and-drop-and-file-api-tutorial/

http://www.w3.org/TR/FileAPI/

让我知道这是有益的,或者如果我可以添加更多的信息。谢谢大家!

+0

因此,您想要将页面中的链接拖动到同一页面上的输入框中,并在其中创建一个“”或“”标签? – 2010-08-28 01:01:35

+0

我希望将标签填充到输入字段/框中。 – chainwork 2010-08-29 01:30:21

回答

3

似乎够简单;至少在我的浏览器(Chrome)中将一个链接拖入一个输入/文本区域并使用锚点引用为缺省功能的URL填充它;因此下面应该做这项工作。

$("input").change(function() { 
    if($(this).val().substring($(this).val().length-3, $(this).val().length) == 'jpg') { 
    $("a img").attr('src', $(this).val()) 
    } else { 
    $("a").attr('href', $(this).val()) 
    } 
}) 

显然你要展开的代码来支持的文件类型,再和我敢肯定有更好的方法来识别URL是否是指图像或没有,但这是一个很好的起点。

如果这不能满足您的确切需求,您可能需要考虑在输入框中绑定什么事件; focus也可能是一个可行的选择?

+0

谢谢Steve,星期一我会给你一个镜头(手指交叉)。 – chainwork 2010-08-29 01:31:23

+0

在FF中工作,但出于某种原因不在IE中。我看到另一个问题,说IE没有拖动链接到文本区域启用。 我仍然需要弄清楚如何在img src =和 chainwork 2010-08-30 17:28:47

+0

我没有一个解决方案,如何获得输入,从我的头顶IE的拖动填充。然而,我几乎为你提供了后者。我的例子假设你有现有的元素需要改变; ($(this).val())。appendTo('body());}如果你不这样做,请尝试以下内容:'$(“”).attr('href',$(this).val “)'。这会创建一个锚点,然后将其附加到页面的body标签。 – Steve 2010-08-30 18:43:26