2013-05-24 30 views
7

Tôi đã thử điều này trong Chrome. Có một textarea với rất nhiều văn bản bên trong, chỉnh sửa các phần ở cuối trở nên siêu chậm. Con trỏ và phản hồi đầu vào bàn phím đi đến thu thập dữ liệu.nhập văn bản siêu chậm khi có nhiều văn bản bên trong

Nhưng nếu tôi làm cho nó để các liên kết CSS được di chuyển từ <head> đến sau </body> nó không còn trở nên chậm. Bất kỳ ý tưởng nào tại sao hiện tượng này tồn tại?

Mã sử ​​dụng:

<!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 này là thực sự được tạo ra bởi các script phụ trợ, mà sẽ điền nội dung của textarea với hàng ngàn dòng văn bản. Khi người dùng cuộn xuống cuối nội dung, đó là nơi sự chậm chạp bắt đầu. Nếu css tại khu vực đầu được lấy ra, nó sẽ nhanh.

+0

Văn bản có nhiều "nhiều văn bản" không? Ngoài ra, CSS luôn được bao gồm trong thẻ 'head' của tài liệu cho mục đích hiển thị. –

+0

@JamesDonnelly Vui lòng xem câu hỏi đã chỉnh sửa. –

+0

Bao nhiêu là bao nhiêu? 1000000000000 ký tự? – DiederikEEn

Trả lời

1

Không nhìn thấy ví dụ trực tiếp, rất khó để nói. Nhưng một vài lý do có thể có:

  • Bạn đang sử dụng phông chữ tùy chỉnh trong văn bản (phông chữ? SIFr?) Đang làm chậm trình duyệt xuống do yêu cầu bổ sung thêm chi phí. Riêng nếu bạn đang sử dụng một cái gì đó như SIFr!
  • Vấn đề xác thực: HTML/CSS của bạn có hợp lệ không? Thử chạy qua xác thực W3: (HTML, CSS).
  • Bạn có đang sử dụng JavaScript trên trang không? Có lẽ một số xác nhận hoặc quá trình khác có thể được kích hoạt bằng cách sử dụng textarea?

vọng ruột của tôi sẽ được rằng nó là một trong hai điểm cuối cùng ở trên, để thử và giúp rắc rối-chụp, hãy thử:

  • Chạy đánh dấu của bạn thông qua việc xác nhận và giải quyết bất kỳ vấn đề đặt ra. Liệu nó vẫn còn làm điều đó?
  • Tắt JavaScript và tải trang. Liệu nó vẫn còn làm điều đó?

Tôi hy vọng bạn sẽ có thể thu hẹp lý do rất nhanh chóng.

PS: không đặt CSS ở bất kỳ đâu ngoài đầu - điều đó sẽ khiến bạn gặp phải tất cả các vấn đề khác!

+0

Không sử dụng javascript. –

2

Tôi cũng tình cờ gặp vấn đề này, trong trường hợp của tôi chỉ có trình duyệt crom bị ảnh hưởng. ->https://code.google.com/p/chromium/issues/detail?id=237433

+0

Từ vấn đề Chromium 237433: "_... nó đã giúp rất nhiều (nghĩ 100x) để tắt sửa lỗi chính tả (thông qua nhấp chuột phải trên trường) ._", nhưng trong các phiên bản Chrome gần đây, không còn tùy chọn nào khác tắt chính tả trong menu ngữ cảnh nhấp chuột phải của textarea. – osgx

0

Nếu sự cố chỉ xảy ra trong Chrome, đó có thể là trình kiểm tra chính tả.

Theo liên kết được cung cấp bởi @PapaKai, việc tắt trình kiểm tra chính tả có thể hữu ích. (Gần đây gợi ý)

Bạn có thể tắt kiểm tra chính tả trên chỉ là textarea với < textarea kiểm tra chính tả = "false" > như được giải thích trong this câu trả lời

10

Đặt spellcheck-false:

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

Nó có thể giúp đỡ.


By Augustin gợi ý, bạn cũng có thể thử thêm những kẻ:

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

cảm ơn chỉ để chắc chắn rằng tôi đã thêm autocomplete = "off" autocorrect = "off" autocapitalize = "off" spellcheck = "false" và giải quyết các vấn đề về hiệu suất của tôi. Cảm ơn! –

1

tôi đã cùng một vấn đề, nhưng tôi giải quyết nó với thuộc tính tiếp theo ng-model-options="{ updateOn: 'blur' }"

thử với