В настоящее время я создаю браузерную игру с использованием ASPX, CSS и AJAX.Мне нужно знать, когда пользователь закрывает браузер или выходит из веб-сайта, например, в следующих случаях:
, если игрок открывает игровую комнату и затем закрывает браузер или выходит извеб-сайт, эта комната должна быть немедленно удалена.
2 игрока играют в комнате, и один из них уходит, и игра заканчивается, а тот, кто остаётся, становится победителем.В этом случае я могу использовать таймер обратного отсчета ходов игроков, и когда таймер обратного отсчета достигает 0 - другой игрок выигрывает, но я предпочитаю, чтобы сообщение появилось, как только игрок покинул комнату, его быстрее, и когдаобратный отсчет достигает 0, есть 2 возможности - игрок ушел или игрок не отреагировал вовремя.
Кто-нибудь может сказать мне, как я могу узнать, когда пользователь закрывает браузер или выходитс моего сайта?потому что, насколько я знаю, объект Session не будет эффективным, поскольку метод Session_End запускается через несколько минут после закрытия браузера или если пользователь имеет AFK, и я не могу позволить Session_End закрыть комнату для игроков, которые являются AFK, так как ониждут присоединения большего количества игроков, и мне нужно немедленно инициировать свои события.
PS: я нашел этот метод, я не знаю, работает ли он, но я не думаю, что он будет соответствовать моим потребностям, потому чтоМне нужно, чтобы событие сработало, даже когда пользователь переходит с моего сайта на другой сайт.
Ext.EventManager.on(window, 'beforeunload', function() {
alert('cross-exit tab click AND cross-exit browser click');
});