Различное поведение прокрутки в Safari и WKWebview - PullRequest
0 голосов
/ 20 июня 2019

почему горизонтальная прокрутка отличается, когда я открываю эту ссылку в wkwebview и safari? Это мой код.

func wkwebViewLoad() {
        guard let urlString = NSURL(string: "https://docs.dhtmlx.com/gantt/samples/07_grid/10_scrollable_grid.html") else {return}
        let url =  NSURLRequest(url: urlString as URL)
        // set configuration
        var config: WKWebViewConfiguration?
        let wkContentController = WKUserContentController()
        config = WKWebViewConfiguration()
        config?.userContentController = wkContentController

        // set wkwebview attributes
        self.wkWebView = WKWebView(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: self.view.frame.height), configuration: config!)
        self.view.addSubview(wkWebView!)
        self.wkWebView?.navigationDelegate = self
        self.wkWebView!.load(url as URLRequest)

        // add delegate here
        self.wkWebView?.scrollView.delegate = self
        self.wkWebView?.scrollView.minimumZoomScale = 1.0
        self.wkWebView?.scrollView.maximumZoomScale = 4.0
    }

В сафари обе горизонтальные прокрутки работают нормально. Но в WKWebView горизонтальная прокрутка левой сетки работает только при панорамировании элемента полосы прокрутки. Когда я перемещал левую сетку, вместо нее двигалась правая горизонтальная полоса прокрутки.

Я думаю, что WKWebView должен вести себя так же, как сафари, это из-за проблемы с JavaScript?

Любая помощь приветствуется, спасибо заранее.

1 Ответ

0 голосов
/ 20 июня 2019

Я также использую chartIQ в проекте. У меня не возникало таких проблем, как горизонтальная прокрутка в диаграммах. Это может быть проблемой с сайта, так как они не обрабатывают ответ от разных СМИ.

Если вы найдете какое-либо решение для сайта, вы можете добавить свой JavaScript в WKWebView, проверьте эту ссылку

...