2015-01-07 4 views
1

У меня есть эти выпадающие формы, и я ищу способ их скопировать, когда я нажимаю нигде вне форм. Моего Javascript код, как показано ниже:выпадающий вход в html

$(document).ready(
function(){ 
$('#login-trigger').click(
function(){ 
    $(this).next('#login-content').slideToggle();   

    }) 
}); 

$(document).ready(function() { 
$('#signup-trigger').click(
function(){ 
    $(this).next('#signup-content').slideToggle(); 

    })  
}); 

Моя главная причина необходимости этой функции так, что две формы не было бы открыты в то же время или с любым другим списком добавить позже


ответ

1

Просто добавьте базовый обработчик событий в сам документ:

$(document).click(function(){ 
     $('#login-content').slideUp(); 
     $('#signup-trigger').slideUp();  
    }) 
}); 
+0

спасибо, хотя это просто предотвратить его от сползания в первую очередь, как это входит в функции мыши – Gafar

0

Я бы сделал что-то вроде этого, быстро и просто. Просто добавьте класс .sliding-content к вашим раздвижным элементам, затем добавьте это:

$(document).on('click', ':not(.sliding-content)', function() { 
    $('.sliding-content').slideUp(); 
}); 
+0

Привет, спасибо. Это звучит неплохо, выяснилось бы таким образом и позже опубликуйте мой результат. на какое-то время – Gafar

0

Ну, я решил это так, благодаря оба ответу отправителям для руководства

$(document).ready(
function(){ 
$('#login-trigger').click(
function(e){ 
    $('#signup-content').slideUp(); 
    $('#categories').slideUp(); 
    e.stopPropagation(); 
    $(this).next('#login-content').slideToggle(); 
    $('#login-content').click(function(e){e.stopPropagation();}); 
    } 
) 
} 
); 

$(document).ready(function() { 
$('#signup-trigger').click(
function(e){ 
    $('#login-content').slideUp(); 
    $('#categories').slideUp(); 
    e.stopImmediatePropagation(); 
    $(this).next('#signup-content').slideToggle(); 
    $('#signup-content').click(function(e){e.stopPropagation();}); 
    })  
}); 

В основном я использовал е .stopPropagation, чтобы предотвратить падение самой кнопки вниз от вверх по своей форме слайда вниз. а затем добавили функцию документа Нажмите, чтобы скользить вверх все формы, которые скользили вниз

$(document).click(function(){function(){ 
$('#login-content').slideUp(); 
$('#signup-content').slideUp(); 
$('#categories').slideUp(); 

});