从Angularjs App中的iOS Webview调用Javascript函数
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了从Angularjs App中的iOS Webview调用Javascript函数,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1225字,纯文字阅读大概需要2分钟。
内容图文
我的问题是当我尝试从UIWebView中调用我的AngularJS应用程序中存在的javascript函数时,该函数无法识别.当我在典型的html结构中调用该函数时,该函数被识别为预期的.示例如下:
Objective-C的:
- (void)viewDidLoad
{
[super viewDidLoad];
// CODE GOES HERE
_webView.delegate = self;
// LOAD THE CHABACORP HOMEPAGE WITH INITIAL UIWEBVIEW
NSString *fullURL = @"http://testing.com";
NSURL *url = [NSURL URLWithString:fullURL];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[self.webView loadRequest:requestObj];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView{
[_webView stringByEvaluatingJavaScriptFromString:@"testing()"];
}
ANGULARJS控制器:
'use strict';
angular.module('testing.controllers', [])
.controller('Testing', function($scope) {
function testing() {
alert('testing');
}
});
基本HTML(与当前目标-C一起使用):
<!DOCTYPE HTML>
<html>
<body>
<SCRIPT>
function testing() {
alert('testing');
}
</SCRIPT>
</body>
</html>
解决方法:
这是因为您的测试功能不是全局可用的.它仅在您的测试控制器功能中可用.要使其全局可用,您需要将控制器修改为如下所示:
'use strict';
angular.module('testing.controllers', [])
.controller('Testing', function($scope) {
window.testing = function() {
alert('testing');
}
});
不能说我建议你这样做,但很难判断,因为我们不知道你为什么要这样做.
内容总结
以上是互联网集市为您收集整理的从Angularjs App中的iOS Webview调用Javascript函数全部内容,希望文章能够帮你解决从Angularjs App中的iOS Webview调用Javascript函数所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。