0

我有一些非常简单的代码:

var overlay = {
    show: function() {
        var width = $('#checkout-region').outerWidth();
        var height = $('#checkout-region').outerHeight();
        // Set vars and show
        $('#checkout-processing').css({
            'height': height + 'px',
            'width': width + 'px'
        }).fadeIn(300);
    },
    hide: function() {
        $('#checkout-processing').fadeOut(300);
    }
}

只允许我overlay.show(); 和overlay.hide();。当我尝试在控制台(Chrome)中运行它们时,我继续得到一个(非常有用的)“未定义”。一个简单的 console.log('ok'); 显示功能在那里,但我无法弄清楚这一点。

这可能是一些愚蠢的事情,但我睡眠不足,而且现在从事这个项目的时间太长了。任何帮助是极大的赞赏。

4

1 回答 1

1

Undefined不是错误,而是返回值。

这些函数返回 Undefined 因为它们没有return something;行。

如果您尝试调试代码,您应该 console.log 查询结果以查看您的查询是否返回了正确的元素。像这样:

console.log($('#checkout-processing'));

如果这有效,则元素应该淡出。

于 2012-07-19T14:01:17.920 回答