Javascript 如何在chrome的卸载功能中获得火灾警报
但是JSFIDLE是如何做到的呢 在开发工具中,我可以看到我可以勾选一个框,该框将在EventListener断点-->加载-->卸载上停止执行 但我看不出到底发生了什么。他们是怎么做到的 编辑:代码Javascript 如何在chrome的卸载功能中获得火灾警报,javascript,jquery,cross-browser,Javascript,Jquery,Cross Browser,但是JSFIDLE是如何做到的呢 在开发工具中,我可以看到我可以勾选一个框,该框将在EventListener断点-->加载-->卸载上停止执行 但我看不出到底发生了什么。他们是怎么做到的 编辑:代码 $(window).on('unload', function(){ //delete files $.ajax({ type: "post", url: "delete_files.php",
$(window).on('unload', function(){
//delete files
$.ajax({
type: "post",
url: "delete_files.php",
data: {
test: $("body").data("test_name");
prod: $("body").data("prod_name");
prodAd: $("body").data("prodAd_name");
},
dataType: "html",
success: function(returnedData){
console.log(returnedData);
}
});
});
大约一年前,我曾为此奋斗过一段时间 我最终使用了这个解决方案:
$(window).on('beforeunload', function() {
$.get('http://some-page.php');
});
在我们的例子中,some page.php
是一个清理用户会话的JSP
.在您更改了一些内容之后,您的AJAX调用工作正常。您正在发送的数据是一个对象。您的包含
代码>将给出一个错误。这可能就是它不起作用的原因
$(window).bind('unload', function(){
//delete files
$.ajax({
type: "post",
url: "test.php",
data: {
test: $("body").data("test_name"),
prod: $("body").data("prod_name"),
prodAd: $("body").data("prodAd_name")
},
dataType: "html",
success: function(returnedData){
console.log(returnedData);
}
});
});
这不是警报。您只需在卸载事件中说“返回”您的消息。浏览器本身会生成一个提示。@putvande嗯,我只是用一个警报来调试。这个函数根本不起作用。计划是让它调用ajax来调用php脚本。但是我可以看到,这同样不起作用。您应该能够在beforeunload
事件中调用AJAX请求。Chrome唯一不允许的是警报,其他一切似乎都很好。你的代码看起来像什么?
$(window).bind('unload', function(){
//delete files
$.ajax({
type: "post",
url: "test.php",
data: {
test: $("body").data("test_name"),
prod: $("body").data("prod_name"),
prodAd: $("body").data("prodAd_name")
},
dataType: "html",
success: function(returnedData){
console.log(returnedData);
}
});
});