首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >物化CSS:如何防止可折叠的默认行为?

问物化CSS:如何防止可折叠的默认行为?
EN

Stack Overflow用户
提问于 2015-08-07 19:58:05
回答 2查看 2.6K关注 0票数 1

我想为导入过程中的步骤使用Materialize CSS可折叠列表。下一步的详细信息仅在第一步完成时才可见,因此我希望在单击面板时禁用折叠面板,并在第一步完成时手动触发事件。

我试过onclick="return false;",但它不工作。

还有其他想法吗?

EN

回答 2

Stack Overflow用户

发布于 2015-11-12 19:52:20

关闭可折叠的事件处理程序。如果要使用默认游标,请将css属性“pointer-events”设置为“none”。

代码语言:javascript
复制
var $panel_headers = $('.collapsible').find('> li > .collapsible-header');
$('.collapsible').off('click.collapse', '.collapsible-header');
$panel_headers.off('click.collapse').css('pointer-events', 'none');

然后可以通过将“display”属性设置为“block”来显示面板;

代码语言:javascript
复制
$('.collapsible-body').css('display', 'block');

此示例适用于要演示的页面上的所有可折叠项。

修改选择器以操作特定的可折叠对象。

票数 2
EN

Stack Overflow用户

发布于 2020-11-13 21:21:13

我这样做的方式是根本不初始化可折叠的,并手动控制何时显示collapsible-body。

例如,您将如何使用开关(使用Vanilla JS)控制可折叠:

代码语言:javascript
复制
const addEmailCCSwitch = document.getElementById("add-email-cc-switch")
addEmailCCSwitch.addEventListener("click", (e) => {
  const isChecked = addEmailCCSwitch.querySelector('input').checked;
  if (isChecked) {
    document.querySelector('.collapsible-body').style.display = "block"
  } else {
    document.querySelector('.collapsible-body').style.display = "none"
  }
});

下面是一个包含函数示例的代码:https://codepen.io/dsudomoin/pen/zYBeYyW

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31877186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档