2013-05-24 11 views
7

ho provato questo in Chrome. Avendo una textarea con molto testo all'interno, la modifica delle parti alla fine diventa super slow. Il cursore e la risposta di input della tastiera arrivano a una scansione.digitando in textarea super slow quando un sacco di testo all'interno di

Ma se faccio in modo che i collegamenti CSS vengano spostati da <head> a </body> non si rallenta più. Qualche idea sul perché questo fenomeno esiste?

codice utilizzato:

<!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> 

Questo HTML è in realtà generato dagli script di back-end, che riempiranno il contenuto del textarea con migliaia di righe di testo. Quando l'utente scorre verso il basso fino alla fine del contenuto, è qui che inizia la lentezza. Se il css nell'area della testa viene rimosso, sarà veloce.

+0

Quanto testo è "molto testo"? Inoltre, i CSS dovrebbero sempre essere inclusi nel tag 'head' del documento per scopi di rendering. –

+0

@JamesDonnelly Si prega di consultare la domanda modificata. –

+0

Quanto costa un sacco? 1000000000000 caratteri? – DiederikEEn

risposta

1

Senza vedere un esempio dal vivo, è difficile da dire. Ma un paio di possibili ragioni:

  • Si stanno utilizzando font personalizzati nell'area di testo (font-face? SIFr?) Che sta rallentando il browser a causa dei costi aggiuntivi aggiuntivi richiesti. In particolare se stai usando qualcosa come SIFr!
  • Un problema di convalida: il tuo codice HTML/CSS è valido? Prova a eseguirlo attraverso le convalide W3: (HTML, CSS).
  • Stai usando JavaScript nella pagina? Forse qualche convalida o altro processo che potrebbe essere attivato usando la textarea?

Il mio intestino aspettativa è che si tratta di uno degli ultimi due punti di cui sopra, per cercare di aiutare problemi sparare, provare:

  • Il funzionamento del vostro markup attraverso i validatori e di risolvere eventuali questioni sollevate. Lo fa ancora?
  • Disabilita JavaScript e carica la pagina. Lo fa ancora?

Mi aspetto che sarete in grado di restringere il motivo molto rapidamente allora.

PS: non mettere il CSS da nessuna parte, ma nella testa - questo causerà tutti i tipi di altri problemi!

+0

Non è stato utilizzato javascript. –

2

Sono incappato anche su questo problema, nel mio caso è interessato solo il browser Chromium. ->https://code.google.com/p/chromium/issues/detail?id=237433

+0

Dal problema 237433 di Chromium: "_... ha aiutato molto (pensa 100x) a disattivare la correzione ortografica (tramite il tasto destro del mouse sul campo).", Ma nelle versioni recenti di Chrome non c'è più l'opzione per disattivare l'ortografia nel menu di scelta rapida del menu di scelta rapida di textarea. – osgx

0

Se il problema si verifica solo in Chrome, potrebbe essere il correttore ortografico.

In base al collegamento fornito da @PapaKai, la disattivazione del correttore ortografico potrebbe essere di aiuto. (Recentemente suggerito)

è possibile disattivare il controllo ortografico solo su textarea con < textarea controllo ortografico = "false" > come spiegato in this risposta

10

Impostare spellcheck-false:

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

Potrebbe aiutare.


da Augustin suggerimento, si può anche provare ad aggiungere questi ragazzi:

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

grazie solo per essere sicuro di aver aggiunto autocomplete = "off" autocorrect = "off" autocapitalize = "off" spellcheck = "false" e questo ha risolto i miei problemi di prestazioni. Grazie! –

1

Ho avuto lo stesso problema, ma ho risolto con il prossimo attributo ng-model-options="{ updateOn: 'blur' }"

provare con

Problemi correlati