Привет, есть такая страница:
<doctype html>
<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <button class='empty'>empty</button>
        <button class='popup'>popup</button>
    </body>
    <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
    <script>
        $(function(){
            $('body button').on('click', function(e) {
                var p = window.open(
                    $(e.target).is('.empty') ? '' : 'popup.html', 
                    "title", 
                    "width = 400, height=200"
                );
                
                $(p).on('unload', function(e){
                    console.log(e.target, 'unload');
                });
            });
        });
    </script>
</html>
здесь при нажатии на кнопки empty/popup создается новое окно средствами js (window.open), а также вешается событие на unload ($(p).on('unload')), т.е. при закрытии окна, в консоль должно выводиться сообщение.
Но возникает проблема. При создании пустого окна событие unload обрабатывается как надо, и в появляется только при закрытии всплывающего окна. Однако, если открывать всплывающее окно с адресом страницы (popup.html), то событие отрабатывает почти мгновенно после открытия окна и соответственно не срабатывает при закрытии самого окна.
Кто-нибудь подскажет как решить проблему?
upd. popup.html
<doctype html>
<html>
    <head></head>
    <body>body</body>
</html>
Скорее всего, unload срабатывает на завершение формирования dom в новом окне. Но как это предотвратить?


