WebDriver click() 与 JavaScript click()。
javascriptweb developmentfront end technologyobject oriented programming更新于 2026/2/10 8:44:17
我们可以使用 webdriver click 和 Javascript click 来点击链接。对于 Selenium webdriver 点击链接,我们可以使用链接文本和部分链接文本定位器。我们可以使用 driver.findElement(By.linkText()) 和 driver.findElement(By.partialLinkText()) 方法进行点击。
html 代码中的链接包含在锚标记中。锚标记内的链接文本作为参数传递给 driver.findElement(By.linkText(<link text>)) 方法。锚标记内的部分匹配链接文本作为参数传递给 driver.findElement(By.partialLinkText(<partial link text>)) 方法。最后,要单击链接,请使用 click 方法。
让我们看看带有锚标记的链接的 html 代码。

示例
代码实现。
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.By;
public class DriverClick{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://www.tutorialspoint.com/about/about_careers.htm");
// 使用链接文本定位器识别链接
driver.findElement(By.linkText("Write for us")).click();
System.out.println("点击后的页面标题:" + driver.getTitle());
}
}
我们还可以使用 Selenium 中的 Javascript Executor 执行单击链接等 Web 操作。我们将使用 executeScript 方法并将 argument index.click() 和要单击的 webelement 作为参数传递给该方法。
示例
使用 Javascript 执行器的代码实现。
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.By;
public class DriverClickJs{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://www.tutorialspoint.com/about/about_careers.htm");
// 识别链接
WebElement l = driver.findElement(By.linkText("Write for us"));
//使用 Javascript Executor 点击链接
JavascriptExecutor j = (JavascriptExecutor) driver;
j.executeScript("arguments[0].click();", l);
System.out.println("点击后的页面标题:" + driver.getTitle());
}
}
输出

相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

