网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

c#webkit模拟点击

前些天想用PHP socket做一个网站的自动登录和数据采集,却发现这个网站用HTML5编写,数据存储用localstorage,PHP暂时找不到localstorage的数据提交方法,想用C#实现,却发现C#自带的webBrowser是调用IE的核心,IE是不支持localstorage的。只有找C#的第三方浏览器插件,刚开始用GeckoFx,发现GeckoFx的文档太少了,又没更新,最后找到webKit,文档一样是少得可怜,相关实例在网上只找到一二个有参考价值的。下面是我要用C# + webkit实现的功能。

创新互联网站建设服务商,为中小企业提供成都网站制作、成都做网站服务,网站设计,网站托管等一站式综合服务型公司,专业打造企业形象网站,让您在众多竞争对手中脱颖而出创新互联。

c#调用webKitBrowser浏览器打开网址,加载完成后,模拟点击网址页面上的一个

事件。

以下代码在WebKit.NET-0.5,VS2010环境下测试成功。

c#

webKitBrowser1.StringByEvaluatingJavaScriptFromString("document.getElementById('youidname').click()");

这种方法实现模拟点击有问题,只能实现input的点击,想模拟div或a标签点击会提示"对 COM 组件的调用返回了错误 HRESULT E_FAIL。"

用下面的方法没有问题

webKitBrowser1.StringByEvaluatingJavaScriptFromString("var _elm = document.getElementById('youidname');var _evt = document.createEvent('MouseEvents');_evt.initEvent('click', true, true);_elm.dispatchEvent(_evt);");

另外C#运行页面的JS方法可以这样

 webKitBrowser1.Document.InvokeScriptMethod("add_div");  //add_div是JS的方法名称


本文题目:c#webkit模拟点击
网页网址:http://bjjierui.cn/article/gpgioh.html