我正在开发一个OS X程序,用户在WebView中进行一些简单的WYSIWYG HTML编辑.作为使用Cocoa和WebKit编程的新手,我完全不知道如何从WebView中获取所选文本 - 目的是获取用户选择的内容,在文本周围添加HTML代码(如div或span),并替换所选带有修改代码的文本.如何实现这一目标?
我目前正在使用MacRuby编写这个项目,但我也非常感谢Objective-C程序员的帮助.谢谢!
Apple建议在此处使用此代码段来检索WebKit WebView的HTML内容:
[(DOMHTMLElement *)[[[webView mainFrame] DOMDocument] documentElement] outerHTML];
如果您希望HTML解释为纯文本,您可以使用:
[(DOMHTMLElement *)[[[webView mainFrame] DOMDocument] documentElement] outerText];
UIWebView允许您运行任意JavaScript:
[webview stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('html')[0].innerHTML"]