当文本区里面有很多文本时,输入速度很慢



我在Chrome中尝试了这个。如果有一个文本区,里面有很多文本,编辑最后的部分会变得非常慢。光标和键盘输入响应变得缓慢。

但是如果我这样做,使CSS链接从<head>移动到</body>之后,它不再变得缓慢。你知道为什么会出现这种现象吗?

代码:

<!DOCTYPE html>
<html>
    <head>
        <style>textarea {width: 400px; height: 400px;}</style>
        <link href="1.css" rel="stylesheet" type="text/css">
    </head>
    <body>
        <textarea name="content"></textarea>
    </body>
</html>

这个html实际上是由后端脚本生成的,它将用数千行文本填充文本区的内容。当用户向下滚动到内容的末尾时,速度就开始变慢了。如果在头部区域的css被删除,它将是快速的

Set spellcheck to false:

<textarea spellcheck="false"></textarea>

这可能有帮助。


根据Augustin的建议,您还可以尝试添加这些元素:

<textarea autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false">

我也绊倒了这个问题,在我的情况下,只有铬浏览器受到影响。-> https://code.google.com/p/chromium/issues/detail?id=237433

我有同样的问题,但我解决了它与下一个属性ng-model-options="{ updateOn: 'blur' }"

<textarea ng-model-options="{ updateOn: 'blur' }"></textarea>

没有看到一个实际的例子,很难说。但是有几个可能的原因:

  • 你在文本区使用自定义字体(font-face?SIFr?),由于需要额外的开销,这会减慢浏览器的速度。特别是如果你使用的是像SIFr这样的东西!
  • 验证问题:你的HTML/CSS有效吗?试着通过W3验证:(HTML, CSS)。
  • 你在页面上使用JavaScript吗?可能是使用文本区域触发的一些验证或其他过程?

我的直觉是,这是上面最后两点之一,尝试并帮助解决问题,尝试:

  • 通过验证器运行标记并解决产生的任何问题。它还能做吗?
  • 禁用JavaScript并加载页面。它还能做吗?

我希望你能很快地缩小原因范围。

PS:不要把CSS放在除了头部的任何地方——那会给你带来各种各样的其他问题!

如果问题只发生在Chrome中,它可能是拼写检查器。

根据@PapaKai提供的链接,禁用拼写检查器可能会有所帮助。(最近建议)

你可以使用

最新更新