我发现问题仅发生在iOS 6上,但在iOS 6以下版本正常运行。
我的应用正在从一个链接加载图片,该链接需要使用Javascript扩大其图像像素以填充UIWebView的大小。链接图像最初是像素140x24。
我看到它正在线上运行,但图像没有使用iOS 6模拟器进行扩展。它在iOS 5模拟器中工作。请帮忙。
(void)webViewDidFinishLoad:(UIWebView *)webView {
[webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName(\"img\")(0).height=\"30\";document.getElementsByTagName(\"img\")(0).width=\"280\";"];
}
答案 0 :(得分:3)
javascript中获取数组第n个元素的语法是使用方括号,而不是括号。因此,请使用document.getElementsByTagName("img")[0]
而不是document.getElementsByTagName("img")(0)
。
不确定为什么它在iOS5中运行,在iOS6中WebKit可能更严格......
附加提示:要调试iOS6上的javascript错误,新功能使其变得非常简单:
然后,您可以使用Mac上强大的Web Inspector调试iPhone中显示的网页,并可以查看javascript控制台,DOM树等。
(1)如果Mac上的Safari中没有“开发”菜单,则可以在Safari应用程序的“高级”首选项选项卡中启用它。