在 NSScrollView 中禁用 WKWebView 的滚动

Hex*_*ons 5 macos scroll objective-c nsscrollview wkwebview

我想在 Swift 中禁用 macOS 上 NSScrollView 内的 WKWebView 滚动。

我找到了一种使用 css 在 WKWebView 中禁用滚动的方法,虽然 WKWebView 仍然阻止 NSScrollView 滚动。

有谁知道如何做到这一点?

Ant*_*ony 8

子类化WKWebView并实现以下方法:

- (void)scrollWheel:(NSEvent *)event {
    // pass web view scroll events to the next responder. comment
    // this line out if you just want to disable scrolling 
    // altogether.
    //
    [[self nextResponder] scrollWheel:event];
}
Run Code Online (Sandbox Code Playgroud)

  • 这可能是 macOS 上 WKWebView 唯一可行的解​​决方案 (2认同)