WinForm窗体程序中使用CefSharp获取加载后的资源、截取request参数、拦截response数据、注入jquery文件和js代码(4)-注入jquery文件和js代码

2020-12-30 07:28

阅读:1087

标签:click   winform   nts   nload   color   wait   var   private   frame   

源码地址:源代码csdn  或者底部qq问我要

六、注入jquery文件和js代码

在界面button按钮点击事件中

private void button1_Click(object sender, EventArgs e)
        {
            //注入本机bin\x86\debug下的文件
            browser.ExecuteScriptAsync(File.ReadAllText(@"JavaScript2.js"));
            //也可以注入网络文件

            // 调用网页上已有js方法,等待js 方法执行完后,获取返回值
            Task t = browser.GetBrowser().MainFrame.EvaluateScriptAsync("testGetData()");
            t.Wait();
            // t.Result 是 CefSharp.JavascriptResponse 对象
            // t.Result.Result 是一个 object 对象
            if (t.Result.Result != null)
            {
                MessageBox.Show(t.Result.Result.ToString());
            }

            //注入js代码。当然也可以是jquery代码。如果页面没有jq库,要先注入jq库
            //下面演示给 当前地址包含login的, 界面上div class=develop 的第一个input赋值aaaa
            var curUrl = browser.Address.ToLower();
            if (curUrl.Contains("login".ToLower()))
            {
                string script = "";
                script += "(function btn() {";
                script += " var obj = document.getElementsByClassName(‘develop‘);";
                script += " if (obj.length > 0)";
                script += " {";
                script += "  obj[0].getElementsByTagName(‘input‘)[0].focus();";
                script += "  obj[0].getElementsByTagName(‘input‘)[0].value =‘aaaa‘;";
                script += " }";
                script += " })()";
                //注入执行js
                browser.ExecuteScriptAsync(script);
            }

        }

 

WinForm窗体程序中使用CefSharp获取加载后的资源、截取request参数、拦截response数据、注入jquery文件和js代码(4)-注入jquery文件和js代码

标签:click   winform   nts   nload   color   wait   var   private   frame   

原文地址:https://www.cnblogs.com/heifengwll/p/13277258.html


评论


亲,登录后才可以留言!