Estoy trabajando en un programa OS X donde el usuario realiza una edición WYSIWYG HTML ligera en una WebView. Siendo nuevo en la programación con Cocoa y WebKit, no tengo ni idea de cómo obtener el texto seleccionado de un WebView: la intención es tomar lo que el usuario seleccionó, agregar código HTML (como div's o span's) alrededor del texto y reemplazar el seleccionado texto con el código modificado. ¿Cómo se puede lograr esto?Obtención de HTML fuente desde una WebView en Cocoa
Actualmente estoy programando este proyecto con MacRuby, pero también agradecería la ayuda de los programadores de Objective-C. ¡Gracias!
Odio preguntar algo que probablemente tenga una respuesta obvia para todos los demás, pero si quisiera reemplazar el marcado con + el marcado seleccionado + , ¿cómo lo haría? Esos todos parecen indicarme que el marcado seleccionado será destruido. –
Debe utilizar el objeto 'DOMRange' que le es devuelto y usar sus métodos/propiedades para inspeccionar el contenido que se selecciona. Un documento HTML no es solo una cadena, el DOM puede haberse modificado dinámicamente, por lo que debe hacer el trabajo para asegurarse de que está reemplazando el contenido seleccionado con un marcado válido. WebKit define el método '-markupString' de DOMRange, pero desafortunadamente esto probablemente no le dará lo que necesita. Probablemente deberías construir una estructura DOMNode válida e insertarla, posiblemente con un rango diferente al que recibiste de WebView. –