Обновить страницу, когда colorbox закрыт - PullRequest
5 голосов
/ 03 февраля 2012

Я использую colorbox и хочу обновить страницу, когда она будет закрыта, поэтому я пытаюсь что-то вроде этого:

    $.colorbox({href:"loading.html",title:'send notification...',escKey:false,width:300,height:00,
overlayClose:false,onClosed:location.reload(true)});
                $.ajax({
                   url: "sendNot.php",
                   type: "POST",
                   data: {titolo:titolo.value,messaggio:messaggio.value},
                   success: setTimeout("parent.$.colorbox.close()",5000)
                }); 

если я удаляю onclosed option, через 5 секунд colorbox будет удален, но выполнение аналогичного кода закроется, когда ajax остановит загрузку страницы в посте. В чем проблема? вы не могли бы мне помочь? Ни один. Никто? (

Ответы [ 2 ]

12 голосов
/ 03 февраля 2012

Попробуйте это:

$.colorbox({href:"loading.html",title:'send notification...',escKey:false,width:300,height:00,
overlayClose:false,onClosed:function() { location.reload(true); }});

Просто чтобы прояснить разницу - плагин позволяет вам предоставить функцию обратного вызова для события onClosed, которая должна быть именованной или анонимной функцией. Это анонимная функция - вместо этого вы могли бы легко сделать следующее, чтобы улучшить читаемость / возможность повторного использования (в некоторых случаях). Обратите внимание на отсутствие скобок при обратном вызове.

    $.colorbox({href:"loading.html",title:'send notification...',escKey:false,width:300,height:00,
    overlayClose:false,onClosed:reloadPage});

function reloadPage() {
    location.reload(true); 
}
4 голосов
/ 23 октября 2013

Вы также можете поместить обновление в исходный вызов для colorbox

$(document).ready(function(){
    $('.iframe').colorbox({
        iframe:true,
        width:'700px',
        height:'800px',
        onClosed:function(){ location.reload(true); },
    }); 
});
...