2015-06-19 30 views
0

當我點擊離開它時,我正在尋找要關閉的iframe。當你點擊任何地方以外的任何地方時,隱藏iFrame

我已經嘗試了一些jQuery的,但它是不成功的:

$('body').click(function(event){ 

if($(event.target).parents('#mainFrame_Example').length <= 0) 
    $('#mainFrame_Example').hide(); 
}) 

繼承人的代碼:

<div class="modal-content"> 
     <div class="modal-header"> 
     <h4 class="modal-title generic-modal-title">Select</h4> 
     </div> 
     <div class="modal-body generic-modal-body"> 
     <div style="max-height:400px; overflow:scroll;"> 
      <iframe src="blahblahblah.aspx" id="mainFrame_Example" width="100%" height="400px" scrolling="no" frameborder="0"></iframe> 
     </div> 
     </div> 
</div> 

有沒有人有什麼想法?

+0

你能不能做一個'div'貫穿整個'body'擴展和追加事件'click'到它?這個'div'應該包含所有的內容作爲父元素。 – cezar

+0

而這個'id =「mainFrame_Example」'是可怕的。 HTML不區分大小寫。使用大寫字母有什麼意義?蛇和駱駝案件的混合使得它也容易發生閱讀錯誤。更好地使用'id =「main-frame-example」'。 – cezar

回答

0

試試這個:

$(document).add(parent.document).click(function(e) { 
    var iframe = $('iframe'); 
    if (!iframe.is(e.target) && iframe.has(e.target).length === 0) { 
     iframe.hide(); 
    } 
}); 
0

我想這會做,

$(function(){ 

    $('body').on('click', function() { 
     $('#mainFrame_Example').hide(); 
    }); 

}); 
相關問題