2010-10-25 12 views
5

Desidero selezionare il testo in un paragrafo quando faccio clic o doppio clic sul tag <p>. Non evidenziare, proprio come usare il mouse per creare un'area selezionata per scegliere il testo da selezionare!Seleziona il testo proprio come "Ctrl + A" quando fai clic sul testo?

Ho diversi paragrafi e * indirizzi di collegamento file .rar nella pagina, e voglio selezionare tutto il testo quando clicco su uno di essi. Penso che la casella di testo potrebbe funzionare in questo modo, ma mi piace che sia in un paragrafo o tag di collegamento.

C'è un modo per selezionare tutto il testo nel paragrafo facendo clic su un altro elemento?

+1

Ummm, un po 'più di informazioni si prega di – Petah

+1

Questo ha bisogno di più contesto. Stai chiedendo un editor di testo? un'app WinForms? Un'app web? Un'app per iPhone? Un'app per Android? – Yuliy

+0

Dai suoni di ciò: vuoi essere in grado di selezionare il testo del paragrafo. Puoi già farlo. (Wow, questo è stato risolto rapidamente.) Ma seriamente, dateci ulteriori informazioni. – doppelgreener

risposta

7

Ecco una funzione che selezionerà i contenuti dell'elemento si passa ad esso:

function selectElementContents(el) { 
    var range; 
    if (window.getSelection && document.createRange) { 
     range = document.createRange(); 
     var sel = window.getSelection(); 
     range.selectNodeContents(el); 
     sel.removeAllRanges(); 
     sel.addRange(range); 
    } else if (document.body && document.body.createTextRange) { 
     range = document.body.createTextRange(); 
     range.moveToElementText(el); 
     range.select(); 
    } 
} 

window.onload = function() { 
    var el = document.getElementById("your_para_id"); 
    selectElementContents(el); 
}; 
+0

Perfetto! Ho pensato che fosse il modo alternativo per ottenere il mio obiettivo. Grazie mille !! – qinHaiXiang

2

Se si parla di JavaScript, vedere Introduction to Range di Peter-Paul Koch (famoso per le sue tabelle di compatibilità).

+0

Mi dispiace tanto! Si tratta di una funzione della pagina Web. Ho diversi paragrafi sulla pagina e voglio selezionare tutto il testo quando clicco su uno di essi. – qinHaiXiang

+0

Avevo provato a utilizzare la casella di testo per mantenere l'indirizzo di collegamento del file, quando mi concentro e selezionare il testo nella casella di testo. Flashgot funziona bene. Ma quando deseleziono la casella di testo, flashgot rimane in possesso dell'indirizzo di collegamento del file! – qinHaiXiang

+0

range.selectNodeContents è indefinito .. in chrome – SuperUberDuper

0

È possibile selezionare un intero paragrafo con un doppio clic. Perché vuoi cambiarlo?

+0

Sì. Sono così stupido. Ma è un modo per selezionare il testo del paragrafo facendo clic su un altro elemento, come il tag "h" del titolo !? – qinHaiXiang

Problemi correlati