Собственно, нужно в onbeforeunload знать, закрывается окно по нажатию на X, или другим способом,
В эксплорере, грубо говоря, такой способ работает:
Only put body onbeforeunload="HandleOnClose()"
function HandleOnClose()
{
if (event.clientY < 0)
{
event.returnValue ="mensage";
}
}
event.clientY в firefox по другому работает...
может, какие-то переменные окружения могут это выдать косвенно?