如果有人离开网页或关闭网页,请保存数据

时间:2018-07-20 19:52:02

标签: javascript html browser dom-events

如果有人试图离开该网站,我正在尝试保存数据。该应用程序需要向用户显示一条消息,指出他将被移离站点,如果他单击离开,则在离开之前将需要保存一个数据。我尝试了本机确认框以及自定义设计的选项。

在定制设计的情况下,我想做这样的事情:

window.onbeforeunload = function(e) {
    $('#modal-popup').show();       }

但这确实不能给我想要的结果。我正在尝试在下面绘制我想做的事情。请帮忙。

关闭标签->显示确认->如果有人接受---> Ajax呼叫--->否则,请保持页面原样。

1 个答案:

答案 0 :(得分:1)

onbeforeunload需要一个字符串作为返回值,不幸的是,当用户单击停留而不是休假https://developer.mozilla.org/en-US/docs/Web/Events/beforeunload时,将执行该代码。看到这个:

window.onbeforeunload = function() {
  fetch('https://jsonplaceholder.typicode.com/posts/1')
    .then(response => response.json())
    .then(json => console.log(json));
  return "";
};

运行代码并尝试关闭此标签,然后单击“停留”。