2011-02-07 43 views
3

我想尝试捕获用户要离开的页面。捕获离开页面 - jQuery

我使用,以捕捉离开页面的用户的事件中:

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

}); 

我如何找出哪些页面的用户请求浏览器加载?

所有我能想到的是这样的:

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

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

任何想法?

+1

删除了我的答案,因为它几乎说你已经说:)至于我可以看到,这两个代码片段实际上是你唯一可以做的事情。 (只需放下`var`使全局变量`url`变为 – 2011-02-07 00:09:49

回答

3

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

但是,如果你的意思是,他们点击你的页面上的链接来获得新的页面,那么你可以这样做:

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

或者如果重定向在了window.location的JavaScript设置.href,那么这样做:

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