Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 关于从DOM对象修剪大量文本的建议_Javascript_Jquery - Fatal编程技术网

Javascript 关于从DOM对象修剪大量文本的建议

Javascript 关于从DOM对象修剪大量文本的建议,javascript,jquery,Javascript,Jquery,我正在做一些浏览器编辑,我有一些内容,大约20k个字符长,在一段时间内 所以它看起来像: <textarea> Text 1 Text 2 Text 3 Text 4 [...] Text 20,000 </textarea> 你在测试什么浏览器 获取起始索引和可选长度。如果省略了长度,则提取到字符串的末尾。获取要提取的字符串的起始索引和结束索引,我认为这可能是一个更好的选择,因为您已经有了这些索引 我用刘易斯·卡罗尔的书创作了一个小故事。这本书的长度约为160000

我正在做一些浏览器编辑,我有一些内容,大约20k个字符长,在一段时间内

所以它看起来像:

<textarea>
Text 1
Text 2

Text 3
Text 4
[...]
Text 20,000
</textarea>

你在测试什么浏览器

获取起始索引和可选长度。如果省略了长度,则提取到字符串的末尾。获取要提取的字符串的起始索引和结束索引,我认为这可能是一个更好的选择,因为您已经有了这些索引

我用刘易斯·卡罗尔的书创作了一个小故事。这本书的长度约为160000个字符,您可以尝试使用各种开始/结束索引,看看它是否会使浏览器崩溃。在我的Chrome、Firefox和Safari上似乎运行良好。不幸的是,我没有访问IE的权限。下面是使用的函数:

function chop(start, end) {
    var trimmedText = $('#preId').html().substring(start, end);
    $('textarea').val(trimmedText);
}
​

对于jQuery不太确定,但对于普通Javascript,可以使用
textNode
对象的
splitText()
方法来实现。您的
有一个
textNode
子节点,其中包含所有文本。(您可以从
childNodes
集合中获得它。)在所需索引处拆分它,然后使用
removeChild()
删除您不需要的部分。

非常彻底和快速的回答!我使用的是FF 3.6-让我试试你到底在做什么,看看我是否可以重新编程。每次我这么做,浏览器就会变白。谢谢。某个地方的无限循环可能会导致浏览器崩溃,或者在单击“修剪”时触发其他处理。非常有趣!事实上,我犯了一个错误上面-这是一个文本区。。。这仍然有效吗?顺便说一句,您的最后一行可以简化为保存一个文档ID查找:removeTextNode.parentNode.removeChild(removeTextNode)
function chop(start, end) {
    var trimmedText = $('#preId').html().substring(start, end);
    $('textarea').val(trimmedText);
}
​