首先,我是objective-c和cocoa的完全新手。我找到了与此相关的资源,但没有一个显示我想要的东西,我似乎无法让其他人为我工作。我需要的是一个非常愚蠢的例子,其中一个窗口包含一个按钮和一个webview,它有一个带有javascript函数的HTML页面,它带有一个参数(字符串或其他东西),并通过document.write
吐出。 (我知道javascript)。
然后,当您单击webview外部的按钮时,它将调用javascript函数,并且webview将在document.write
调用中说出一些内容。如果有人可以把这样一个快速的例子放在一起,我真的很感激它!
感谢。
答案 0 :(得分:16)
您可以使用stringByEvaluatingJavaScriptFromString:在网络视图中调用javascript。
[ webView stringByEvaluatingJavaScriptFromString: @"myJavascriptFunction()" ];
这不是您所要求的完整示例,但完整的应用程序示例有点超出了StackOverflow的适用范围。
答案 1 :(得分:7)
如果您只想调用Javascript函数,可以这样做:
WebScriptObject *script = [_webView windowScriptObject];
[script callWebScriptMethod:@"jsFunctionWithText" withArguments:@[@"Some text"]];
在您的HTML页面中,您需要以下内容:
<script>
function jsFunctionWithText(text)
{
document.write(text);
}
</script>
答案 2 :(得分:4)
以前的解决方案都不适合我。但是,我发现this method in the Apple Developer documentation允许我成功地在我的webView中执行JS代码。
这是一个在XCode 4.6.1(OS X 10.8.3)中适用于我的示例:
[[webView windowScriptObject] evaluateWebScript:@"document.write('derp')"];
答案 3 :(得分:2)
要让WebView正常工作,请参阅Lost Decade Games的这个精彩教程:
答案 4 :(得分:0)
你应该尝试在这个问题上看到我的答案 - Displaying HTML in iPhone app
然后你可以使用javascript作为普通的html标准,将它们添加到你的XCode项目的文件中。