It's easy to show a modal dialog with javascript in Bootstrap.
But how to make the modal open at page load without the need of a document.ready
function or a body onload
function?
My need is to load a page and have the modal allready opened. I don't want a delay nor a transition effect when the page load. I want that the modal is opened at startup.
I look the modal.js a little bit and tried adding class="modal-open"
on the body with no effect.
<div class="modal in" id="journalModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel">modal title</h4>
</div>
<div class="modal-body">
body
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
Is it possible? How to do it ?
Answer: Use the modal('show') Method You can simply use the modal('show') method to show or open the modal window in Bootstrap using jQuery. Other related Bootstrap's modal methods are modal('hide') and modal('toggle') .
Have a look at this Launch Bootstrap Modal on page load from Andres Ilich
JS
<script type="text/javascript">
$(window).load(function(){
$('#myModal').modal('show');
});
</script>
When modal becomes visible, Bootstrap adds .in
class to the it's container. So you can add a rule in your css as below and add the same class to modal - which you want to be visible at page load.
CSS
.modal.in {
display:block;
}
HTML
<div class="modal in">visible on page load.</div>
But these will not bring the modal backdrop in place. So you gotta keep those also in bottom of page:
<div class="modal-backdrop fade in"></div>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With