gpt4 book ai didi

javascript - 为什么以下 Objective-C 代码在调用方法 stringByEvaluatingJavaScriptFromString 时停止?

转载 作者:行者123 更新时间:2023-11-29 13:23:06 25 4
gpt4 key购买 nike

我在我的 iPhone 应用程序中使用以下 Objective-C 代码:

NSLog(@"Before JS string definition");
NSString* jsString = [NSString stringWithFormat:@"alert('ok');"];
NSLog(@"Before JS call");
@try {
[self.viewController.webView stringByEvaluatingJavaScriptFromString:jsString];
}
@catch (id theException) {
NSLog(@"%@", theException);
}
NSLog(@"JS call string was: %@", jsString);

当我运行它时,我会进入日志:

2012-12-13 16:10:34.743 MyApp.com[2328:907] Before JS string definition
2012-12-13 16:10:34.744 MyApp.com[2328:907] Before JS call

因此,最后一个 NSLog 调用不会被执行。显然,对 stringByEvaluatingJavaScriptFromString 的调用以某种方式卡在那里。日志中没有错误消息。没有异常(exception)。什么都没有。

这是怎么回事?我该如何调试?

最佳答案

我希望 alert() 是一个同步调用,直到用户关闭消息框后才会返回。直到 JavaScript 完成后,评估 JavaScript 的方法才会返回。

关于javascript - 为什么以下 Objective-C 代码在调用方法 stringByEvaluatingJavaScriptFromString 时停止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13862837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com