Вызов FancyBox внутри getJSON и setInterval

Я пытаюсь использовать метод getJSON для получения кода состояния, и если код состояния > 0, я хочу показать окно fancybox.

Я хочу, чтобы этот процесс выполнялся каждые 5 секунд (используя функцию setInterval). Скрипт выполняется без ошибок. Оповещения, как показано ниже, показаны, но не Fancybox DIV.

Когда статус> 0, показать всплывающее окно fancybox, а если нет, не показывать его.

Пожалуйста, поправьте меня, где я делаю неправильно.

Вот HTML-код.

<div style="display:none">
   <div id="myModal">
     <h1>Conversion in Progress</h1>
   </div> 
</div>

Вот код jQuery.

$(document).ready(function() {           

    function myplugin() {             
        $.getJSON("get-status.php", function (data) {                        
              $.each(data, function (key, status) {   
                   if(status > 0) {
                      alert("Bad Status");         // Works;
                      $("#myModal").fancybox();
                   }else{
                      alert("Good Status");        // Works;
                      $.fancybox.close();
                   }
               });       
        });  
     };

     $(function() {
          setInterval(function() { myplugin() }, 5000);
     });

});';

person Purus    schedule 06.03.2013    source источник


Ответы (1)


Вы инициализируете fancybox, но фактически не запускаете его.

Попробуйте добавить $("#myModal").fancybox().click();

person gpasci    schedule 06.03.2013
comment
Замечательный. Я знаю, что это будет что-то тривиальное. Ты сделал это. Спасибо. - person Purus; 06.03.2013