2012-11-04 4 views
0

На моем сайте у меня есть кнопка контакта, которая при нажатии слайдов содержит div, содержащий форму контакта вниз (с использованием jQuery animate). Этот div имеет закрытую кнопку в нем, когда при нажатии слайды его резервное копирование (исходное положение находится вне экрана). Мне нужно сделать это, когда нажата кнопка контакта, она работает только один раз, а затем снова работает, когда div закрыт.JQuery Bind/Unbind

Я знаю, что это использует функцию bind/unbind, однако я не могу заставить ее работать. Вот мой код:

$(document).ready(function() { 
var handler = function() { 
$('.top,.left,.main,.header').animate({ 
top: '+=120' 
}, 1300, 'easeOutBounce'); 
} 
$('#contact').bind('click', handler); 
$('#contact').unbind('click', handler); 
}); 
$('#close').click(function() { 
$('.top,.left,.main,.header').animate({ 
top: '-=120' 
}, 1300, 'easeOutBounce'); 
}); 

сайт, где я пытаюсь добавить его в здесь: www.samskirrow.com/projects/move_div

Спасибо за вашу помощь. Sam

ответ

0

Понял, решил не использовать bind, unbind команды, а вместо этого переключать. У меня есть кнопка закрытия, которая просто берет на себя роль кнопки «открыть», поэтому она не прерывает цикл переключения.

$(document).ready(function() { 
    $('#contact').toggle(function() { 
    $('.top,.left,.main,.header').animate({ 
     top: '+=120' 
    }, 1300, 'easeOutBounce'); 
    },function() { 
    $('.top,.left,.main,.header').animate({ 
     top: '-=120' 
    }, 1300, 'easeOutBounce'); 
    }) 
    $('#close').click(function() { 
    $("#contact").click(); 
    }); 
}); 

Надеется, что это полезно для кого-то :)