2

我正在使用 Flutter webview 加载网站。但我想在加载时替换 HTML 元素。例如:

<span class="name">Replace text</span>

怎么做?

4

1 回答 1

5

所以,这取决于你使用什么库来加载你的 webview。

webview_flutter_plus我使用(https://pub.dev/packages/webview_flutter_plus )取得了一些成功。

有了这个,你只需要等待你的 html 加载并注入一些 javascript 来修改你想要的任何 html。

像这样:

Widget build(BuildContext context) {
    return WebViewPlus(
        initialUrl: myUrl,
        javascriptMode: JavascriptMode.unrestricted,
        onWebViewCreated: (WebViewPlusController webViewController) {
            _webViewController = webViewController;
        },
        onPageFinished: (String url) {
            _webViewController.evaluateJavascript('document.querySelector(".name").innerHTML = "new text";');
        }
   }
}
于 2020-09-22T00:40:52.657 回答