Bootstrap Twitter引导模式- IsShown

eyh26e7m  于 2022-12-08  发布在  Bootstrap
关注(0)|答案(6)|浏览(164)

各位SO用户,您好!
在我自动填充模式框时遇到了这个问题。
有时它已经有内容了,所以我尝试对每个请求做一个hide/show。但是show在hide函数完成之前就被激发了,所以它破坏了脚本。
我不能绑定到“hidden”,因为如果这是第一次-它不会从 Bootstrap 中激发隐藏函数。
使用modal('true'),我可以看到对象有一个isShown元素,但是有人知道我如何访问它吗?
console.log显示如下:

$backdrop
    [div.modal-backdrop]

$element
    [div#modal-from-dom.modal]

isShown
    true

settings
    Object { backdrop="static", keyboard=true, show=false}

hide
    function()

show
    function()

toggle
    function()

__proto__
    Object { toggle=function(), show=function(), hide=function()}
hs1rzwqc

hs1rzwqc1#

Twitter Bootstrap 3的答案:

$("element").data()['bs.modal'].isShown

$("element").data('bs.modal').isShown
uklbhaso

uklbhaso2#

答案是:

$("element").data('modal').isShown
vjhs03f7

vjhs03f73#

在 Bootstrap 3.0.x上

$('#modal_Id').data().modal.isShown

$('#modal_Id').data('modal').isShown

modal_id是您的模式识别码

pu3pd22g

pu3pd22g4#

如果您想要Bootstrap版本2 * 和 * 3解决方案,并且不想使用data(因为它看起来像是名称已经更改过一次)...

$(element).hasClass('in')(将“淡入”或“可见”;一个加号表示它返回一个布尔值)

"false" === $(element).attr('aria-hidden')(因此这也是隐藏或可见的咏叹调。"true"在本例中表示隐藏。)
请参阅bootstrap 3.3.1中的源代码:

this.backdrop(function () {
...
  that.$element
    .addClass('in')
    .attr('aria-hidden', false)
...

同样,这段代码来自3.3.1。可以确认这在2.1.0中也能工作。在这种情况下,鸭子嗅探[原文如此]可能更好。

kt06eoxx

kt06eoxx5#

引导数据库4的答案:

$("element").data('bs.modal')._isShown

作为函数:

function isModalShown(modal) {
    var modalIsShown = (modal.data('bs.modal') || {})._isShown;
    return !(typeof modalIsShown === 'undefined' || !modalIsShown);
}
bhmjp9jg

bhmjp9jg6#

您可以使用此选项:

$('#mymodal').on('shown.bs.modal', function (e) {
    console.log("Modal is shown");
//your other codes here...
})

相关问题