这个问题接受了jQuery的伟大的答案,我想知道,如果有人能够给出一个例子这在Java中吗?
我正在做driver.findElement(By.className("current time")).click();空间问题,我在链接上看到了解释,但是我不确定如何在Java中处理它,并且无权更改类名。
driver.findElement(By.className("current time")).click();
我在firefox inspect id中粘贴的示例示例:下面带有cssSelector的示例不起作用,但是我可能缺少某些内容。
<span> <a class="current time" href="http://someurl/" onclick="s_objectID="http://someur/">url</a> </span>
您可以使用CSS选择器来代替类名。您没有提及“当前时间”类的标记名。我假设它是输入,所以您的CSS选择器的工作是,
WebElement element = driver.findElement(By.cssSelector("input[class='current time']")); element.click();
*根据提供的html *编辑#1 ,
查看评论中的html,看来您有很多选择可以找到webElement。这是您的选择,
WebElement element = driver.findElement(By.cssSelector("a[class='current time']")); element.click();
还是应该也可以
WebElement element = driver.findElement(By.cssSelector("a.current.time")); element.click();
您也可以使用linkText,因为元素是link。在您提供的html中,链接文本为“ url”
WebElement element = driver.findElement(By.linkText("url")); element.click();
您也可以使用 By.partialLinkText("partial link text here");
By.partialLinkText("partial link text here");
您还可以将xpath用作:
WebElement element = driver.findElement(By.xpath("//a[@class='current time']")); element.click();
要么,
WebElement element = driver.findElement(By.xpath("//a[text() = 'url']")); element.click();