我正在使用以下效果很好的。我只是想知道在加载框后是否可以覆盖onClosed
$.colorbox({href:"fff.html",
onClosed:function(){ window.parent.location.reload(true); }
});
我知道在加载框后我可以使用resize函数来调整尺寸。是否可以类似地使用关闭函数来实现我的目标?
答案 0 :(得分:3)
你可以按照你的尝试方式完成
$.colorbox({href:"fff.html",
onClosed:function(){
//This is your method that triggers onClose
// SO go ahead, override it
//You can also call multiple function on it like
function1(); //call function 1
function2(); //call function 2
}
});
或者,您可以将函数名称传递给onClosed(),就像
一样$.colorbox({href:"fff.html",
onClosed: overrideFunction
});
function overrideFunction() {
/your overriding function
}
答案 1 :(得分:1)
虽然可能有更清洁的解决方案,但您可以做的是
// in the window scope! Can be explicitely set with
// window.onColorboxClose without var before it.
var onColorboxClose = function(){
};
$.colorbox({
href:"fff.html",
onClosed:onColorboxClose
});
然后覆盖该函数,而不是将其作为闭包传递给颜色框的属性。
答案 2 :(得分:0)
另一种解决方法是覆盖close事件以完全控制关闭事件处理
var c_close = $.fn.colorbox.close;
// Now disable the close function
$.fn.colorbox.close = function(){
if(confirm('Are you sure?')){
c_close();
} else {
return false;
}
};