【发布时间】:2010-05-14 16:41:23
【问题描述】:
任何人都知道如何做到这一点:
当某些用户通过关闭浏览器或选项卡或转到其他站点离开我的站点时,我想做一个操作(显示警报)并且如果用户单击指向我自己站点的其他页面的链接或按钮,我想做另一个动作...
如果我使用卸载事件,我无法区分用户的这两种行为......请帮助,因为我真的需要它。
感谢您的帮助。
【问题讨论】:
标签: javascript jquery events webpage
任何人都知道如何做到这一点:
当某些用户通过关闭浏览器或选项卡或转到其他站点离开我的站点时,我想做一个操作(显示警报)并且如果用户单击指向我自己站点的其他页面的链接或按钮,我想做另一个动作...
如果我使用卸载事件,我无法区分用户的这两种行为......请帮助,因为我真的需要它。
感谢您的帮助。
【问题讨论】:
标签: javascript jquery events webpage
在所有内部链接上设置标志:
var isInternal = false;
$('a[href^="http://mysite.com/"]').live('click', function() {
isInternal = true;
});
// then in your onunload handler:
if (isInternal) {
// perform action 1
} else {
// perform action 2
}
更好的链接选择器可能是这样的:
$('a:not([href*="//"])')
但前提是您从不在自己的网站中使用绝对链接。
【讨论】:
<a href="contact.php">Contact Us</a> 会这样吗?...这仍然是内部的吗?