关闭浏览器的查找(CTRL + F)

时间:2020-10-29 14:08:25

标签: javascript keyboard-shortcuts keypress ctrl

我正在创建一个脚本来注册用户在我的网站上进行CTRF + F的位置。 为此,我编写了一个代码,该代码每次用户调用浏览器的find时都会显示,然后将其执行操作的页面名称推入数组。我的某些页面实际上是选项卡,这意味着当我更改选项卡时,浏览器的查找不会自行关闭。 因此,我希望有一个脚本可以在我更改选项卡或页面时关闭浏览器,因为即使用户更改选项卡并进行其他研究,浏览器的查找仍无法保持打开状态。现在我有这个:

var ctrlf = []; 
var url = '';
window.addEventListener("keydown", (event) => {
url = url_parse();
  if ((event.ctrlKey && (event.key == "f")) || (event.key == "F3")) {
    ctrlf.push(url_parse());
//url_parse is a function to parse the url of the page into a string (see this as the id of a page / tab)
  }
document.addEventListener("click", (event) => {
  if(url != url_parse()){
     var e = new KeyboardEvent('keypress', { 'key': 'Escape' })
     document.dispatchEvent(e)
  }
});

我的想法是模拟Escape的按键,但这不起作用。

欢迎提出任何改进我的代码的想法,或者提出有关在用户更改选项卡时关闭浏览器查找的新想法(仅当用户更改选项卡时更改URL的哈希值)。

谢谢

1 个答案:

答案 0 :(得分:0)

您可以做类似的事情

document.addEventListener("click", (event) => {
  if(url != url_parse()){
     window.close();
  }

这是根据Mozilla Docs

编辑:从2020年开始,由于安全方面的考虑,大多数现代浏览器不再允许该操作。请访问this link了解更多信息。

相关问题