Materialize SideNav生成多个#sidenav-overlay

时间:2015-09-15 16:45:01

标签: materialize

我正在使用Materialize,sidenav在点击sidenav时会创建多个叠加层。

 <div id="sidenav-overlay" style="opacity: 1;" class=""></div>
 <div id="sidenav-overlay" style="opacity: 1;" class=""></div>
 <div id="sidenav-overlay" style="opacity: 1;" class=""></div>

我找到了修补程序here并从here替换了sideNav.js文件。但它仍然没有任何好处。

是否有人陷入类似情况并找到解决方案?

4 个答案:

答案 0 :(得分:3)

SideNav后面出现多个叠加层的原因是因为实体化$('.button-collapse').sideNav()在同一元素上多次运行。

快速修复此问题是在重新初始化materialize的sideNav之前从元素中删除所有以前的click()事件,如下所示:

$(".button-collapse").off('click').sideNav({ --yourOptions-- });

注意:我不确定“.sideNav()”调用可能在这里添加了哪些其他功能,可能有更好/更具体的方法来删除以前的init。

答案 1 :(得分:0)

你正在编程什么语言? 我花了类似于asp.net的东西,错误就是声明了这个:

List<Demo> list = ids
    .SelectMany(s => helper.method(s.ID))
    .Distict(new DemoComparer())
    .ToList();

在MasterPage和ChildPages中。现在只声明MasterPage,问题就解决了。 希望对你有所帮助, 问候

答案 2 :(得分:0)

对于那些在Drupal上使用Materialise Framework的人,请确保不要通过Grunt或其他任务管理器意外地加载Materialize / Velocity JS的另一个副本。这会导致叠加层像疯了一样叠加。

答案 3 :(得分:0)

这是我在遇到类似问题时尝试过的:

#sidenav-overlay{ opacity: 0;}

#sidenav-overlay {background-color: transparent;}
相关问题