使用固定导航在页面加载时实现 css 模式打开 - 不工作
Materialize css modal open on page load with fixed nav - not working
我正在使用 Materialize CSS 并且我的站点上有多个模式。其中一些我想在加载特定的新页面时打开。一切正常,然后我切换到固定的 nav
,突然打开的命令不起作用。
似乎该功能正在运行,但它没有将模态更改为 display: block
,因此它就像打开一样,但没有任何可见的东西 body
overlay
已开启无法滚动
我已经尝试了多种不同的方法来实现 modal.open();
,据我所知,某些东西阻碍了函数的运行并覆盖了一些样式。
我很茫然。感谢任何帮助。
<body>
<!-- NAVIGATION --->
<header>
<div class="navbar-fixed">
<nav>
<div class="nav-wrapper">
<div class="row">
<div class="col s7 m2 valign-wrapper">
<a class="modal-trigger" href="#login"><img src="/images/Logo.png" alt="" class="loginLogo"></a>
</div>
<div class="col s5 m3 offset-m7 valign-wrapper">
<ul>
<li><button id="successBtn" data-target="signUpSuccess" class="btn btn-signUp btn-success modal-trigger">Sign up</button></li>
</ul>
</div>
</div>
</div>
</nav>
</div>
<!-- Modal Structure -->
<div id="signUpSuccess" class="modal">
<div class="modal-content">
<div class="row">
<div class="col s12">
<h4>You're signed up!</h4>
<p>We will notify you soon.</p>
</div>
</div>
</div>
</div>
Javascript:
$(document).ready(function(){
$('.modal').modal();
});
$(document).ready(function(){
$("#signUpSuccess").modal();
$("#signUpSuccess").modal("open");
});
重申 - 单击时模态框仍在工作,但 #signUpSuccess
模态框未在加载时打开,它在更改为 navbar-fixed
之前一直在工作。
具体化CSS:https://materializecss.com/modals.html
我希望这是有道理的。
这可以通过 instance.open()
来完成。
<script>
document.addEventListener('DOMContentLoaded', function () {
var Modalelem = document.querySelector('.modal');
var instance = M.Modal.init(Modalelem);
instance.open();
});
</script>
查看文档Materialize Modals,动画有很多选项。您还应该尝试使用 vanilla JS,因为 jQuery 不再是依赖项。
我正在使用 Materialize CSS 并且我的站点上有多个模式。其中一些我想在加载特定的新页面时打开。一切正常,然后我切换到固定的 nav
,突然打开的命令不起作用。
似乎该功能正在运行,但它没有将模态更改为 display: block
,因此它就像打开一样,但没有任何可见的东西 body
overlay
已开启无法滚动
我已经尝试了多种不同的方法来实现 modal.open();
,据我所知,某些东西阻碍了函数的运行并覆盖了一些样式。
我很茫然。感谢任何帮助。
<body>
<!-- NAVIGATION --->
<header>
<div class="navbar-fixed">
<nav>
<div class="nav-wrapper">
<div class="row">
<div class="col s7 m2 valign-wrapper">
<a class="modal-trigger" href="#login"><img src="/images/Logo.png" alt="" class="loginLogo"></a>
</div>
<div class="col s5 m3 offset-m7 valign-wrapper">
<ul>
<li><button id="successBtn" data-target="signUpSuccess" class="btn btn-signUp btn-success modal-trigger">Sign up</button></li>
</ul>
</div>
</div>
</div>
</nav>
</div>
<!-- Modal Structure -->
<div id="signUpSuccess" class="modal">
<div class="modal-content">
<div class="row">
<div class="col s12">
<h4>You're signed up!</h4>
<p>We will notify you soon.</p>
</div>
</div>
</div>
</div>
Javascript:
$(document).ready(function(){
$('.modal').modal();
});
$(document).ready(function(){
$("#signUpSuccess").modal();
$("#signUpSuccess").modal("open");
});
重申 - 单击时模态框仍在工作,但 #signUpSuccess
模态框未在加载时打开,它在更改为 navbar-fixed
之前一直在工作。
具体化CSS:https://materializecss.com/modals.html
我希望这是有道理的。
这可以通过 instance.open()
来完成。
<script>
document.addEventListener('DOMContentLoaded', function () {
var Modalelem = document.querySelector('.modal');
var instance = M.Modal.init(Modalelem);
instance.open();
});
</script>
查看文档Materialize Modals,动画有很多选项。您还应该尝试使用 vanilla JS,因为 jQuery 不再是依赖项。