【发布时间】:2011-10-11 21:35:52
【问题描述】:
所以我已经构建了一个自定义对话框 JQuery 插件,但我遇到了回调函数的问题。 我试图在对话框关闭后重新加载页面,但我的问题是页面几乎立即重新加载,所以我只看到对话框一瞬间,实际上它应该在消失之前显示 5 秒钟。 任何想法我做错了什么?我希望消息在页面重新加载之前淡出。
这是我对插件的调用:
$('.messages').myPlugin({
'message' : 'Testing'
},function(){location.reload()})
这是插件脚本:
(function( $ ){
$.fn.myPlugin = function( options, callback ) {
if (typeof callback == 'function') { // make sure the callback is a function
callback.call(this); // brings the scope to the callback
}
var settings = {
//DEFAULT OPTIONS
...OPTIONS IN HERE....
};
if ( options ) {
$.extend(settings, options);
};
return this.each(function() {
.....BUILD THE DIALOG....
});
return this;//Leave this to allow chaining
};
}) ( jQuery );
【问题讨论】:
-
您是在插件函数的第二行直接调用回调...而是在关闭对话框时调用该函数。
标签: jquery jquery-plugins callback