在cocoa webview中调用网页的Javascript功能

pen*_*rob 8 javascript cocoa objective-c webview

首先,我是objective-c和cocoa的完全新手.我找到了与此相关的资源,但没有一个显示我想要的东西,我似乎无法让其他人为我工作.我需要的是一个非常愚蠢的例子,其中一个窗口包含一个按钮和一个webview,它有一个带有javascript函数的HTML页面,它接受一个参数(字符串或其他东西),然后通过它发出document.write.(我知道javascript).

然后,当您单击webview外部的按钮时,它将调用javascript函数,并且webview将通过document.write调用说出一些内容.如果有人可以把这样一个快速的例子拼凑起来,我真的很感激!

谢谢.

Jon*_*etz 16

您可以使用stringByEvaluatingJavaScriptFromString:在Web视图中调用javascript.

[ webView stringByEvaluatingJavaScriptFromString: @"myJavascriptFunction()" ];
Run Code Online (Sandbox Code Playgroud)

这并不是您所要求的完整示例,但完整的应用程序示例有点超出了StackOverflow的适用范围.


Mar*_*ram 7

如果您只想调用Javascript函数,可以这样做:

WebScriptObject *script = [_webView windowScriptObject];
[script callWebScriptMethod:@"jsFunctionWithText" withArguments:@[@"Some text"]];
Run Code Online (Sandbox Code Playgroud)

在您的HTML页面中,您将需要以下内容:

<script>
function jsFunctionWithText(text)
{
    document.write(text);
}
</script>
Run Code Online (Sandbox Code Playgroud)