iOS WKWebView 按钮点击执行JS alert()没反应

最近帮朋友写个小工具,遇到这个问题,也查了很多资料,有些类似的问题是实现这个协议WKUIDelegate的几个方法就可以解决,相关资料很多,就不重复了,只写一个特殊的情况,希望对遇到类似问题的朋友有用。这种情况是因为加载的web页面的适配问题造成的,导致按钮无法触发点击事件。这种情况其中一种原因是因为wkwebview加载页面后自动进行了自适应缩放,所以在wkwebview里注入一段js代码禁止webview缩放页面即可。

加上下面这段代码问题就解决了。

- (void)webView:(WKWebView*)webView didFinishNavigation:(null_unspecifiedWKNavigation*)navigation

{

    // 禁止放大缩小

    NSString *injectionJSString = @"var script = document.createElement('meta');"

    "script.name = 'viewport';"

    "script.content=\"width=device-width, initial-scale=1.0,maximum-scale=1.0, minimum-scale=1.0, user-scalable=no\";"

    "document.getElementsByTagName('head')[0].appendChild(script);";

    [webViewevaluateJavaScript:injectionJSStringcompletionHandler:nil];

}

你可能感兴趣的:(iOS WKWebView 按钮点击执行JS alert()没反应)