WKWebView:elementFromPoint evaluateJavaScript 不工作

问题描述 投票:0回答:0

我正在尝试模拟 WKWebView 上特定点的点击,发现 evaluateJavaScript 的 elementAtPoint 适合我的需要。然而,它在我的项目中无法正常运行——除了打印诸如 nil 之类的错误消息之外什么都不做,这不是一个元素,所以我尝试在各种网站的测试项目中运行它,但它也失败了。

我正在使用以下代码(用户使用按钮激活运行操作):

import UIKit
import WebKit

class ViewController: UIViewController, WKNavigationDelegate {

    @IBOutlet weak var webView: WKWebView!
    
    @IBAction func run(_ sender: Any) {
        DispatchQueue.main.async { [self] in
            webView.evaluateJavaScript("document.elementFromPoint(219, 23).click();", completionHandler: { [self] (element, error) in
                if error != nil {
                    print(error)
                } else {
                }
            })
        }
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        webView.navigationDelegate = self
        webView.scrollView.contentInsetAdjustmentBehavior = .never
        webView.load(URLRequest(url: URL(string: "https://theage.com.au")!))
        
    }
}

有人能在这里发现问题吗?我是否错过了财产变更或其他什么?

我还在此处链接了测试项目 (https://github.com/TheIntelCorei9/DOMTest),因此您可以更深入地了解问题。

谢谢!

javascript swift wkwebview document.evaluate
© www.soinside.com 2019 - 2024. All rights reserved.