2012-10-14 2 views
0

프레임이 있으며 "팝업 프레임"외부를 클릭하여 프레임을 닫거나 숨기려고합니다. 다음 코드는 요소를 보여줍니다.요소 외부를 cliking하여 하나 이상의 프레임 닫기 또는 숨기기

<span class="frame" id="mapframe"> 
    <iframe src="link" frameborder="0" width="520" height="470"> 
    </iframe> 
</span> 

이상이 코드는 내가 프레임을 닫으려고하는 방법이다 :

그것은 단지 하나의 프레임이 개방되어 있지만, 두 개 이상의 프레임이있는 경우, 그렇지 않은 경우 작동
$(document).bind('click', function(e){ 
     var $clicked = $(e.target); 
     if (!($clicked.is('#mapframe') || $clicked.parents().is('#mapframe'))) { 
     $("#mapframe").hide(); 
     } 
}); 

그들 모두를 닫으십시오. 그것은 바깥쪽에 클릭이있을 때 마지막 프레임을 닫아야했습니다. 프레임 스택이있는 것처럼 보이고 외부에서 클릭 할 때마다 스택을 터뜨릴 수 있습니다.

미리 감사드립니다!

답변

0

모든 프레임을 닫으려면 id 대신 클래스를 선택하십시오. Id는 하나의 선택자를위한 것이며, 클래스는 그것들을 모두 닫을 것이다.

$('.frame').hide(); 
0

ID 대신 프레임 클래스를 사용하여 모두 닫습니다. $ ('. frame'). close()가이를 수행합니다. 사용자가 클릭 한 상태로 열어 둘 필요가있는 경우 다른 사용자가 닫은 후에 this 키워드를 사용하여 열 수 있습니다.

+0

마지막 항목뿐만 아니라 모든 항목을 닫습니다. – Doon

관련 문제