이 질문에 대한 답변이 제공됩니다. 다음은 fiddle입니다. 링크를 클릭하여 로그인 양식을 전환 할 수 있습니다. 그런 다음 숨기려면 링크를 다시 클릭하거나 양식 자체 외부를 클릭하십시오.클릭 대상이 아닌 경우
$j = jQuery.noConflict();
$j("a#login-link").click(function (e) {
$j("div#custom-login").slideToggle("fast");
e.preventDefault();
e.stopImmediatePropagation();
});
$j(document).click(function (e) {
if ($j("div#custom-login").is(":visible") && !$j("div#custom-login, div#custom-login *").is(e.target)) {
$j("div#custom-login").slideUp("fast");
}
});
문제는 테두리를 클릭하지 않는 이상 이상한 모양을 클릭해도 양식을 숨길 수 있다는 것입니다. 해결책은과 같이 모든 자식 요소를 얻기 위해 *
선택기를 추가하는 것입니다
$j(document).click(function (e) {
if ($j("div#custom-login").is(":visible") && !$j("div#custom-login, div#custom-login *").is(e.target)) {
$j("div#custom-login").slideUp("fast");
}
});
하지만 그것은 그렇지 않으면 할 수없는 상상할 수없는 이유는 무엇입니까?
아, 그게 쉽지, 응? 감사! –