捕获离开页面 - jQuery

3

我希望尝试捕捉用户离开的页面。

为了捕捉用户离开页面的事件,我使用以下代码:

$(window).bind('beforeunload', function() {

});

如何确定用户请求浏览器加载的页面?

我能想到的方法只有这样:

$('a')
.click(function(){
    var url = $(this).attr('href');
});

或者

$('form')
.submit(function(){
    var url = $(this).attr('action');
});

任何想法吗?

1
删除了我的回答,因为它基本上陈述了你已经说的内容 :) 就我所看到的,这两个代码片段实际上是你可以做的唯一的事情。(只需删除“var”以使“url”变量全局化) - Pekka
@Sime:感谢分享链接!非常有用,我的建议是将其作为答案 :) - RadiantHex
1个回答

3

出于安全考虑,JavaScript无法访问用户在URL栏中输入的内容。

但如果您的意思是他们通过单击页面上的链接来到达新页面,则可以执行以下操作:

$('a').click(function(){
    var nextPage = $(this).attr('href');
    // Then ajax nextPage to your server
});

如果重定向是在JavaScript的window.location.href设置中,那么可以这样做:

$(window).unload(function(){
    var nextPage = window.location.href;
    // Then ajax nextPage to your server
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接