gpt4 book ai didi

Javascript:将选定的文本添加到数组

转载 作者:行者123 更新时间:2023-11-29 10:25:15 25 4
gpt4 key购买 nike

我的目标:每次用户选择文本并单击按钮时,该文本都会添加到数组中。问题:每次按下按钮时,数组中的所有对象都会被当前选定的文本覆盖。

我非常感谢帮助更改行为,以便所选文本不会覆盖所有以前的数组项。

<script type="text/javascript">
var selects = new Array();
selects.push("1");
function getSelText()
{
var i = 0;
while (i<1) {
var txt = [null];
if (window.getSelection)
{
txt = window.getSelection();
}
else if (document.getSelection)
{
txt = document.getSelection();
}
else if (document.selection)
{
txt = document.selection.createRange().text;
}
else return;
selects.push(txt);
i++;
};
document.menu.selectedtext.value = selects;
}
</script>


<form class="menu" name="menu">
<input type="button" value="highlight" class="highlightButton" onmousedown="getSelText()"/>
<textarea name="selectedtext" rows="5" cols="20"></textarea>
</form>

<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>

最佳答案

window.getSelection() 返回一个选择对象,而不是一个字符串,但当你打印出来时它看起来像一个字符串。然后,该数组具有对该选择对象的引用。下次选择对象发生变化时,数组引用也会发生变化。您想在将选择对象放入数组时将其转换为字符串:

selects.push(""+txt);

... ""+ 位,通过 + 运算符,将选择对象转换为字符串。可能有另一种(更好的)方法来做到这一点......

关于Javascript:将选定的文本添加到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2893250/

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