如果某些 link 之前已经粘贴到 <input>,则无法将任何 link <a href> 拖放到 <input type="text">
Can't drag and drop any link <a href> to the <input type="text"> if some link has been already pasted to the <input> before
无法粘贴任何link <a href="#">Link for Drag and Drop</a>
到Chrome中的<input type="text"/>
默认HTML5拖拽,如果有link 已经被拖放到输入中了。
它也可以在 Whosebug 网站上重现。尝试将 'Whosebug' link 拖放到 "Search..." 输入,一开始它可以正常工作。再试一次,在拖动 <input>
Chrome 期间将光标更改为 'not allowed'
作为解决方法,您可以在第二次拖动之前单击任意位置,现在可以将 link 粘贴到相同的输入。
它在 Firefox、IE、Edge 上没有问题,但在 Chrome 上没有问题。
第二次尝试为 Chrome 拖放 link:
第二次完成拖放 Firefox link 的尝试:
有人可以为 Chrome 解释这种拖放功能的行为吗?
我已经找到 Chrome 这种行为的根本原因。
当您成功完成拖放操作后,粘贴到输入的 link 文本仍然处于选中状态,即使您在屏幕上看不到它。 并且仅 Chrome 为真。所有其他浏览器在拖放完成后从目标 <input>
/<textarea>
中删除选择。
因此您无法完成对选定文本的拖放操作,但您可以在下一次通过 JS 拖动之前删除选择:
https://jsfiddle.net/Klyuch/98tLcxhw/13/
无法粘贴任何link <a href="#">Link for Drag and Drop</a>
到Chrome中的<input type="text"/>
默认HTML5拖拽,如果有link 已经被拖放到输入中了。
它也可以在 Whosebug 网站上重现。尝试将 'Whosebug' link 拖放到 "Search..." 输入,一开始它可以正常工作。再试一次,在拖动 <input>
Chrome 期间将光标更改为 'not allowed'
作为解决方法,您可以在第二次拖动之前单击任意位置,现在可以将 link 粘贴到相同的输入。
它在 Firefox、IE、Edge 上没有问题,但在 Chrome 上没有问题。
第二次尝试为 Chrome 拖放 link:
第二次完成拖放 Firefox link 的尝试:
有人可以为 Chrome 解释这种拖放功能的行为吗?
我已经找到 Chrome 这种行为的根本原因。
当您成功完成拖放操作后,粘贴到输入的 link 文本仍然处于选中状态,即使您在屏幕上看不到它。 并且仅 Chrome 为真。所有其他浏览器在拖放完成后从目标 <input>
/<textarea>
中删除选择。
因此您无法完成对选定文本的拖放操作,但您可以在下一次通过 JS 拖动之前删除选择: https://jsfiddle.net/Klyuch/98tLcxhw/13/