iOS WKWebView 中注入JS文件

我们创建WKWebView时必须创建WKWebViewConfiguration管理器
我们可以通过他来进行js文件的注入添加,这样当WKWebView加载页面时不需要再网络加载,直接取本地文件

   WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init];
   /// 获取本地JS文件路径
    NSString *jquery = [[NSBundle mainBundle] pathForResource:@"jquery-1.8.3" ofType:@"js"];
/// 转换为NSData数据
    NSData *jqueryData=[NSData dataWithContentsOfFile:jquery];
//转换成NSData字符串
NSString *jqueryString =  [[NSString alloc]initWithData:jqueryData encoding:NSUTF8StringEncoding];
 /// 创建WKUserScript
    WKUserScript *jqueryScript = [[WKUserScript alloc]initWithSource:jqueryString injectionTime:WKUserScriptInjectionTimeAtDocumentStart forMainFrameOnly:YES];
   /// 注入到configuration配置内
   [config.userContentController addUserScript:jqueryScript];

//同样的方法可以加载css文件,但是css注入需要转换什么格式,还没研究明白,有搞清楚的可以私信留言,一起研究

你可能感兴趣的:(iOS WKWebView 中注入JS文件)