电子:防止中间点击

时间:2017-06-15 22:31:25

标签: javascript electron

在Electron中,可以使用以下内容在Web浏览器中打开链接,而不是使用left click在Electron中打开链接:

const {shell} = require('electron')
function openUrl(e) {
    var e = window.e || e;
    if (e.target.localName == 'a') {
        e.preventDefault();
        shell.openExternal(e.target.href);
    }
}
window.addEventListener('click', openUrl, false);

但是,click不适用于middle mouse按钮。 mousedownmouseup在新的Electron窗口和Web浏览器中打开链接(可能是因为它在创建新的Electron窗口后触发)。

如何停止在Electron中使用middle click打开新电子窗口的链接?

1 个答案:

答案 0 :(得分:3)

您必须使用Actions action = new Actions(driver); action.moveToElement(driver.findElement(By.xpath("//*[@id='container']/div/header/div[2]/div/ul/li[1]/a/span[text()='Electronics']"))).build().perform(); https://developer.mozilla.org/en-US/docs/Web/Events/auxclick)来处理所有非左键点击,并且是通过鼠标中键创建电子窗口的关键事件。

//WebElement mobile = (new WebDriverWait(driver,2)).until(ExpectedConditions.presenceOfElementLocated(By.xpath("//*[@id='container']/div/header/div[2]/div/ul/li[1]/ul/li/ul/li[1]/ul/li[1]/a/span[1][text]()='Mobiles')")));