• geckofx执行js转载


    通过GeckoFX如何执行JavaScript命令 +

     

    c# gecko geckofx
    我尝试进行类似警报(通过GeckoFX和C# 但我可以得分。 我尽量不出现与导航和的ExecuteCommand 我的代码

     int i=0; 
     GeckoWebBrowser webBrowser
     webBrowser.Navigate("alert('"+i.ToString()+"');");
     webBrowser.ExecuteCommand("alert('" + i.ToString() + "');");
    

    任何人都可以 +
    本文地址 :CodeGo.net/596638/ 
    ------------------------------------------------------------------------------------------------------------------------- 
    1. 你AutoJSContext率符文用javascript geckofx。 喜欢:

    GeckoWebBrowser browser = ....;
    using (AutoJSContext context = new AutoJSContext(browser.JSContext))
    {        
     string result;
     context.EvaluateScript("3 + 2;", out result)
    }
    

    见EvaluateScript单元测试并举例。 如果一个超级老版本的nettygeckofx的需要得到更高版本-geckofx +
    本文标题 :通过GeckoFX如何执行JavaScript命令 +

     

    GeckoFx (5)调用js

     分类:
     
    GeckoFx (5)调用js


    定义:
    browser:Gecko.GeckoWebBrowser 控件;
    txtJsFun: textbox 控件;


    使用 browser.Navigate("JavaScript:void(mytestfun())"); 调用页面中的js方法,其中 mytestfun() 是待调用的方法名。

    =========== 实例 =================
    向任意打开的页面中注入一段 js,然后调用 js 中的方法。
    ==================================

    [csharp] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. 注册事件:  
    2. browser.Load += browser_Load;  
    3.   
    4. 注入js:  
    5. private bool _load = false;  
    6. void browser_Load(object sender, DomEventArgs e)  
    7. {  
    8.     if (!_load)  
    9.     {  
    10.         InjectJs(browser.Document);  
    11.     }  
    12.     if (!_load) _load = true;  
    13. }  
    14. /// <summary>  
    15. /// 注入脚本  
    16. /// </summary>  
    17. public void InjectJs(GeckoDomDocument doc)  
    18. {  
    19.     var js = doc.CreateHtmlElement("script");  
    20.     js.InnerHtml = "//alert(1);";  
    21.     js.InnerHtml = @"  
    22. function mytestfun(d){  
    23. alert(d||'参数值为空');  
    24. }  
    25. ";  
    26.     browser.Document.Head.AppendChild(js);  
    27.     //browser.Document.Body.AppendChild(js);  
    28. }  
    29.   
    30. 调用js方法:  
    31. private void btnJsInvoke_Click(object sender, EventArgs e)  
    32. {  
    33.     var js ="mytestfun(1)";  
    34.     browser.Navigate(string.Format("javascript:void({0})",js));  
    35. }  
    36.  

      winform版Geckofx(Gecko)如何执行js

      标签: winformfirefoxc#GeckoGeckofx
       

      目录(?)[+]

       

      Geckofx 是Firefox开源的版本,下面我讲的是C#的winform版如何执行jQuery或者js!

      在网上找了很多资料和博客,写的都不怎么对,后来找到官方开源的文档,终于有些了解。

      所以,我建议大家如果是使用一些开源的软件,一定要先看官方的文档,不然真的很浪费时间。

      1 jquery的使用可以到官方论坛查看:

      https://bitbucket.org/geckofx/geckofx-22.0/src/43eb4cb291167a3c21aa0ef63605b18a6862f3f4/GeckofxUnitTests/GeckoWebBrowserTests.cs?at=default&fileviewer=file-view-default#cl-244

      主要使用方式如下:

      var executor = new Gecko.JQuery.JQueryExecutor(browser.Window);  //先获取到jquery对象


      executor.ExecuteJQuery("$('#a')");    //然后执行jquery的代码

      2 原生态js使用

      using (AutoJSContext context = new AutoJSContext(browser.Window.JSContext))
      {
      string result;
      context.EvaluateScript("3 + 2;", out result)
      context.EvaluateScript("'hello' + ' ' + 'world';", out result)
      }

      或者:

      var twoID = browser.Document.GetHtmlElementById("two")

      更多方法还是去上面的官方文档查看,肯定能得到你想要的结果,献给用C#浏览器做一些事情的所有开发者,不用找的那么麻烦。

  • 相关阅读:
    Iterator与 Enumeration
    多态性理解
    django---路由层
    django常用模块汇总
    django初识
    python常见模块
    python PEP8规范
    logging模块
    mysql一些了解的名词
    python 链接 mysql数据库
  • 原文地址:https://www.cnblogs.com/browser/p/6445856.html
Copyright © 2020-2023  润新知