Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法用javascript捕获网页搜索词(CTRL+;F)?_Javascript - Fatal编程技术网

有没有办法用javascript捕获网页搜索词(CTRL+;F)?

有没有办法用javascript捕获网页搜索词(CTRL+;F)?,javascript,Javascript,我试图捕捉人们在我的网站上搜索的术语(在CTRL+F之后)。有没有办法获取javascript中实际搜索的内容?或者我的选项是重定向CTRL+F以聚焦/使用自定义输入?从 因此,基本上您可以检测用户是否单击Ctrl+F,然后继续检测 搜索词 window.addEventListener("keydown",function (e) { # maybe you can add more detect for mac (Command + F) if (e.keyCode ===

我试图捕捉人们在我的网站上搜索的术语(在CTRL+F之后)。有没有办法获取javascript中实际搜索的内容?或者我的选项是重定向CTRL+F以聚焦/使用自定义输入?

因此,基本上您可以检测用户是否单击
Ctrl+F
,然后继续检测 搜索词

window.addEventListener("keydown",function (e) {
    # maybe you can add more detect for mac (Command + F)
    if (e.keyCode === 114 || (e.ctrlKey && e.keyCode === 70)) { 
        # now detect all the key code here until "Enter"
        # then you have the search term
    }
})

没有浏览器API可以让您知道用户是否在页面上进行“查找”。当用户进行选择时,最接近的可能是要检测的内容,然而,浏览器不一定选择或聚焦他们发现的内容,他们只会高亮显示它并将页面滚动到元素

通常不赞成尝试拦截内置浏览器功能。但是,听起来好像你想为网站搜索添加热键。您可以使用vanilla Javascript在文档上侦听键盘输入,或者,如果您想添加多个热键,可以使用许多热键库中的一个。在这两种情况下,当按下热键时,只需聚焦搜索输入

window.addEventListener('keydown', function(e) {
  // check if ctrl (or cmd on osx) + shift + F is pressed
  if ((e.ctrlKey || e.metaKey) && e.shiftKey && e.keyCode === 70) {
    // TODO: change the ID on your search box
    document.getElementById('my-search-box').focus()
  }
})

我不这么认为,这是纯粹的客户端。