我在Linux下使用Selenium 2(Web Driver)和FireFoxDriver。
我无法使用坐标在WebElement上执行右键单击或其他操作。我也无法移动鼠标指针。
我试图使用“Actions”对象:
Actions actions = new Actions(ffDriver);
WebElement we = ffDriver.findElement(By.linkText("WhatEver"))
actions.contextClick(we).build().perform();
我也试过使用“鼠标”对象:
Mouse mouse = ((HasInputDevices)ffDriver).getMouse();
mouse.contextClick(we.getCoordinates());
这些代码不会失败,但它们不会做任何事情。
但是,如果我在上面的两个示例中执行常规点击,它会按预期工作。
有人知道这有什么问题吗?
谢谢。
答案 0 :(得分:2)
最后我理解了这个问题。
在Selenium 2上,web元素上的“contextClick”函数不会模拟右键单击该元素,它只是激活放置在元素的HTML代码中的“onContextMenu()”事件。
因此,如果您想访问这种上下文菜单,应该在HTML代码上处理。