用alert测试shown.bs.modal和hidden.bs.modal两个事件发现并没有在事件发生后弹出alert啊,都是alert出现后弹出框的显示和隐藏才完成。
在使用下拉菜单的时候也出现这个问题了
给你的modal后面加一个fade过渡效果,保存测试就没问题了
请问楼主的问题找到原因了吗?因为我也出现了相同的问题
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>JavaScript触发时的参数设置(二)</title> <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css"> </head> <body> <button class="btn btn-primary" type="button">点击我</button> <div class="modal" id="mymodal"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button> <h4 class="modal-title">模态弹出窗标题</h4> </div> <div class="modal-body"> <p>模态弹出窗主体内容</p> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-primary">保存</button> </div> </div><!-- /.modal-content --> </div><!-- /.modal-dialog --> </div><!-- /.modal --> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script> <script> $(function(){ $(".btn").click(function(){ $("#mymodal").modal("toggle"); }); $('#mymodal').on('show.bs.modal', function (e) { alert('show.bs.modal') }); $('#mymodal').on('shown.bs.modal', function (e) { alert('shown.bs.modal') }) }); </script> </body> </html>
不一样的,你可以再试一下,一个先弹,一个是在弹框出来后弹的。