jquery - 如何在 jQuery 中单击按钮时触发 Accordion?

标签 jquery jquery-ui button hide accordion

我想在单击最小化按钮时触发 Accordion ,或更具体地说,当我们单击最小化按钮时,对话框的内容部分将被隐藏。

HTML 代码:

<div id="dialog" title="Title">
<div>
<p>Some Content</p>
</div>
</div>
<button>Minimize</button>

脚本代码:

$(function (){
$("#dialog").dialog();
$("button").button({icons:{primary: "ui-icon-minus"},text: false}).insertBefore('.ui-dialog-titlebar-close').click(function(){ 
$("#dialog").accordion({collapsible: true});
});
});

最佳答案

您需要触发对话框小部件上的 Accordion 而不是原来的 <div>元素。您还需要显式指定标题栏作为 Accordion 标题:

$("#dialog").dialog("widget").accordion({
    collapsible: true,
    header: "> .ui-dialog-titlebar"
});

您可以在 this fiddle 中测试它.

编辑: Accordion 可能不是将对话框折叠到其标题的最佳选择,特别是如果您只希望按钮触发效果的话。也许你可以只使用 slideToggle()相反:

$("#dialog").slideToggle("fast");

更新了 fiddle here .

关于jquery - 如何在 jQuery 中单击按钮时触发 Accordion?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6479473/

相关文章:

javascript - 处理大量元素时隐藏/显示功能的性能极慢

jquery-ui - Jquery UI 按钮在刷新时被禁用

html - 在我的 HTML/CSS 代码上放置一个虚拟的 Facebook 登录按钮

css - 按钮 CSS 奇怪的结果

javascript - Php脚本自动被多次调用

php - json_encode 不使用 html 字符串作为值

jquery - 重构 link_to_function 的最佳 UJS 方法是什么?

jquery-ui - jQuery UI.Autocomplete 搜索方法不会关闭结果列表

javascript - 由 Knockout JS 支持的 Accordion 内部 JQuery UI 可排序的困难

java - 按钮仅在第二次单击时起作用