我正在使用 Richfaces 在 Java EE 中开发一个 Web 应用程序。有一个链接,可以注销用户。当用户离开页面或关闭浏览器时,我应该注销用户,因为我必须知道他何时离开我们的页面。这是一个片段:
function fireEvent(obj,evt){
var fireOnThis = obj;
if( document.createEvent ) {
var evObj = document.createEvent('MouseEvents');
evObj.initEvent( evt, true, false );
fireOnThis.dispatchEvent(evObj);
} else if( document.createEventObject ) {
fireOnThis.fireEvent('on'+evt);
}
}
var popit = true;
window.onbeforeunload = function() {
if(popit == true) {
fireEvent(document.getElementById("logout_form:logout_link"),'click');
}
}
这仅适用于关闭浏览器,而不是导航或刷新。我将 fireEvent(...) 更改为返回“”。一切正常。如果我在 fireEvent(...) 之后输入 return "" 效果很好,只是我不想显示对话框。我怎么能做这个问题?