假设我的网页上有任意数量的附有事件处理程序的元素,比如说onclick
。在处理程序中,触发卸载事件,例如通过分配window.location
。拦截JavaScript卸载事件
任务:我需要检测一个事件处理程序是否会卸载页面。我怎样才能添加另一个拦截卸载事件并将其存储在变量中而不是触发它的事件处理程序?
更新
下面是一个explenation,由于混淆。我编写了一个使用Selenium 2的Java应用程序来提取有关用户事件的所有信息。除卸载外,这很容易完成。在我终于可以卸载页面之前,我必须等待拉。
因此,用户点击元素,相应的onclick事件处理程序更改'window.location',然后...你想要发生什么? “拦截卸载事件”是什么意思,是否要防止页面卸载?我不明白在这种情况下可以“在变量中存储[d]”。 – nnnnnn
是的,我想阻止该页面卸载。事件对象应该存储在一个变量中。 – Alp
但是,如果您不希望页面实际卸载,您为什么要通过更改'window.location'来导致页面卸载的代码?你明白我为什么困惑吗?你为什么要存储事件对象 - 你打算如何处理它?也许你可以更新你的问题来解释这将如何从用户的角度来看... – nnnnnn