我有以下功能:奇怪的错误发生在函数运行
var appendStructure = {
init : function(wrapper,structure,cls,callback) {
$(wrapper).appendTo(container).hide()
var object = $(container).find(cls);
$(structure.join('')).appendTo(object);
showObj(object,function() {
if(opts.centerObj == true) {
$(window).resize(function() {
var cssProps = getProps(object);
object.css(cssProps);
});
}
if(typeof callback == 'function') {
callback();
}
});
}
}
这被称为内它的其他职能:
var getProps = function(obj) {
return {
'position' :'absolute',
'top' : (($(window).height() - $(obj).outerHeight())/2)+'px',
'left' : (($(window).width() - $(obj).outerWidth())/2)+'px'
}
}
var showObj = function(obj,callback) {
return setTimeout(function() {
if(opts.centerObj == true) {
var cssProps = getProps(obj);
obj.css(cssProps).fadeIn('slow');
}
else {
obj.fadeIn('slow');
}
if(typeof callback == 'function') {
callback();
}
}, 1500);
}
而且我会像这样的功能:
if(appendStructure.init(wrapper.login,structure.login,'.content-login')){
console.log('Object Appended');
}
else {
console.log('Error');
}
我的问题是,为什么控制台输出Error
,因为该功能实际上工作并且所有可能发生的事情都会发生?
我在想如果函数能够正常工作并且其他所有东西都能正确地启动,那么问题肯定在if语句中的某处。如果将该行更改为'console.log(appendStructure.init(wrapper.login,structure.login,'.content-login'));'?我有兴趣知道该如何进行评估。 – 2012-01-15 10:58:42
@Mark Tabler,如果我将'console.log('Error')'改为'console.log(appendStructure.init(wrapper.login,structure.login,'.content-login')),它会返回'undefined') ;'。 – Roland 2012-01-15 11:02:07