Pracuję nad programem OS X, w którym użytkownik wykonuje kilka lekkich edycji w trybie WYSIWYG HTML w WebView. Będąc nowicjuszem w programowaniu za pomocą Cocoa i WebKit, nie mam absolutnie żadnego pojęcia, jak uzyskać wybrany tekst z WebView - zamierzam wziąć to, co wybrał użytkownik, dodać kod HTML (np. Div lub span) wokół tekstu i zastąpić wybrany tekst ze zmodyfikowanym kodem. Jak to osiągnąć?Pobieranie kodu źródłowego HTML z WebView w kakao
Obecnie programuję ten projekt z MacRuby, ale doceniam też pomoc programistów Objective-C. Dziękuję Ci!
Nienawidzę pytać o coś, co prawdopodobnie ma odpowiedź oczywistą dla wszystkich innych, ale gdybym chciał zastąpić znacznik z + zaznaczonym znacznikiem + , jak bym to zrobił? Wszystko wskazuje na to, że wybrany znacznik zostanie zniszczony. –
Musisz użyć obiektu 'DOMRange', który jest przekazywany do ciebie i użyć jego metod/właściwości do inspekcji wybranej zawartości. Dokument HTML to nie tylko ciąg znaków, DOM mógł zostać zmodyfikowany dynamicznie, więc musisz wykonać pracę, aby upewnić się, że zastępujesz wybraną treść prawidłowym znacznikiem. WebKit definiuje metodę '-markupString' w DOMRange, ale niestety to prawdopodobnie nie da ci tego, czego potrzebujesz. Prawdopodobnie powinieneś zbudować prawidłową strukturę DOMNode i wstawić ją, prawdopodobnie z innym zakresem, niż ten, który otrzymałeś z WebView. –