0

有谁知道为什么以下脚本不起作用。

我正在尝试查看 cookie 是否已设置以及何时设置我不想查看值是 1 还是 0 如果值为 1 我不想移动我的 div#content 偏移量,但是当它是为 0 我想以相同的偏移量移动它,但方向相反

$(function() {
    var loc = window.location.pathname.split( '/' );

    if("index.php" == loc[3] && (document.cookie('subMenu') === null || document.cookie('subMenu') == 0)) {
        document.cookie("subMenu", 1);
        animatethis("#content", 1500, "+=50px");
    }
    else 
    {
        if(!"index.php" == loc[3] && (document.cookie('subMenu') == 1)
        {
            document.cookie("subMenu", 0);
            animatethis("#content", 1500, "-=50px");
        }
    }
});

function animatethis(targetElement, speed, offset) {
    var x = $('#menuwrapper').height();

    $(targetElement).animate({ marginTop: "+=50"},
    {
        duration: speed,
    });
};
4

2 回答 2

0

您有语法错误。以下行中第一个括号的结尾缺失:

//It would be
if(!"index.php" == loc[3] && (document.cookie('subMenu') == 1))

//In place of 
if(!"index.php" == loc[3] && (document.cookie('subMenu') == 1)
于 2013-03-14T14:53:44.533 回答
0

你只是不在offset这里使用你的变量:

$(targetElement).animate({ marginTop: "+=50"},
{
     duration: speed,

});

尝试这个 :

$(targetElement).animate({ marginTop: offset},
{
    duration: speed,

});
于 2013-03-14T14:06:49.933 回答