小编Ten*_*nek的帖子

bootstrap,模态对话框,shown.bs.modal事件不会触发

我正在使用带远程选项的模态对话框:

<a target="profile-banner" data-target="#edit-slide-dlg" href="/Banner/SlideEditModal/1/1"
data-toggle="modal" class="banner-slide-control">Edit</a>
Run Code Online (Sandbox Code Playgroud)

哪里:

<div id="edit-slide-dlg" class="modal fade" tabindex="-1"></div>
Run Code Online (Sandbox Code Playgroud)

另外,我正在监听使用event.target属性的shown.bs.modal事件:

$("body").on("shown.bs.modal", function (event) {
  // do something with event.target 
}
Run Code Online (Sandbox Code Playgroud)

我第一次打开对话框时没有触发此事件的原因.它只是第二次被解雇了.我试图浏览bootstrap脚本并找到此代码(请参阅我的评论):

var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })
transition ?
that.$element.find('.modal-dialog') // wait for modal to slide in
   .one($.support.transition.end, function () {
      that.$element.focus().trigger(e) //THIS LINE NEVER EXECUTED AT FIRST DIALOG OPENING
   })
   .emulateTransitionEnd(300) :
that.$element.focus().trigger(e)
Run Code Online (Sandbox Code Playgroud)

所以,我关闭转换作为一种解决方法,它使事件第一次被触发,但是,event.target是空字符串.第二次,event.target包含适当的对话框HTML.我的代码或引导程序有问题吗?

javascript jquery twitter-bootstrap-3

12
推荐指数
1
解决办法
2万
查看次数

标签 统计

javascript ×1

jquery ×1

twitter-bootstrap-3 ×1