参考错误:未定义功能 - Firefox

时间:2016-04-18 19:26:49

标签: javascript jquery

我有这个javascript在1.5秒计时器后调用一个函数。在Chrome中,它运行良好。在Firefox中,我得到一个参考错误:未定义accessTransition。对于为什么会出现这种情况的任何解释?

$('#next-btn').click(function(e) {
    window.setTimeout(accessTransition, 1500);

    function accessTransition()
    {
        $('.fact-intro-1').slideUp(1000);
        $('.fact-text-1').css('display', 'inline-block');
    }
} 

2 个答案:

答案 0 :(得分:2)

尝试:

function accessTransition()
    {
        $('.fact-intro-1').slideUp(1000);
        $('.fact-text-1').css('display', 'inline-block');
    }

$('#next-btn').click(function(e) {
    window.setTimeout(accessTransition, 1500);

} 

我认为超时无法获得此功能,因为它嵌套在事件处理函数中(javascript具有基于函数的作用域)。

答案 1 :(得分:1)

function accessTransition()
{
    $('.fact-intro-1').slideUp(1000);
    $('.fact-text-1').css('display', 'inline-block');
}

$('#next-btn').click(function(e) {
    window.setTimeout(accessTransition, 1500);
}

您应该在事件处理程序之外定义函数。