следующее должно сделать трюк .. (jQuery)
<script type="text/javascript">
function initiatePopup(){
$(window).unbind('blur');
$(window).unbind('focus');
// do the popup
};
$(document).ready(
function(){
$(window).focus( initiatePopup ).blur( initiatePopup );
// your other functions should go from here on
}
);
</script>
[РЕДАКТИРОВАТЬ] по запросу OP ..
код отредактирован, чтобы пример включал
[РЕДАКТИРОВАТЬ 2]
Приведенный выше код был снова отредактирован, потому что нам нужно также обработать событие размытия ... поэтому мы берем код для всплывающего окна где-то еще, чтобы не дублировать его внутри обоих событий ..
[РЕДАКТИРОВАТЬ 3]
если вы хотите передать параметры во всплывающее окно, если они будут созданы позже, измените строку привязки события на
$(window).focus( function() { initiatePopup(params); } ).blur( function() { initiatePopup(params); );
и, конечно, измените initiatePopup для принятия параметров ..