2014-01-19 22 views

Antwort

6

Ich kann keine eingebaute Funktion finden, um zu überprüfen, was Sie wollen.

Der einzige "hacky" Weg, den ich gefunden habe, ist das click/keyup Ereignis des Dokuments zu überprüfen und wenn das Modal geöffnet ist, rufen Sie Ihren Rückruf an.

Code:

$(document).keyup(function (e) { 
    if (e.which == 27 && $('body').hasClass('modal-open')) { 
     console.log('esc') 
    } 
}) 

$(document).click(function (e) { 
    if (e.target === $('.modal-scrollable')[0] && $('body').hasClass('modal-open')) { 
     console.log('click') 
    } 
}) 

Demo: http://jsfiddle.net/IrvinDominin/7nnUq/

+0

arbeitete wie ein Charme – gables20

2

Die einzigen Ereignisse, die Sie in einhaken können, nach http://getbootstrap.com/javascript/#modals sind show, shown, hide und hidden. Es scheint keinen Unterschied zwischen einer normalen Versteckaktion und einer Versteck-Versteckaktion zu geben.

-1
$(document).click(function (e) { 
    if($(e.target).hasClass('modal-backdrop')){ 
    console.log("you clicked the backdrop!"); 
    } 
0

Die einfachste und und funktional in jedem Fall-

$(document).click(function (e) { 
    setTimeout(function(){ 
     if (!$('body').hasClass('modal-open')) { 
      $("#myModal iframe").attr("src", $("#myModal iframe").attr("src")); 
     } 
    },1000); 
}); 
Verwandte Themen