gpt4 book ai didi

jquery ui droppable 在鼠标指针处的文本区域中插入文本

转载 作者:行者123 更新时间:2023-12-03 23:05:03 25 4
gpt4 key购买 nike

我正在尝试使用 jquery ui Draggable/droppable 拖放到文本区域中。我将文本区域设置为可放置。我能够在放置发生时触发事件,但我不知道如何准确确定“放置”发生在文本区域中的哪个位置。

基本上我想在文本区域中发生放置的精确位置插入文本。

Google 目前没有帮助我,这让我很难过。

示例:

<html><head><title>Drag Drop Test</title>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/themes/base/jquery-ui.css" type="text/css" media="all" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/jquery-ui.min.js" type="text/javascript"></script>

<script>
$(document).ready(function(){

$( "#catalog li" ).draggable({
appendTo: "body",
helper: "clone"
});

$( "#mytext" ).droppable({
accept: ":not(.ui-sortable-helper)",
drop: function( event, ui ) {
console.log(ui.position);
// figure out where in the textarea this is
// drop in some string
}
});
});
</script>
</head>
</body>

<div id="products">
<div id="catalog">
<h3><a href="#">T-Shirts</a></h3>
<div>
<ul>
<li>Lolcat Shirt</li>
<li>Cheezeburger Shirt</li>
<li>Buckit Shirt</li>
</ul>
</div>
</div>
</div>

<textarea id="mytext" cols="60" rows="20">Just some random text.</textarea>

</body></html>

那么,在上面的示例中,如何找出目录 li 元素之一在文本区域中发生“放置”的位置,然后如何将字符串放入文本区域中的该确切位置?

意思是,如果我将“Lolcat Shirt”拖到#mytext textarea中并将其放在“random”和“text”之间,我希望#mytext textarea值更改为“Just some random Lolcat Shirt text”。

这可能吗?我们将非常感谢您的帮助。提前致谢!

最佳答案

这在除 IE 之外的浏览器中并不容易,因为您必须使用范围,而其他浏览器没有任何处理范围内坐标的方法(您需要将文本放置在那里)。

但不知何故,你试图重新发明轮子。大多数浏览器(也许是所有浏览器)允许将选定的文本移动到文本区域中,因此您需要做的是: onmousedown 选择 <li> 的文本(而不是使其可拖动)

关于jquery ui droppable 在鼠标指针处的文本区域中插入文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4131808/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com