【问题标题】:ios - How to load javascript function into UIWebview?ios - 如何将 javascript 函数加载到 UIWebview 中?
【发布时间】:2013-04-17 21:49:06
【问题描述】:
我正在使用 OpenID 构建一个应用程序,现在我想获取访问令牌,请通过这个给定的链接
http://www.stevesaxon.me/posts/2011//window-external-notify-in-ios-uiwebview
在那个链接中给出了javascript函数
<script type=\"text/javascript\">
window.external =
{
'Notify': function(s) { document.location = 'acs://settoken?token=' + s; },
'notify': function(s) { document.location = 'acs://settoken?token=' + s; }
};
</script>
如何在UIWebview 中加载这个javascript?
【问题讨论】:
标签:
ios
objective-c
access-token
【解决方案1】:
UIWebView 类有一个名为 stringByEvaluatingJavaScriptFromString 的方法,您可以使用该方法将 javascript 代码加载到 webview。
我使用这种方法在我的 webview 上执行 javasctipt:
-(void) runjs:(NSString *)code
{
@try
{
if (webview)
[webview stringByEvaluatingJavaScriptFromString: code];
}
@catch (NSException *exception)
{
}
}
【解决方案2】:
检查调用的 UIWebView 方法:
stringByEvaluatingJavaScriptFromString:(NSString *)script;
NSString *result = [_webView stringByEvaluatingJavaScriptFromString:(@"alert('Hi')")];
【解决方案3】:
您可以使用此方法将javascript从html调用到iOS webview
[self.webView stringByEvaluatingJavaScriptFromString:@"my_html_function();"];
这可能会对你有所帮助。