WKWebview加载SVG显示不全

WKWebview加载SVG显示不全,或者WKWebview加载html显示不全.要注入一段js代码

- (void)configUI{

    CGFloat gap = 16;
//    self.webview = [[WKWebView alloc] initWithFrame:CGRectMake(gap, 10,kUIScreenWidth - gap * 2 , 10)];
    // 解决内存泄露问题
    WKWebViewConfiguration*config = [[WKWebViewConfiguration alloc]init];
    config.selectionGranularity = WKSelectionGranularityCharacter;
    
    // 让网页内容自适应大小
    NSString *jScript = @"var meta = document.createElement('meta'); meta.setAttribute('name', 'viewport'); meta.setAttribute('content', 'width=device-width'); document.getElementsByTagName('head')[0].appendChild(meta);";
    WKUserScript *wkUScript = [[WKUserScript alloc] initWithSource:jScript injectionTime:WKUserScriptInjectionTimeAtDocumentEnd forMainFrameOnly:YES];
    WKUserContentController *wkUController = [[WKUserContentController alloc] init];
    [wkUController addUserScript:wkUScript];
    config.userContentController = wkUController;
    
    // 创建WKWebView
    self.webview = [[WKWebView alloc] initWithFrame:CGRectMake(gap, 10,kUIScreenWidth - gap * 2 , 10) configuration:config];
    [self.contentView addSubview:self.webview];

    self.webview.navigationDelegate = self;
}
- (void)configureCellWithStr:(NSString *)contentstr
{
    //"<head><style>img{width:%f !important;height:auto}</style></head>

    NSString *headerString = @"<header><meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no'><style>img{max-width:100%;}</style><style>video{max-width: 100%; width:auto; height:auto;}</style></header>";
    [self.webview loadHTMLString:[headerString stringByAppendingString:self.htmlStr ? self.htmlStr : @""] baseURL:nil];
//    [self.webview loadHTMLString:self.htmlStr baseURL:nil];
 
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值