有没有办法检测 WebBrowser 中的所有可能的用户活动,并返回自定义 事件 ?例如:用户点击“搜索”按钮,返回“SearchButtonClicked”自定义 事件 。
就像记录用户所做的所有活动,存储在序列中,并且可以在他想要的时候自动化。
编辑:我不拥有该网页。我正在尝试创建一个应用程序来自动搜索谷歌上的一些搜索。
答案 0 :(得分:3)
1)在所有页面上包含一个JS文件,以执行以下操作:
$(document).ready(function () {
var trackUserActivity = function(elementId, elementText) {
$.ajax({
type: "POST",
url: "url/TrackUserActivity",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: JSON.stringify({
ElementId: elementId,
ElementText: elementText
}),
success: function (result) {
// do something if call was successful
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
// do something if an error occurred
}
});
};
$("a, input[type=\"button\"], input[type=\"submit\"]").click(function() {
trackUserActivity($(this).attr("id"), $(this).text());
});
});
2)创建一个可以通过AJAX调用的Web方法来跟踪用户活动:
[WebMethod]
public static void TrackUserActivity(string ElementId, string ElementText)
{
// Implement your user activity tracking logic, like saving it in a database
}
重要的重要编辑:好吧,看看你的OP编辑之后,你没有拥有该应用程序,这将无法正常工作。我在这里为那些可能有类似需求的人保留答案,所以请不要基于它而不是专门针对OP进行投票。
答案 1 :(得分:0)
查看 HtmlElementEventHandler 的类型: http://msdn.microsoft.com/en-us/library/system.windows.forms.htmlelement_events%28v=vs.110%29.aspx
使用此事件处理程序来了解发生的事件。在发生事件时,获取元素详细信息,标记详细信息并使用事件类型登录文件。
查看使用 HtmlElementEventHandler 时所需的向下转换的使用情况 http://www.hanselman.com/blog/BackToBasicsThisIsNotTheObjectYoureLookingwaitOhItIsTheObject.aspx
如果要重播操作,可以在提取标记名称和值字段后按顺序运行记录的事件。