спасает день.

аюсь сделать простой щелчок на каком-то элементе страницы (например, BTN или ссылку).

Я написал 2 функции для нажатия через xpath и через селекторы CSS.

Обе эти функции прекрасно работают в консоли разработчика браузера, но частично не работают в CEF.

Код отлично кликает по простым ссылкам из Developer Console и из CefКод отлично нажимает на точную кнопку из консоли разработчика, но не нажимает кнопку из CEF. Это просто почему-то игнорировать ...

Как это может быть? Код Js абсолютно такой же! ...

    public void Click(string xpath)
    {
        var js = "document.evaluate(\"" + xpath + "\", document, null, XPathResult.ANY_TYPE, null).iterateNext().click();";

        EvaluateJavascript(js);
    }

    public void ClickCss(string css)
    {
        var js = "document.querySelector('"+ css + "').click()";

        EvaluateJavascript(js);
    }


    public async Task EvaluateJavascript(string script)
    {
        JavascriptResponse javascriptResponse = await Browser.GetMainFrame().EvaluateScriptAsync(script);

        if (!javascriptResponse.Success)
        {
            throw new JavascriptException(javascriptResponse.Message);
        }
    }

подробности:

используемый код клика:

_browser.ClickCss("#upload-container a");

еще раз: тот же самый js-код отлично работает в консоли разработчика браузера, но почему-то не работает в CEF.

Кстати, я тестировал код JS в Chrome. Так что WebEngine одинаков в обеих ситуациях.

PS: Также у меня будет работать симуляция перетаскивания какого-то конкретного файла к какому-то конкретному веб-элементу. Но я не нашел никакой информации об этом ни для Cef, ни для Js, ни для JQuery ... = (

Ответы на вопрос(1)

Ваш ответ на вопрос