Показать сообщение отдельно
  #1 (permalink)  
Старый 09.02.2014, 18:00
Интересующийся
Отправить личное сообщение для teragalaxy Посмотреть профиль Найти все сообщения от teragalaxy
 
Регистрация: 07.09.2013
Сообщений: 12

Как объединить несколько похожих скриптов в один?
$(function() {
    var button = $('#loginButton');
    var box = $('#loginBox');
    var form = $('#loginForm');
    button.mouseup(function(login) {
        box.toggle();
        button.toggleClass('active');
    });
	form.mouseup(function() { //функция не позволяет форме закрыться если в её поле произошёл клик
        return false; 
    });
	$(this).mouseup(function(login) { //функция закроет форму если вне её поля произошёл клик
        if(!($(login.target).parent('#loginButton').length > 0)) {
            button.removeClass('active');
            box.hide();
        }
    });
});
$(function() {
    var button = $('#joinButton');
    var box = $('#joinBox');
    var form = $('#joinForm');
    button.mouseup(function(join) {
        box.toggle();
        button.toggleClass('active');
    });
    form.mouseup(function() { 
        return false;
    });
    $(this).mouseup(function(join) {
        if(!($(join.target).parent('#joinButton').length > 0)) {
            button.removeClass('active');
            box.hide();
        }
    });
});

$(function() {
    var button = $('#amediaButton');
    var box = $('#amediaBox');
    var form = $('#amediaForm');
    button.mouseup(function(id) {
        box.toggle();
        button.toggleClass('active');
    });
    form.mouseup(function() { 
        return false;
    });
    $(this).mouseup(function(id) {
        if(!($(id.target).parent('#amediaButton').length > 0)) {
            button.removeClass('active');
            box.hide();
        }
    });
});

и т.п.
И ещё: Нажав на кнопку (например joinButton) появляется форма, нажав на неё повторно - форма скрывается. А как сделать чтобы форма не скрывалась, а скрывалась только в том случае если произошёл клик вне поля формы или по какой-либо другой кнопке?

Заранее благодарю за ответ
Ответить с цитированием