UIWebView:获取<BODY>标签的内容
UIWebView: get the contents of the <BODY> tag
我初始化一个 UIWebView 如下:
NSString *msg = <HTML><BODY bgcolor=\"#504a4b\" style=\"font-family:Verdana; font-size:20\" > <B> No Messages";
[webviewMessageLog loadHTMLString:msg baseURL:NULL];
显示的文字完全符合我的预期。稍后,我想追加到这个日志中。作为测试,我做了:
-(void)webViewDidFinishLoad:(UIWebView *)webView
{
NSString *oldHTML = [webviewMessageLog stringByEvaluatingJavaScriptFromString:@"document.body.innerHTML"];
NSLog(@"%@", oldHTML);
this returns 标签后的 HTML 开始,像这样:
<b> No Messages</b>
我的问题是:我需要读取什么 javascript 对象才能看到我在 BODY 标签中设置的参数?我如何查看之前设置的 font-family 和 bgcolor 项?我想保留在别处设置的任何格式,我希望只阅读之前的 BODY 标签并避免使用额外的代码来重新评估 BODY 标签应包含的内容。
谢谢!
如果想获取bgcolor
属性,可以使用:
NSString *bgColor = [webviewMessageLog stringByEvaluatingJavaScriptFromString:@"document.body.getAttribute("bgcolor")"];
NSLog(@"%@", bgColor);
类似的,你也可以访问其他属性。
我初始化一个 UIWebView 如下:
NSString *msg = <HTML><BODY bgcolor=\"#504a4b\" style=\"font-family:Verdana; font-size:20\" > <B> No Messages";
[webviewMessageLog loadHTMLString:msg baseURL:NULL];
显示的文字完全符合我的预期。稍后,我想追加到这个日志中。作为测试,我做了:
-(void)webViewDidFinishLoad:(UIWebView *)webView
{
NSString *oldHTML = [webviewMessageLog stringByEvaluatingJavaScriptFromString:@"document.body.innerHTML"];
NSLog(@"%@", oldHTML);
this returns 标签后的 HTML 开始,像这样:
<b> No Messages</b>
我的问题是:我需要读取什么 javascript 对象才能看到我在 BODY 标签中设置的参数?我如何查看之前设置的 font-family 和 bgcolor 项?我想保留在别处设置的任何格式,我希望只阅读之前的 BODY 标签并避免使用额外的代码来重新评估 BODY 标签应包含的内容。
谢谢!
如果想获取bgcolor
属性,可以使用:
NSString *bgColor = [webviewMessageLog stringByEvaluatingJavaScriptFromString:@"document.body.getAttribute("bgcolor")"];
NSLog(@"%@", bgColor);
类似的,你也可以访问其他属性。