SPAN标签:
<SPAN title=用户信息 class="tabSpan" id=shop_tabsTAB_content4 style="BORDER-LEFT-WIDTH: 1px; HEIGHT: 23px; BORDER-RIGHT-WIDTH: 1px; BORDER-BOTTOM-WIDTH: 1px; PADDING-LEFT: 6px; PADDING-RIGHT: 6px; BORDER-TOP-WIDTH: 1px; MARGIN-RIGHT: 2px" name="shop_tabstabs4" jQuery227="2564"><SPAN class="selected_left"></SPAN><SPAN class="selected_right"></SPAN><SPAN style="OVERFLOW: hidden; DISPLAY: block">用户信息</SPAN><SPAN class="tabs-closePic" style="DISPLAY: none" jQuery227="2568"></SPAN></SPAN>

用自编函数找到上面的网页元素,并发送点击代码:

bb = FindHtmlElement("用户信息", WebBrowserEx1.Document, "SPAN", "title", True)         
bb.InvokeMember("click") '点击无效
bb.RaiseEvent("onclick") '点击无效
bb.InvokeMember("MouseDown") '点击无效
bb.InvokeMember("onMouseDown") '点击无效,InvokeMember不检查调用成员(onMouseDown)是否有效
bb.RaiseEvent("onMouseDown") '点击生效,参数不分大小写。RaiseEvent会检查,错误则报:值不在预期的范围内
bb.RaiseEvent("onMouseUp") '该行代码可以不需要

以前一直走入了一个误区,以为点击就是一定是click动作,网上找的也都是如何如何clcik span标签没响应,殊不知,只需要简单的一个RaiseEvent("onMouseDown")就解决问题。

注:
RaiseEvent的参数不对,例如你做引用:RaiseEvent("click"),则报错如下:
************** 异常文本 **************
System.ArgumentException: 值不在预期的范围内。
   在 System.Windows.Forms.UnsafeNativeMethods.IHTMLElement3.FireEvent(String bstrEventName, IntPtr pvarEventObject)
   在 System.Windows.Forms.HtmlElement.RaiseEvent(String eventName)
————————————————
版权声明:本文为CSDN博主「zslefour」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zslefour/article/details/106139265
posted on 2020-05-15 12:35  zs李四  阅读(449)  评论(0编辑  收藏  举报