如何完全隐藏jQuery Accordion?调用hide()方法触发类型错误
完全隐藏jQuery Accordion的正确方法
你遇到的错误是因为写法有误——$(...).accordion.hide() 是错误语法,.accordion() 是jQuery UI用于初始化或操作折叠面板组件的方法,不能直接将.hide()挂在其后调用。想要彻底隐藏整个Accordion,直接操作它的容器元素即可,以下是几种可行方法:
直接使用jQuery的
.hide()方法:$("#accordionName-" + tabId).hide();这个方法会将整个Accordion容器设置为
display: none,直接让它从页面上消失,实现彻底隐藏的效果。若需先折叠所有面板再隐藏(可选操作,非必须):
如果希望隐藏前先把所有面板折叠起来,可以先调用accordion的折叠方法,再隐藏容器:// 折叠所有面板 $("#accordionName-" + tabId).accordion("option", "active", false); // 隐藏整个Accordion $("#accordionName-" + tabId).hide();用CSS直接设置显示属性:
也可以通过修改CSS来隐藏:$("#accordionName-" + tabId).css("display", "none");
简言之,你不需要通过.accordion()方法调用hide,直接对选中的Accordion容器元素使用jQuery的隐藏方法,就能实现彻底隐藏的效果,而非仅仅折叠面板。
内容的提问来源于stack exchange,提问作者jpolo
相关产品推荐
相关产品推荐

