Я пытаюсь внедрить код JavaScript на веб-сайт и запустить эту функцию:
String js = "var script = document.createElement('script');" +
"script.type = 'text/javascript';" +
"script.text = \"function myFunction() { " +
"return 'test method';" +
"}\";" +
"(document.head || document.body || document.documentElement).appendChild(script);";
chromeBrowser.ExecuteScriptAsync(js);
chromeBrowser.EvaluateScriptAsync("myFunction();");
Это простой код, возвращающий текст.
Когда я пытаюсь ввести его и вызываю myFunction, я получаю следующее сообщение об ошибке:
Uncaught ReferenceError: myFunction is not defined @ about:blank:1:0



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Поскольку вы используете методы Async, может ли быть, что myFunction еще не определен, но скоро будет?
Попробуй это:
chromeBrowser.EvaluateScriptAsync("setTimeout(myFunction, 100);");
не следует ли вам просто добавить определение функции в браузер? я имею в виду
chromeBrowser.ExecuteScriptAsync("function myFunction(){return 'foo';}"); тогда вы сможете потом запустить скрипт.