Swift 获取 HTML 字符串高度 - 使用 WKWebView 和 JavaScript
要获取 HTML 字符串的高度,您可以使用 WebKit 框架中的 WKWebView 类来加载 HTML 字符串,并通过调用 webView 的 scrollView 的 contentSize 属性来获取高度。以下是一个示例代码:\n\nswift\nimport UIKit\nimport WebKit\n\nclass ViewController: UIViewController, WKUIDelegate {\n var webView: WKWebView!\n \n override func viewDidLoad() {\n super.viewDidLoad()\n \n let htmlString = "<html><head><style>body { font-size: 20px; }</style></head><body>Hello, World!</body></html>"\n \n let webViewConfiguration = WKWebViewConfiguration()\n webView = WKWebView(frame: .zero, configuration: webViewConfiguration)\n webView.uiDelegate = self\n view.addSubview(webView)\n \n webView.loadHTMLString(htmlString, baseURL: nil)\n }\n \n override func viewDidLayoutSubviews() {\n super.viewDidLayoutSubviews()\n \n webView.frame = view.bounds\n }\n \n func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {\n webView.evaluateJavaScript("document.documentElement.scrollHeight", completionHandler: { (height, error) in\n if let height = height as? CGFloat {\n print("HTML height: \(height)")\n }\n })\n }\n}\n\n\n在上面的示例中,我们首先创建了一个 WKWebView 实例,并将其添加到视图中。然后,我们使用 loadHTMLString 方法加载 HTML 字符串。在 webView 的加载完成回调方法中,我们使用 evaluateJavaScript 方法执行 JavaScript 代码来获取 HTML 的高度。请注意,这个高度是以点(point)为单位的,可以根据需要进行转换。
原文地址: https://www.cveoy.top/t/topic/pPMI 著作权归作者所有。请勿转载和采集!