如何在iOS Objective-C中禁用WKWebview上的双击和收缩放大/缩小功能?

如何在iOS Objective-C中禁用WKWebview上的双击和收缩放大/缩小功能?,ios,objective-c,swift,uiwebview,wkwebview,Ios,Objective C,Swift,Uiwebview,Wkwebview,我面临在WKWebView上禁用放大/缩小的问题。我有很多解决方案,但并非所有的解决方案在所有情况下都有效 解决方案1: self.webViewer.scrollView.pinchgestureerecognizer.enabled=true/false 问题: 无法停止双击缩放 解决方案2: - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView { return nil; } 问题: 不在iOS 13上

我面临在WKWebView上禁用放大/缩小的问题。我有很多解决方案,但并非所有的解决方案在所有情况下都有效

解决方案1:
self.webViewer.scrollView.pinchgestureerecognizer.enabled=true/false

问题: 无法停止双击缩放

解决方案2:

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
    return nil;
}
问题: 不在iOS 13上工作

解决方案3:通过设置java脚本

NSString *jScript = @"var meta = document.createElement('meta'); meta.setAttribute('name', 'viewport'); meta.setAttribute('content', 'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no'); document.getElementsByTagName('head')[0].appendChild(meta);";
第三种解决方案是最好的比较所有其他的,它也工作在几乎所有情况下良好

但在我的例子中,我有.pdf扩展名url,对于该url,javascript不能正常工作。我无法禁用该url的放大/缩小功能

网址:

当我使用下面的代码评估JavaScript时

   NSString *jScript = @"var meta = document.createElement('meta'); meta.setAttribute('name', 
   'viewport'); meta.setAttribute('content', 'width=device-width, initial-scale=1.0, maximum- 
   scale=1.0, user-scalable=no'); document.getElementsByTagName('head')[0].appendChild(meta);";
  
  [webView evaluateJavaScript:jScript completionHandler:^(NSString *result, NSError *error)
  {
      NSLog(@"Error %@",error);
      NSLog(@"Result %@",result);
  }];
我犯了以下错误

Domain=WKErrorDomain Code=4 "A JavaScript exception occurred" UserInfo={WKJavaScriptExceptionLineNumber=1, WKJavaScriptExceptionMessage=TypeError: undefined is not an object (evaluating 'document.getElementsByTagName('head')[0].appendChild'), WKJavaScriptExceptionColumnNumber=228, WKJavaScriptExceptionSourceURL=http://www.pdf995.com/samples/pdf.pdf, NSLocalizedDescription=A JavaScript exception occurred}
所以我想解决javascript错误

请帮帮我