HTML/JavaScript拖放,但在拖动过程中更改文本?

HTML/JavaScript拖放,但在拖动过程中更改文本?,javascript,html,drag-and-drop,Javascript,Html,Drag And Drop,我创建了一个简单的html网页。 用户需要选择像1.23这样的文本,然后将其拖放到另一个浏览器中。 这一切都很完美。 (我不需要编写任何代码就能让它正常工作。我想这是浏览器内置功能的一部分。) 我需要把那个数字四舍五入到1.5。我做四舍五入没有问题, 但是,如何在拖动过程中捕获(并更改)值?我不想更改第一个浏览器中的值,它需要保持为1.23。。。我只需要在拖动开始和拖放之间进行取整,并将其放入第二个浏览器窗口 那能做到吗?我会发布一些代码,但就像我说的,这一切都没有任何代码工作。。。除了“在拖动

我创建了一个简单的html网页。 用户需要选择像1.23这样的文本,然后将其拖放到另一个浏览器中。 这一切都很完美。 (我不需要编写任何代码就能让它正常工作。我想这是浏览器内置功能的一部分。)

我需要把那个数字四舍五入到1.5。我做四舍五入没有问题, 但是,如何在拖动过程中捕获(并更改)值?我不想更改第一个浏览器中的值,它需要保持为1.23。。。我只需要在拖动开始和拖放之间进行取整,并将其放入第二个浏览器窗口

那能做到吗?我会发布一些代码,但就像我说的,这一切都没有任何代码工作。。。除了“在拖动部分时更改”之外


我宁愿编写自己的代码,而不是为了这个小小的功能而拖入大量的代码库,比如jquery。

也许你可以尝试在浏览器启动时更改文本,并在删除后将其还原回来?试着这样做:

HTML:

如果您有权访问要将其拖动到的其他页面,您可以按照Ivan的建议执行操作,并在要将其拖放到的部分上使用ondrop事件


您可以这样做(
Ctrl+C
或右键单击并复制),但我不知道您是否可以通过拖动来完成。你不能在接收窗口里做吗?粘贴数据时,请对其进行处理?您不能使用javascript.hover()函数,然后查看项目在移动时是否不在原始位置?“我只需要在放置后进行循环”-您是否尝试使用
onDrop
事件:不幸的是,我无法访问“目标页面”。想象一下,在google.com上丢了一些东西,我无法让JSFIDLE工作。我无法选择1.512345。。。当它跳到1.5时,我也无法选择它。我不想更改用户看到的文本。。。只在“拖放”和“拖放”之间的某个时间更改它。这里的小提琴使用dataTransfer.setData更改文本拖放时的值:这些都是404Oops-我将我的JSFIDLE用户名从支配更改为domslee,这断开了所有链接。如果更改用户名,链接仍然有效
<div id="dragEl" draggable='true'>1.5343</div>
//This is the element
dragItem = document.getElementById("dragEl");

//This is the event that changes it when mouse is over
dragItem.addEventListener("mouseover", HandleStart);

//These are events that change it back when the dragging is finished
dragItem.addEventListener("mouseout", HandleEnd);
dragItem.addEventListener("dragend", HandleEnd);
temp = dragItem.innerHTML;

//This is launched when it is hovered over
function HandleStart(e){
    e.preventDefault();
    text = e.target.innerHTML
    rounded = Math.round(Number(text)*10)/10; //Rounds the number to two decimal places
    e.target.innerHTML = rounded; 
}

//This is launched when dragging has finished
function HandleEnd(e) {
    e.preventDefault();
    e.target.innerHTML = temp; //Reverts to original
}