我目前正在尝试使用:
NSString* arg = [NSString stringWithFormat:@"ReadiumSDK.reader.openSpineItemElementCfi(%@,%@,)", val1,val2];
[self executeJavaScript:arg completionHandler:nil];
但这会引发错误。
答案 0 :(得分:0)
我从WkWebView:
始终将参数传递给javascript函数一个问题可能是您的参数需要在单引号内,并且最后还有一个额外的参数:" ReadiumSDK.reader.openSpineItemElementCfi('%@',' ;%@')"
关键是调用该函数的方式与浏览器中的开发人员控制台完全相同:
我在下面的Chrome开发者工具示例中输入:SomeFunction(' stringParameter')
NSString *someParameter = @"stringParameter";
NSString *javascript = [NSString stringWithFormat:@"SomeFunction('%@')", someParameter];
[wkWebView evaluateJavaScript:javascript completionHandler:^(NSString *result, NSError *error) {
if(error != nil) {
NSLog(@"SomeFunction Error: %@",error);
return;
}
NSLog(@" SomeFunction Success");
}];