Abrufen von Quell-HTML aus einer WebView in Cocoa

8

Ich arbeite an einem OS X-Programm, bei dem der Benutzer eine leichte WYSIWYG-HTML-Bearbeitung in einem WebView durchführt. Da ich neu in der Programmierung mit Cocoa und WebKit bin, habe ich absolut keine Ahnung, wie man ausgewählten Text von einem WebView erhält - die Intention ist, den Benutzer auszuwählen, HTML-Code (wie Divs oder Span) um den Text herum hinzuzufügen und das ausgewählte zu ersetzen Text mit dem modifizierten Code. Wie kann dies erreicht werden?

Ich programmiere gerade dieses Projekt mit MacRuby, aber ich würde auch die Hilfe von Objective-C-Programmierern sehr zu schätzen wissen. Danke!

    
Jim C 12.01.2010, 02:48
quelle

3 Antworten

3

Sie können nach dem WebView s -selectedDOMRange fragen und Sie erhalten ein DOMRange Objekt zurück. Sie können dieses Objekt verwenden, um herauszufinden, was ausgewählt ist. DOMRange ist, wie alle WebKit DOM-Objekte, eine Objective-C-Repräsentation eines W3C-Standard-DOMRange-Objekts, siehe DOMRange.h für welche Methoden / Eigenschaften es unterstützt.

Sie können die aktuelle Auswahl dann mit den Methoden -replaceSelectionWithMarkupString: , -replaceSelectionWithText: oder -replaceSelectionWithNode: von WebView ersetzen.

    
Rob Keniger 12.01.2010, 04:18
quelle
5

Mit UIWebView können Sie beliebiges JavaScript ausführen:

%Vor%     
Marcelo Cantos 12.01.2010 03:16
quelle
5

Apple empfiehlt, dieses Snippet hier zu verwenden , um es abzurufen der HTML-Inhalt eines WebKit WebView:

%Vor%

Wenn Sie möchten, dass HTML als einfacher Text interpretiert wird, können Sie Folgendes verwenden:

%Vor%     
CodaFi 22.09.2012 01:35
quelle

Tags und Links