【问题标题】:xcode 5, I would like to remove a class in uiWebViewxcode 5,我想删除 uiWebView 中的一个类
【发布时间】:2014-02-23 19:17:08
【问题描述】:

我正在创建一个加载各种网络视图的 iPhone 应用程序。我已经想出了如何在下面的代码中删除“标题”div,但是同样的方法不适用于“主要部分”类。谁能建议如何在 Xcode 中定位和显示:none 这个类?

代码如下:

- (void)viewDidUnload
{
_webView.delegate=nil;
[super viewDidUnload];
// Release any retained subviews of the main view.
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}


- (void)webViewDidFinishLoad:(UIWebView *)webView {
[webView stringByEvaluatingJavaScriptFromString:@"document.getElementById(\"header\").style.display=\"none\";"];
[webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByClassName(\"main-sections\").style.display=\"none\";"];

}

【问题讨论】:

  • 首先 document.getElementsByClassName 返回一个数组,所以你必须在 for 循环中进行。其次,隐藏标题的代码是正确的,如果它不起作用,这可能是因为您没有 id 为“header”的元素

标签: javascript iphone objective-c uiwebview


【解决方案1】:

按类名获取元素就是这样的数组。

[webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByClassName(\"main-sections\")[0].style.display=\"none\";"];

或者如果您希望将其应用于该类的所有元素

[webView stringByEvaluatingJavaScriptFromString:@"
var arrayData = document.getElementsByClassName(\"main-sections\");
for (item in arrayData) {
item.style.display=\"none\";
}
"];

【讨论】:

  • 非常感谢您的回复,效果很好!
  • 这对我不起作用。我已经在 webviewdidfinish 中写了这个
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-05-13
  • 2013-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-11
相关资源
最近更新 更多