物化CSS sidenav'选项'未定义

Sag*_*ang 9 html javascript css css3 materialize

我使用以下代码来找到materializecss网站中的NavBar.

<nav>
    <div class="nav-wrapper">
      <a href="#!" class="brand-logo">Logo</a>
      <a href="#" data-target="mobile-demo" class="sidenav-trigger"><i class="material-icons">menu</i></a>
      <ul class="right hide-on-med-and-down">
        <li><a href="sass.html">Sass</a></li>
        <li><a href="badges.html">Components</a></li>
        <li><a href="collapsible.html">Javascript</a></li>
        <li><a href="mobile.html">Mobile</a></li>
      </ul>
    </div>
</nav>

<ul class="sidenav" id="mobile-demo">
    <li><a href="sass.html">Sass</a></li>
    <li><a href="badges.html">Components</a></li>
    <li><a href="collapsible.html">Javascript</a></li>
    <li><a href="mobile.html">Mobile</a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

文档说使用以下JavaScript代码来初始化插件.

document.addEventListener('DOMContentLoaded', function() {
    var elems = document.querySelectorAll('.sidenav');
    var instances = M.Sidenav.init(elems, options);
  });
Run Code Online (Sandbox Code Playgroud)

但是,当它运行时说

"选项"未定义.

我不想为此目的使用jQuery.我怎样才能解决这个问题?

wsc*_*rge 15

因为options你的js代码中没有变量.相反,使用{}默认选项,如下所示:

document.addEventListener('DOMContentLoaded', function() {
  var elems = document.querySelectorAll('.sidenav');
  var instances = M.Sidenav.init(elems, {});
});
Run Code Online (Sandbox Code Playgroud)

如果您确实想要更改任何默认值,请在此处记录:

{
    edge: 'left',
    draggable: true,
    inDuration: 250,
    outDuration: 200,
    onOpenStart: null,
    onOpenEnd: null,
    onCloseStart: null,
    onCloseEnd: null,
    preventScrolling: true
}
Run Code Online (Sandbox Code Playgroud)

  • 快乐是我的。别担心,这也是他们的错误。他们不应该在他们的文档中添加任何无效代码。 (3认同)