stronę, która otwiera Twitter Bootstrap modalnych z iframe wewnątrz:Close Bootstrap modalne od wewnątrz iframe
<div id="iframeModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="btn btn-danger pull-right" data-dismiss="modal" aria-hidden="true">Close</button>
<div class="clearfix"></div>
</div>
<div class="modal-body">
<iframe src="iframe-modal.html"></iframe>
</div>
<div class="modal-footer">
</div>
</div>
I szukam sposób, aby zamknąć ten modal od wewnątrz iframe. Przykł. klikając łącze wewnątrz iframe-modal.html
, aby zamknąć modal. Co Próbowałem, ale nie udane:
$('#iframeModal', window.parent.document).modal('hide');
$('#iframeModal', top.document).modal('hide');
$('#iframeModal').modal('hide');
Dziękuję Ci! Dokładnie to, czego szukałem. –
Innym rozwiązaniem byłoby użycie [postMessage] (https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage) z elementu iframe w celu powiadomienia okna nadrzędnego, aby ukryć modal (to działa, nawet jeśli element iframe ma inną domenę). – drakyoko
ponieważ bootstrap 3 pozwala tylko na otwarcie jednego modala w dowolnym momencie, dzięki czemu można uczynić to bardziej uniwersalnym, używając nazwy klasy zamiast atrybutu ID: window.closeModal = function() { $ (". Modal"). modal ("ukryj"); }; –