这个jquery有什么问题?

时间:2011-07-12 18:40:19

标签: javascript jquery

我似乎无法弄清楚这一点。这个jquery代码中的东西破坏了我的网站:

    $('.menu li').click(function() {
        nextslide = $(this).attr('id').replace('m_', '');

        if ($('#m_till').hasClass('active'))
            currentslide = 'till';
        else if ($('#m_receipts').hasClass('active'))
            currentslide = 'receipts';
        else
            currentslide = 'support';   

        slide_right(currentslide, nextslide);
    }

当我删除此代码时,我的网站工作正常。所以它必须是这个函数中导​​致问题的东西。

3 个答案:

答案 0 :(得分:10)

看起来最后遗漏了);

$('.menu li').click(function() {
        nextslide = $(this).attr('id').replace('m_', '');

        if ($('#m_till').hasClass('active'))
            currentslide = 'till';
        else if ($('#m_receipts').hasClass('active'))
            currentslide = 'receipts';
        else
            currentslide = 'support';   

        slide_right(currentslide, nextslide);
    });

答案 1 :(得分:1)

$('.menu li').click(function() {
    nextslide = $(this).attr('id').replace('m_', '');

    if ($('#m_till').hasClass('active'))
        currentslide = 'till';
    else if ($('#m_receipts').hasClass('active'))
        currentslide = 'receipts';
    else
        currentslide = 'support';   

    slide_right(currentslide, nextslide);
}

//close it
);
//close it

答案 2 :(得分:0)

解决任何javascript问题最简单的方法是将部分分配给变量,然后检查变量。

var a = $('.menu li');
a.click();

以及更多例子:

var a = $(this);
var b = a.attr('id');
var c = b.replace('m_', '');

假设您的语法正确,您可能正在引用不存在的内容。使用Chrome开发者工具或Firefox Firebug打破该变量并检查值。