Adding in cross-browser onbeforeunload support. Fixes #4106.

This commit is contained in:
John Resig 2009-12-06 16:55:08 -08:00
parent 1fe9ff5482
commit aea5b09195

View file

@ -327,6 +327,8 @@ jQuery.event = {
}
}
return event.result;
},
props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
@ -432,6 +434,21 @@ jQuery.event = {
}
},
special: {}
},
beforeunload: {
setup: function( data, namespaces, fn ) {
// We only want to do this special case on windows
if ( this.setInterval ) {
this.onbeforeunload = fn;
}
return false;
},
teardown: function( namespaces, fn ) {
if ( this.onbeforeunload === fn ) {
this.onbeforeunload = null;
}
}
}
}
};