当用户决定离开页面时,JavaScript会重定向到反馈表单吗?

时间:2011-08-15 17:19:19

标签: javascript javascript-events

我正在研究如何将决定离开页面的访问者重定向到快速反馈表单。离开我的意思是关闭标签 - 如果他们关注网站上的任何链接,无论是内部还是外部,我都不希望触发任何重定向,但是如果他们决定关闭标签,或点击后退按钮等。 - 离开网站,我非常希望将它们重定向到快速反馈表,并对他们不喜欢的内容发表意见。

那我怎么能这样做呢?

非常感谢!

3 个答案:

答案 0 :(得分:3)

你不能简单地劫持用户的浏览器,并在他们试图离开时强迫他们到另一个页面。几年前,浏览者已经为这种意图实施了预防措施。

当用户选择在您的网站上单击后退/前进或在地址栏中键入URL时,您无法将其重定向到其他位置或阻止该操作。但是,如果用户希望留在您的网站上或离开,可以询问用户(通过浏览器中的标准对话框,您可以在某些情况下注入文本语句)。

对您来说,更好的选择是安装类似Google Analytics的内容: http://www.google.com/analytics/

这将使您能够以非常粗糙的细节跟踪访问者活动,以便您可以看到他们离开网站的位置,他们停留的时间以及您可能需要改善网站的位置。这将为您提供更好的反馈,而不会侵入用户的时间或浏览体验。此外,像Analytics这样的程序不需要用户积极参与为您提供反馈(您很快就会发现没有人会反馈)。当有人决定离开您的网站时,他们就会离开。没有任何乞讨,恳求或弹出窗口会让他们留下来。事实上,他们可能只是确保用户永远不会回来。

请从我们这里获取,并使用统计信息跟踪,而不是干扰用户的体验。

答案 1 :(得分:0)

这是一个坏主意,但这就是它的完成方式。但要注意,你将成为所有访问你网站的人的祸害。人们讨厌这些东西。但如果你坚持进入公共场所胡子拉碴,有头颅和体臭,那么请看看:

window.onbeforeunload();

window.location();

答案 2 :(得分:0)

您需要为window.onbeforeunload分配一个功能。

执行您想要的操作实际上非常复杂,因为您必须确保您可以识别用户实际所做的事情来触发事件,这意味着每个人都应该你页面上的链接做了一些事情(而且我不知道那会是什么),这会让你识别它。

您需要做的就是浏览页面上不应该触发表单的所有内容,让所有这些内容做一些事情(也许设置一个全局变量?)然后如果还没有完成,你可以将人们重定向到你的反馈表。

虽然用户会讨厌你...