2013-03-14 3 views
0

Кто-нибудь знает, почему следующий скрипт не работает.jQuery/javascript ошибки

Я пытаюсь проверить, установлен ли файл cookie, и когда он не будет видеть, является ли значение 1 или 0, если значение равно 1, я не буду перемещать содержимое div # со смещением , но когда это является 0 я хочу, чтобы переместить его с тем же смещением, но в opposit направлении

$(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, 
    }); 
}; 
+3

Какие ошибки вы получаете? – j08691

+0

Я не получаю никаких ошибок, но анимация не работает, а когда я получаю проверку файлов cookie и из моего кода, она работает –

+0

Что происходит при выполнении кода? Вы не использовали «смещение» varibale в функции «animatethis». –

ответ

0

Вы просто не использовать offset переменную здесь:

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

}); 

Попробуйте это:

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

}); 
+0

. Я исправил это, но он все еще не работает –

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) 
Смежные вопросы