- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation {
// 1. 获取iframe src,多个尝试
NSString *js = @"document.getElementsByTagName('iframe')[0].src";
//NSString *js = @"var iframe = document.querySelector('iframe');";
//NSString *js = @"var iframes = document.getElementsByTagName('iframe'); var src = iframes[0].src;";
//NSString *js = @"Array.from(document.getElementsByTagName('iframe')).map(frame => frame.src);" ;
[webView evaluateJavaScript:js completionHandler:^(id result, NSError *error) {
NSLog(@"===Error===:%@",error);
if (!error){
NSString *originSrc = result;
NSLog(@"===Result===:%@",originSrc);
// 2. 构造设置src代码
// NSString *js = [NSString stringWithFormat:@"iframes[0].src = \"%@\";", newSrc];
// NSString *modifiedIframeSrc = [iframeSrc stringByReplacingOccurrencesOfString:@"http://***" withString:@"https://***"]; // 替换成你的实际链接
// 3. 执行设置src操作
// [webView evaluateJavaScript:js completionHandler:nil];
}
}];
// 4. WKWebView会重新加载iframe新的页面
}
WKWebview-获取iframe
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 在web开发中,经常会用到iframe,难免会碰到需要在父窗口中使用iframe中的元素、或者在iframe框架中...
- iframe postMessage 传出数据后接收的页面 addEventListener('message',...
- 新接触了一个用iframe的项目,入门的时候子父页面的元素获取和传值搞得我头晕脑胀,浪费了很多时间。在此,总结下i...
- 1.需求让iframe嵌入页面,并且没有滚动条,也就是相当于两个页面拼接在一起 跨域解决,通过框架配置代理 获取i...
- (一)主页面 1.解决跨域通信 2.解决iframe每次url改变都能及时显示不产生缓存导致空白页(请详细查看 f...