天道酬勤,学无止境

Jquery simplemodal 关闭现有的模态并打开一个新的模态?(Jquery simplemodal close existing modal and open a new one?)

问题

好的,所以所有模态已经在右上角有一个图像来关闭它们。 我怎样才能另外制作另一个锚来做同样的事情? 我以为我可以使用默认为“simplemodal-close”的“closeClass”选项,并将该类添加到锚点,但它没有达到预期的效果。 这是我应该做的吗? 此外,所有模态都将有一个“联系我们”链接,该链接应该关闭它自己的模态并打开联系模态。 怎样才能等到关门再打开下一个?

想法?

$('a#ask').click(function(){
        $.modal.close(function(){
        });
        $('#modal-contact').modal();
    });
回答1

1) 如果您将simplemodal-close分配给对话框内容中的元素,SimpleModal 将自动将 close 函数绑定到该元素的 click 事件。

2) 有多种方法可以做到这一点,通过换出内容或首先使用 $.modal.close(); 关闭对话框; 然后打开一个新的。

更新

$('a#ask').click(function(){
    $('#modal-contact').modal({onShow: function (dialog) {
        // handle the close yourself.
        // Don't use the closeClass on this element
        // call $.modal.close(); when you are done
        // call a function to open a new modal
    });
    return false;
});
回答2

当前 onClose 事件的行为类似于 onBeforeClose 并且没有设计 $.modal.close() 的 onAfterClose 。 唯一的解决方法是等待:

$.modal.close(); window.setTimeout(showSecondModal, 500);

回答3

要回答第二个问题——如何关闭现有模态并随后打开一个新模态——您需要做三件事:

  1. Persist: true添加到第一个 modal 的回调选项中。 根据 Eric Martin 的网站,“如果为 true,则数据将跨模态调用进行维护,如果为 false,则数据将恢复到其原始状态。”
  2. onClose回调添加到第一个模态。
  3. 在运行该功能以打开第二个模式之前关闭第一个模式。

因此,当您使用$.modal.close()关闭模态时, onClose将运行,从而触发动画并关闭模态。 由于persist 为true,将保留以下函数。 您的功能将启动,您的第二个模式将打开。

$("#first_modal").modal({
     containerId: 'modal_id',
     persist: true,
     onClose: function (dialog) {
     dialog.container.fadeOut(100, function () {
        dialog.overlay.fadeOut(200, function(){
            $.modal.close();
            showSecondModal();      
        });
   });

} });

回答4

升级到最新版本的 SimpleModal,目前是 1.4.4。 根据 http://www.ericmmartin.com/simplemodal-1-4-3-released/,超时问题已在 1.4.2 中修复:

删除了导致问题的 close() 的 Opera 解决方法

上面的代码稍加修改,应该可以按预期工作:

$('a#ask').click(function(){
    $.modal.close();
    $('#modal-contact').modal();
});

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • 简单模态,jQuery 1.8.0 和 IE9(Simple Modal, jQuery 1.8.0 and IE9)
    问题 Simple Modal 使用 jQuery 1.8.0 和 IE9 失败并显示错误: SCRIPT438:对象不支持属性或方法“removeExpression” 下面的fiddle演示(记得用IE9运行) http://jsfiddle.net/ericjohannsen/ZVEWa/1/ 将 jQuery 切换到 1.7.2 会导致错误消失。 有没有办法解决这个问题? 可能相关(OP 说问题出在 jQuery 1.7.1 和 iframes 上) SimpleModal 在 IE 9 中不起作用(在 Iframe 内) 无关(jQuery 1.5 问题) IE9 中简单模态的问题 回答1 似乎可以通过将 $.boxModel 更改为 $.support.boxModel 来解决该问题。 您可以在 http://github.com/ericmmartin/simplemodal 获取更新版本。 我将尝试尽快获得一个完整打包的版本,带有最小版本。 [编辑] SimpleModal 1.4.3 已经发布,应该可以解决这个问题 回答2 只是为了提供更新的答案(截至 2013 年 8 月 2 日),因为我在寻找相同的错误时偶然发现了这篇文章...... 正如 Salgiza 在上面的评论中指出的那样,jQuery 1.10 中发生了变化,不再支持最新版本的 Simple
  • 引导模式:关闭电流,打开新的(Bootstrap modal: close current, open new)
    问题 我已经寻找了一段时间,但找不到解决方案。 我想要以下内容: 在Bootstrap模态中打开一个URL。 我有这个问题。 因此,内容是动态加载的。 当用户在此模式中按下按钮时,我希望隐藏当前模式,然后在此之后,立即希望使用新URL(用户单击)打开一个新模式。 第二模态的该内容也被动态加载。 如果用户随后关闭了第二个模态,则第一个模态必须再次返回。 我已经盯着这几天了,希望有人能帮助我。 提前致谢。 回答1 如果没有看到特定的代码,很难为您提供准确的答案。 但是,从Bootstrap文档中,您可以像这样隐藏模式: $('#myModal').modal('hide') 然后,在隐藏后显示另一个模态: $('#myModal').on('hidden.bs.modal', function () { // Load up a new modal... $('#myModalNew').modal('show') }) 您将必须找到一种将URL推送到新的模式窗口的方法,但是我认为这是微不足道的。 如果不看代码,很难给出一个例子。 回答2 我知道这是一个较晚的答案,但这可能很有用。 正如上面@karima所提到的,这是完成此操作的正确而干净的方法。 实际上,您可以一次触发两个功能。 trigger并dismiss模态。 HTML标记; <!-- Button trigger modal
  • 模态框 + 复选框 + cookie(Modal box + checkbox + cookie)
    问题 我想实现以下目标: 在主页加载时,显示模态框在模态框内,显示一个带有单个强制复选框的表单选中复选框后,点击提交并关闭模式框,进入主页使用 cookie 记住此复选框勾选首选项在用户返回首页时,如果他们选中了复选框,则不会显示模态框 我一直在这个地方: http://dev.iceburg.net/jquery/jqModal 我可以在页面加载时显示模式框,但我无法弄清楚如何获取表单以强制复选框并关闭该框。 我也不知道在设置 cookie 时从哪里开始。 任何指针将不胜感激。 谢谢 编辑:包括代码: Index.html - 在页面加载时显示模式框 $().ready(function() { $('#ex2').jqm({modal: 'true', ajax: '2.html', trigger: 'a.ex2trigger' }); setTimeout($('#ex2').jqmShow(),2000); }); 2.html - 通过ajax加载的模态框内容 function validate(frm) { if (frm.checkbox.checked==false) { alert("Please agree to our Terms and Conditions."); return false; } } <form action="" method=
  • 简单的模态问题 - 倍数,消失的内容(Simple Modal issues - Multiples, Disappearing Content)
    问题 我是一个 jQuery 新手,并且通过在我的脚本中执行此操作,操纵了 Simple Modal 以允许我在页面上拥有多个模式: $('input.basic, a.basic').click(function (e) { e.preventDefault(); $(this).next('.basicModalContent').modal(); }); 这是我的 HTML: <a class="basic linkHeading" href="#">Link Heading</a> <div class="basicModalContent" style="display: none;"> <h1>This Resource Requires Login</h1> <a href="#" class="simplemodal-close" title="Close">Cancel</a></p> </div><!--basicModal--> 我遇到的问题是第一次单击并关闭时一切正常。 第二次点击启动模式,但所有内容都从框内消失了。 请参阅此链接以了解正在运行的错误:http://blanksky.com/test/ebenefits21/modal.html 回答1 我会建议这样的: 链接: <a href="#" class="basic" id="link-1"
  • Window.open 作为模态弹出窗口?(Window.open as modal popup?)
    问题 我想打开window.open作为模态弹出窗口。 var features = 'resizable= yes; status= no; scroll= no; help= no; center= yes; width=460;height=140;menubar=no;directories=no;location=no;modal=yes'; window.open(href, 'name', features, false); 我可以使用Window.ShowModelDialog() ,但在我的子窗口中,我正在调用父 javascript 方法。 ShowModelDialog() 不会发生这种情况。 function CallParentScript(weburl) { alert(weburl); if (weburl != null) { var url = weburl; window.opener.SelectUserImageCallback(url); window.close(); return false; } } 如果我使用window.open() 。 我可以调用 Parent javascript。 但是窗口不是模态的。 如何解决这个问题? 我可以在子弹出窗口中写一些东西总是在顶部吗? 回答1 弹出窗口是父窗口的子窗口,但不是父文档的子窗口。
  • 如何在新 URL 中弹出一个窗口,同时隐藏当前窗口并防止点击(可能使用 jQuery)(How can popup a window in a new URL but also shadow out the current window and prevent clicks (possibly with jQuery))
    问题 我通常习惯于“window.open”打开一个弹出窗口到一个新的URL。 如何打开一个窗口到一个新的 URL,使当前窗口变暗/变灰,并在关闭时移除阴影背景。 最好使用 jQuery 来做到这一点吗? 我可以在不使用 jquery 插件的情况下使用默认库吗? 我想做这样的事情,然后在卸载时“禁用”我的影子。 希望使用核心 jQuery 库或标准 javascript 调用。 我想避免使用除 jQuery 之外的任何插件。 var popup = window.open('http://google.com', 'popup'); showShadow(); $(window).unload(function() { if(!popup.closed) { disableShadow(); } }); 回答1 基本上,您可以打开弹出窗口并将该窗口设置为 beforeunload。 简而言之,是这样的: popup = window.open("", "name", "width=400, height=300") popup.onbeforeunload = function() { $('#shadow').hide();} 我为你制作了一个小提琴。 http://jsfiddle.net/DDksS/ 回答2 因此,您想使用 jQuery
  • 在JavaScript UI对话框中打开/关闭简单的ASP.NET MVC CRUD视图(Simple ASP.NET MVC CRUD views opening/closing in JavaScript UI dialog)
    问题 对于CRUD操作,我有各种简单的ASP.NET MVC视图,它们本身可以作为一个简单的网页正常运行。 现在,我将它们集成到网站本身(进入内容),并具有例如“创建新帖子”之类的链接,这些链接将在选定的Lightbox克隆中触发视图(尚不知道哪个是Colorbox或Thickbox,但没关系)。 我要实现的是,视图本身会以某种方式检测到它是在JavaScript UI对话框中打开的,因此将使用一种逻辑将呈现Form动作(最常见的是使用简单的Submit按钮进行POST),该逻辑将在动作已执行。 视图现在的工作方式是POST / Redirect / GET。 通过Web浏览器直接通过URL打开时,视图仍应支持此简单模式,但通过JavaScript对话框打开时,视图应呈现一些其他逻辑。 希望你理解我的问题。 任何帮助表示赞赏 回答1 您好运,我已经做到了! 因此,您需要的第一件事是使用新的ViewEngine处理呈现页面,而没有所有普通的页眉/页脚内容,这些内容会妨碍您的模态窗口。 最简单的方法是为模态窗口使用几乎为空的母版页。 您希望母版页切换逻辑不会出现在自定义ViewEngine中,因为否则,每个控制器方法在检测IsAjaxRequest()的整个位置都必须具有if()else()。 我喜欢干,撒哈拉沙漠干。 通过这种技术,我还具有非常优雅地降低性能的优势。
  • 关于 SimpleModal jQuery 插件的问题——初始打开后可以重新居中吗?(Question about SimpleModal jQuery plugin -- possible to re-center after initial open?)
    问题 我的问题与 SimpleModal jQuery 插件有关。 我打开模态窗口没有问题,但是一旦它打开,它就会停留在屏幕上 [居中] 的位置,但是它的内容正在发生变化,使其更高,因此不再居中。 有没有一种简单的方法可以重新对齐它,使其再次居中? 编辑:我认为通过显示两个屏幕截图有助于解释我的问题:之前和之后——基本上我使用 jQuery 的 slideUp 和 slideDown 功能来隐藏信用卡表单,具体取决于用户是通过现金/支票还是信用卡付款. 显然,对于信用卡字段,容器的高度增加了。 我尝试在 slideUp/slideDown 的回调元素中添加$("div#modal-element").setPosition()但无济于事 - 事实上setPosition()正在抛出一个 JS 错误,因为显然该函数不存在。 我总是尝试添加 autoResize 选项并将其设置为 true。 回答1 由于 SimpleModal 被操纵来处理窗口调整大小时的重新居中,最简单的方法是触发该事件。 在您的内容更改后,只需调用: $(window).resize(); 回答2 如果您在其中一个回调中,您可以访问所有函数和属性 - 因此您可以调用 setPosition() 来重新居中对话框。 例如: $(element).modal({ onShow: function (dialog) {
  • 关闭一个模态并一键打开一个新的模态(close one modal and open a new modal with one button)
    问题 我正在使用引导程序并有一个模态,我想链接到另一个模态。 我似乎无法弄清楚这一点,目前我正在使用modal.close()和.modal('show')但这不起作用。 $('a#to3heart').click(function(){ $('#portfolioModal2').modal({onShow: function (dialog) { $.modal.close() $('#portfolioModal1').modal('show'); return false; } }); }); 回答1 用: $("#modal1").modal('hide'); $("#modal2").modal('show'); 请参阅:http://getbootstrap.com/javascript/#modals 演示:http://jsfiddle.net/5qCm9/ 回答2 我尝试了上面发布的所有答案,最后似乎没有一个对我的情况有效,我写了这个。 这将隐藏屏幕上的任何活动模式并显示唯一点击的模式 $('[data-toggle="modal"]').on('click', function() { $('.modal').not($(this).data('target')).modal('hide'); }); 回答3 我有一个类似的问题,并用一个通用的 jQuery
  • 如何在提交表单之前制作模态确认对话框?(How to make a modal confirmation dialog before submitting a form?)
    问题 我是 web/javascript 编程的初学者,想知道是否有人可以在使用预定义按钮提交具有多个提交按钮的表单之前给我一个启动模式确认对话框的简单示例? 我偶然发现了 jQuery 和 SimpleModal,想知道它是否适合我的 ASP MVC 项目。 我最终得到了以下非工作代码,我认为我的第一个问题是不知道如何从对话框返回值?: <script type="text/javascript"> $(document).ready(function() { $("form").submit(function(ev) { return confirm("Confirm?"); }); }); function confirm(message) { $("#confirm").modal({ close: true, overlayId: "confirmModalOverlay", containerId: "confirmModalContainer", onShow: function modalShow(dialog) { dialog.overlay.fadeIn("slow", function() { dialog.container.fadeIn("fast", function() { dialog.data.hide().slideDown("slow");
  • Bootstrap模态在关闭后继续向身体添加填充物(Bootstrap Modals keep adding padding-right to body after closed)
    问题 我正在使用Bootstrap和Parse框架来构建一个小型Web应用程序。 但是那些Bootstrap模态在关闭后会继续向主体添加padding-right。 怎么解决呢? 我试图将这段代码放在我的javascript中: $('.modal').on('hide.bs.modal', function (e) { $("element.style").css("padding-right","0"); }); But it doesn't work. Does anybody know how to fix this? 我的代码: <button type="button" class="btn btn-lg btn-default" data-toggle="modal" data-target="#loginModal">Admin panel</button> <div id="loginModal" class="modal fade" role="dialog"> <div class="modal-dialog modal-sm"> <!-- Modal content --> <div class="modal-content"> <!-- header --> <div class="modal-header"> <button type="button"
  • 多种模态叠加(Multiple modals overlay)
    问题 我需要将叠加层显示在第一个模态上方,而不要显示在背面。 $('#openBtn').click(function(){ $('#myModal').modal({show:true}) }); <a data-toggle="modal" href="#myModal" class="btn btn-primary">Launch modal</a> <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" aria-hidden="true">×</button> <h4 class="modal-title">Modal title</h4> </div><div class="container"></div> <div class="modal-body"> Content for the dialog / modal goes here. <br> <br> <br> <br> <br> <a data-toggle="modal" href="#myModal2" class=
  • 首次打开后,Bootstrap 3 模式不会关闭(Bootstrap 3 modal doesn't close after first opening)
    问题 我认为这是 Bootstrap 本身的一个错误,因为即使在演示页面上我也遇到了这个问题。 如果您打开模态窗口,内置关闭按钮第一次起作用,但是如果您关闭模态并重新打开它,则关闭(和 X)按钮不会关闭模态,因此您必须单击外部关闭它。 您可以在 Bootstrap 演示页面上看到这一点: http://getbootstrap.com/javascript/#modals (向下滚动到“实时演示”并单击“启动演示模式”。关闭模式窗口一次,重新打开它,“关闭”按钮将不再起作用,直到页面刷新。) 有没有人找到解决方案,以便每次打开模态时关闭按钮都可以工作? 回答1 bootstrap 中的这个 bug 似乎是一个热门话题:https://github.com/twbs/bootstrap/issues/9362 我将更新我的引导程序,看看是否可以... 回答2 如果您喜欢我不想修改引导程序文件,您可以执行以下操作。 jQuery('[data-dismiss="modal"]').on('click', function(){ jQuery('.modal').hide(); jQuery('.modal-backdrop').hide(); }); 在您的 .modal('show'); 之后添加它; 称呼 回答3 这对我来说仍然是 Bootstrap 3 的一个问题
  • Bootstrap 模态问题 - 滚动被禁用(Bootstrap Modal Issue - Scrolling Gets Disabled)
    问题 我有一个模态,在该模态中,有一个下拉列表显示大的隐藏内容,它正在工作。 现在,当您打开下一个模态,堆叠在第一个模态的顶部并将其关闭时,下方的模态滚动将被禁用。 我创建了一个完整的示例,包括复制我面临的问题的步骤。 在这里你可以看到它。 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css" rel="stylesheet"> <title></title> <style> </style> </head> <body> <input type="button" data-toggle="modal" data-target="#modal_1" class="btn btn-lg btn-primary" value="Open Modal 1" > <div class="modal fade" id="modal_1"> <div class="modal-dialog modal-sm"> <div class="modal-content"> <div class=
  • 当引导模态关闭并重新打开时,如何重设模态?(How to reset the bootstrap modal when it gets closed and open it fresh again?)
    问题 我在引导程序模版中有一个列表框和一个按钮。 单击按钮时,新按钮将在模态的div内呈现。 当我关闭模态并重新打开它时,模态上执行的最后一个操作(如先前呈现的按钮)仍然存在于模态中。 如何重置模态,以便再次打开模态时,按钮不存在,用户可以再次从列表框中选择选项,然后单击按钮以呈现新按钮,依此类推。 <!-- Modal --> <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" > <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" id="myModalLabel">Select Language</h4> </div> <div class="modal-body">
  • 引导模式删除滚动条(bootstrap modal removes scroll bar)
    问题 当我在页面中触发模式视图时,它会触发滚动条消失。 这是一个令人讨厌的效果,因为当模式进入/消失时,背景页面开始移动。 有这种效果的治疗方法吗? 回答1 这是一项功能,当显示模态时,会将modal-open类添加到HTML body ,而在隐藏模态时将其删除。 这使滚动条消失了,因为引导css说 .modal-open { overflow: hidden; } 您可以通过指定 .modal-open { overflow: scroll; } 在您自己的CSS中。 回答2 我认为继承比滚动更好,因为当您打开模式时,它将始终使用滚动打开,但是当您没有任何滚动时,您将遇到相同的问题。 所以我只是这样做: .modal-open { overflow: inherit; } 回答3 我用了 .modal-open { overflow-y: scroll; } 在这种情况下,您避免显示水平滚动条 回答4 最好使用overflow-y:scroll并从正文中删除填充,然后将引导程序模态添加到页面正文中。 .modal-open { overflow:hidden; overflow-y:scroll; padding-right:0 !important; } 兼容IE浏览器: IE浏览器默认情况下执行相同的操作。 回答5 感谢上帝,我来过这个职位! 我正在拔头发
  • 打开模态时防止BODY滚动(Prevent BODY from scrolling when a modal is opened)
    问题 当我的网站上的Modal(来自http://twitter.github.com/bootstrap)打开时,我希望我的身体在使用鼠标滚轮时停止滚动。 我试图在模式打开时调用下面的一段javascript,但没有成功 $(window).scroll(function() { return false; }); 和 $(window).live('scroll', function() { return false; }); 请注意,我们的网站已放弃了对IE6的支持,但IE7 +需要兼容。 回答1 在显示模态对话框时,Bootstrap的modal自动将modal-open类添加到主体,并在隐藏对话框时将其删除。 因此,您可以将以下内容添加到CSS中: body.modal-open { overflow: hidden; } 您可能会争辩说,上面的代码属于Bootstrap CSS代码库,但这是将其添加到您的站点的简单解决方案。 2013年2月8日更新现在,这已在Twitter Bootstrap 2.3.0版中停止工作-他们不再向主体添加modal-open类。 一种解决方法是在要显示模式时将类添加到主体,并在关闭模式时将其删除: $("#myModal").on("show", function () { $("body").addClass("modal-open")
  • “#”(井号、数字符号)如何关闭模态框?(How does “#” (hash mark, number sign) close a modal box?)
    问题 我最近阅读了这篇关于创建纯 CSS 模态框的文章: 使用 HTML5 和 CSS3 创建模态窗口 我已经测试了代码,效果很好。 我将它用于我网站的联系方式和注册/登录页面。 有一部分代码我还没有完全掌握。 这怎么... <a href="#close" title="Close" class="close">X</a> ...关闭盒子? CSS 中没有任何内容可以隐藏或删除具有close类的元素,也没有任何针对href 、 #close或title类似函数。 它只是一行代码本身,当用户点击它时,模态窗口关闭(我可能会添加简洁优雅)。 很明显,“关闭”文本无关紧要。 文本可以是任何内容并且该功能有效。 但是如果删除“#”,样式将失败,但窗口仍会关闭。 那么“#”有什么特别之处呢? .modalDialog { position: fixed; font-family: Arial, Helvetica, sans-serif; top: 0; right: 0; bottom: 0; left: 0; background: rgba(0, 0, 0, 0.8); z-index: 99999; opacity: 0; transition: opacity 400ms ease-in; pointer-events: none; } .modalDialog:target {
  • Jquery UI 模态对话框(Jquery UI modal dialogs)
    问题 我有 Jquery UI 模式对话框的问题。 我有模态对话框(dialogA),它可以创建另一个模态对话框(dialogB)。 在第二次创建和关闭 dialogB 之后,dialogA 的覆盖消失了。 这是我的代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head><link type="text/css" rel="Stylesheet" href="ui-lightness/jquery-ui-1.8.custom.css" /> <script type="text/javascript" src="jquery-1.4.2.min.js"></script> <script type="text/javascript" src="jquery-ui-1.8.custom.min.js"></script> <script type="text/javascript"> function createDialog(dialogId) { $('#' + dialogId)
  • 如何彻底销毁引导模态窗口?(how to destroy bootstrap modal window completely?)
    问题 我已经将模态窗口用于向导实现,该过程大约有4,5个步骤。 我需要在最后一步(onFinish)和OnCancel步骤之后完全销毁它,而无需刷新页面。 我当然可以隐藏它,但是当我再次打开它时,隐藏模式窗口将还原所有内容。 有人可以帮我解决这个问题吗? 谢谢任何提示答案对我都有帮助。 回答1 如果是bootstrap 3,则可以使用: $("#mimodal").on('hidden.bs.modal', function () { $(this).data('bs.modal', null); }); 回答2 注意:此解决方案仅适用于版本3之前的Bootstrap。有关Bootstrap 3的答案,请参考user2612497。 您想要做的是: $('#modalElement').on('hidden', function(){ $(this).data('modal', null); }); 这将导致模态每次显示时都进行初始化。 因此,如果您正在使用远程内容加载到div或其他内容中,则每次打开时都会重新执行。 每次隐藏模态实例后,您都只是销毁它。 或者,每当您想要触发元素的销毁(以防实际上并非每次都隐藏它)时,您只需要调用中间行即可: $('#modalElement').data('modal', null); Twitter引导程序查找其实例位于data属性中