Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Twitter bootstrap 更改引导的位置";“模式开放”;类被指定给而不是主体_Twitter Bootstrap - Fatal编程技术网

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'。