将鼠标悬停在使用WatiN的元素上

问题描述

| 我致力于使用WatiN和MBUnit开发的一套自动化测试。我听说可以将WatiN悬停在某个元素上,但是我似乎无法使用我过去使用的方法来使其工作。还有另一种我不知道的方法吗?我尝试仅使用FireEvent \'onmouseover \',并使用FireEvent再单击链接。
myDiv.HoverLink.FireEvent(\"onmouseover\");
myDiv.HoverLink.Click();
有什么建议么?提前致谢!     

解决方法

        尝试对要悬停的对象使用“ 1”方法。 这是一个例子:
hoverLink.MouseEnter();
    ,        
    /// <summary>
    /// Mouse Over on given <see cref=\"Element\"/>
    /// </summary>
    /// <param name=\"element\">element</param>
    /// <returns>Nothing</returns>
    public static void MouseOver(this Element element)
    {
        var jref = element.GetJavascriptElementReference();
        var dom = element.DomContainer;

        var evt = new JSEventCreator(jref,null);
        var evtProp = new NameValueCollection();
        evtProp.Add(\"windowObject\",\"window\");

        var scriptCode = evt.CreateMouseEventCommand(\"mouseover\",evtProp);
        Logger.LogDebug(scriptCode);
        scriptCode = scriptCode.ToString() + jref + \".dispatchEvent(event);\";

        string result = dom.Eval(scriptCode);
        Logger.LogAction(result);
        dom.WaitForComplete();
        Thread.Sleep(TimeSpan.FromSeconds(2));
    }
这就是我所做的,并且在IE 11和FF上均可使用。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...