Twitter bootstrap 更改引导的位置";“模式开放”;类被指定给而不是主体
目前Twitter bootstrap 更改引导的位置";“模式开放”;类被指定给而不是主体,twitter-bootstrap,Twitter Bootstrap,目前 modal-open 打开模式时,将指定给实体。如何更改类添加到的位置而不是主体 感谢您的帮助。您必须更改添加模式打开的js。这是一个有点奇怪的行为,无论如何,你可以做它温柔或残忍 柔和:单击显示并删除添加到另一个元素的主体类: //模态首先添加到主体元素,然后删除并添加到另一个元素 $('#myModal').on('shown.bs.modal', function (e) { $('body').removeClass('modal-open'); $('#myCustom
modal-open
打开模式时,将指定给实体。如何更改类添加到的位置而不是主体
感谢您的帮助。您必须更改添加模式打开的js。这是一个有点奇怪的行为,无论如何,你可以做它温柔或残忍 柔和:单击显示并删除添加到另一个元素的主体类: //模态首先添加到主体元素,然后删除并添加到另一个元素
$('#myModal').on('shown.bs.modal', function (e) {
$('body').removeClass('modal-open');
$('#myCustomElement').addClass('modal-open');
})
然后还截取模式的关闭,并添加第二次移除的执行:
$('#myModal').on('hidden.bs.modal', function (e) {
$('#myCustomElement').removeClass('modal-open');
})
野蛮方法,为了避免模态打开,不需要将其添加到body元素中:
进入TwitterBootstrap目录>js
打开modal.js
搜索modal open,您将发现(在版本3.2.0上):
在
你会发现
this.$body.addClass('modal-open')
this.$body.removeClass('modal-open')
在Modal.prototype.hide中
你会发现
this.$body.addClass('modal-open')
this.$body.removeClass('modal-open')
您必须更改
addClass
和removeClass
的目标并替换这些指令,如果您有一个固定的元素,它就足够简单了(例如:$('myFixedElement')。addClass('modal-open'))
,如果它是一个动态元素,那么它会很复杂,你需要再次截取Show函数,在js中添加一个全局var
,让modal.js
知道并读取你的目标元素。不过你也可以更改这些函数的签名,但我并不建议你这么做,基本上你会让你的代码很难理解aintain.太好了!谢谢你的时间。点击。另一个,当模态激活时添加的,有没有办法确定它放置的位置,因为它就放在结束体标记之前。我想把它放在感谢你所有的帮助之间。啊,我发现,只需将附加体位更改为您在上面放置的示例谢谢!我很惊讶没有人注意到body元素缺少“”。因此body应该是$('body'),而不是$(body)。我找到了解决方案。因此,为了避免延迟,我们应该使用'show.bs.modal'而不是'show.bs.modal'。