代码之家  ›  专栏  ›  技术社区  ›  YosiFZ

将javascript注入网站

  •  1
  • YosiFZ  · 技术社区  · 7 年前

    我尝试将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
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Motti    7 年前

    因为你在使用 Async 方法可能是 myFunction 尚未定义,但很快就会定义?

    试试这个:

    chromeBrowser.EvaluateScriptAsync("setTimeout(myFunction, 100);");