检测用户何时保存网页的Javascript?

检测用户何时保存网页的Javascript?,javascript,jquery,Javascript,Jquery,javascript能检测到用户何时将网页保存到本地磁盘吗?或者在其他一些客户端脚本中是否有类似的功能?您可以查看要点击的组合ctrl+s的关键命令。但是,如果用户选择通过菜单保存,则无法捕获该信息。JavaScript无法做到这一点,任何其他客户端语言也无法做到。事实上,也没有服务器端语言可以做到这一点。正如其他人所说,你可以观察键盘组合,但(目前)没有办法检测到。这是不可能的——也许一些浏览器扩展可以做到这一点,但甚至期望随机用户为此安装键盘也是非常不现实的 但您可以尝试其他一些方法: 右

javascript能检测到用户何时将网页保存到本地磁盘吗?或者在其他一些客户端脚本中是否有类似的功能?

您可以查看要点击的组合
ctrl+s
的关键命令。但是,如果用户选择通过菜单保存,则无法捕获该信息。

JavaScript无法做到这一点,任何其他客户端语言也无法做到。事实上,也没有服务器端语言可以做到这一点。正如其他人所说,你可以观察键盘组合,但(目前)没有办法检测到。这是不可能的——也许一些浏览器扩展可以做到这一点,但甚至期望随机用户为此安装键盘也是非常不现实的

但您可以尝试其他一些方法:

  • 右键单击自定义功能-启用保存自定义保存页面(登录到后端时)
  • 捕获CTRL+s(如Juan Mendes所述)
  • 在页面上进行某种跟踪,这种跟踪仅在页面未通过您的域访问时触发(例如,仅在特殊条件下请求的服务器上的图像)
  • 提供PDF文档以保存和测量其请求(通过后端方法)

所以-很快-没有100%的解决方案…

正如其他人已经说明的那样;通过CTRL+S,但不通过菜单命令

下面是一些jQuery,它演示了击键的捕获:

$(document).keydown(function(e) {
    if (e.key === "s" && e.ctrlKey) {
        alert("user saved page");
    }
});

您所能做的最好的操作可能是trap
CTRL-s
。你为什么要这样做?我看不出有什么理由,为什么有人想这样做…?人们仍然保存网页吗?下面是一个用例示例:我正在使用js注释本地html文件,我需要保存文件以保存注释。如果文件未保存,我想在关闭页面之前发出警告。