2012-03-14 4 views
2

누구든지 css 위치를 알 수 있습니까? 기능을 엉망으로 만들 수 있습니다.작동하지 않는 다른 태그를 제외하고 본체를 클릭하십시오.

$('body').not($('.theDIV')).click(function(){ 
    alert(''); 

    }); 

또는 다른 곳에 문제가 있습니까?

무슨 일이 일어나고있는 것은 버튼 하나를 클릭하면 나타나고 div()를 제외하고 몸의 아무 곳이나 클릭하면 숨기고 싶습니다. HTML

<ul class='messages'> //these are made dynamically. should i use each() to go through all the elements? 
<li> 
    <div class='theDIV'></div> 
    <input type='button'> 
</li> 
<li> 
    <div class='theDIV'></div> 
    <input type='button'> 
</li> 
<li> 
    <div class='theDIV'></div> 
    <input type='button'> 
</li> 
</ul> 

미안 내가 처음

+0

왜 당신이 각이 일을 할 수 있을까? –

+0

당신의 HTML 코드는 무엇입니까? 2 $ ('. 메시지 li')이 있더라도 서로 엉망이됩니다. 정확히 당신이하려는 것은 무엇입니까? –

+0

코드는 의미가 없습니다. 본문은 어떤 LI의 자손이 될 수 없으므로 '아니다'는 쓸모가 없습니다. 요소의 모든 요소에 대해 body에 새로운 클릭 핸들러를 추가하고 있습니다. – charlietfl

답변

5

을 취소 않네 경우가

$('body').click(function(e){ 
    if(! $(e.target).hasClass('theDIV')){ 
    alert('clicked on something that has not the class theDIV'); 
    } 

}); 
+0

고맙습니다. . 그것은 시간의 흐름입니다! – Simon

관련 문제