2010-10-25 14 views
5

Quiero seleccionar el texto de un párrafo cuando hago clic o hago doble clic en la etiqueta <p>. No destacar, al igual que con el mouse para hacer un área de selección para elegir el texto que se seleccionará!Seleccione texto como "Ctrl + A" al hacer clic en el texto?

Tengo varias direcciones de enlace de archivo de párrafo y * .rar en la página, y quiero seleccionar todo el texto cuando hago clic en una de ellas. Creo que el cuadro de texto podría funcionar de esa manera, pero me gusta que esté en un párrafo o etiqueta de enlace.

¿Hay alguna manera de seleccionar todo el texto en el párrafo haciendo clic en otro elemento?

+1

Ummm, un poco más de información, – Petah

+1

Esto necesita más contexto. ¿Estás preguntando sobre un editor de texto? una aplicación WinForms? Una aplicación web? Una aplicación para iPhone? Una aplicación de Android? – Yuliy

+0

Por lo que dice: desea poder seleccionar texto de párrafo. Ya puedes hacer eso. (Wow, eso fue resuelto rápidamente.) Pero en serio, danos más información. – doppelgreener

Respuesta

7

Aquí es una función que seleccionará el contenido del elemento se pasa a ella:

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

¡Perfecto! Pensé que era la forma alternativa de obtener mi objetivo. ¡Muchas gracias! – qinHaiXiang

2

Si estás hablando de JavaScript, mira Introduction to Range por Peter-Paul Koch (famoso por sus tablas de compatibilidad).

+0

Lo siento mucho! Se trata de una función de página web. Tengo varios párrafos en la página y deseo seleccionar todo el texto cuando hago clic en uno de ellos. – qinHaiXiang

+0

He intentado usar el cuadro de texto para mantener la dirección del enlace del archivo, cuando me enfoco y selecciono el texto en el cuadro de texto. El flashgot funciona bien. Pero cuando dejo de seleccionar el cuadro de texto, ¡el flashgot sigue sosteniendo la dirección del enlace del archivo! – qinHaiXiang

+0

range.selectNodeContents no está definido ... en cromo – SuperUberDuper

0

PUEDE seleccionar un párrafo completo con un doble clic. ¿Por qué quieres cambiar eso?

+0

Sí. Soy tan estúpido. ¿Pero es una manera de seleccionar el texto del párrafo haciendo clic en otro elemento, como la etiqueta del título "h"? – qinHaiXiang

Cuestiones relacionadas