javascript - 关闭模式后如何完全退出模式
问题描述
我的页面中有这个模型,它工作正常,但是当我关闭它时,url 仍然有它的名字,比如#modalname。这是我的代码:
<script>
var modal = document.getElementById("myModal");
var btn = document.getElementById("adm");
var span = document.getElementsByClassName("close")[0];
btn.onclick = function() {
modal.style.display = "block";
}
span.onclick = function() {
modal.style.display = "none";
}
window.onclick = function(event) {
if (event.target == modal) {
modal.style.display = "none";
}
}
</script>
这是html代码:
<div id="myModal" class="modal">
<div class="modal-content">
<span class="close">×</span>
<center>
<label style="font-size: 25px; color:#2193b0;"><i class="fas fa-lock"></i>Enter Admin Password to access Admin Section</label>
<br><br>
<input type="password" id="password" name="" class="input-text" autocomplete="off" style="width:500px;height: 50px;">
<br>
<a href="./admin/index.php" onclick="javascript:return validatePass()"><button class="button" name="check"><span>GO</span></button></a>
<br></center>
</div>
</div>
这是我访问模式的方式:
<li id="adm"><i class="fas fa-lock"></i><a href="#myModal">Admin</a></li>
这是我的网址在我关闭后的样子:
http://localhost/project/index.php#myModal
解决方案
我想知道为什么你必须使用 <a href="#myModal> 来打开模式,只需用按钮替换它:
<li id="adm"><i class="fas fa-lock"></i><button>Admin</button></li>
如果您不想使用按钮,因为它是默认样式,您可以尝试使用<span>
标签:
<li id="adm"><i class="fas fa-lock"></i><span style="cursor:pointer">Admin</span></li>
对于<a>
标签:
<li id="adm"><i class="fas fa-lock"></i><a role="button">Admin</a></li>
推荐阅读
- python - Pandas:新列中与前行差异的最大值列表
- ios - 自我调整 UICollectionView `reloadItems(at: IndexSet)` 将在其他部分单元格上调用 `cellForItemAt`
- dart - 为什么属性需要 Dart 中非语法糖初始值设定项的默认值?
- javascript - 不同的javascript方法中的不同正则表达式行为
- flutter - Flame 如何支持 Rive 动画?
- html - 为美国观众使用适当的语言子标签
- php - 如何通过改变捐赠总额来减少现金分配总额
- jenkins-plugins - jenkins 自定义插件 java 代码从从机读取文件
- r - R 如何获取美国市场的最后交易日?
- c# - 如何修复 Assets\Scripts\PlayerController.cs(48,9):错误 CS0103:当前上下文中不存在名称“CheckIfWallSliding”?