锚点值(#)页面不跳转 ,局部内容innerHTML内容替换
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<a href="#/login">点我登录</a>
<a href="#/register">点我注册</a>
<div id="content"></div>
<script>
// 原理:就是锚点值页面不跳转 + 局部内容innerHTML内容替换
var div = document.getElementById("content");
// hashchange事件 URL上的部分锚点数据(#xxx)改变可以获取到这个事件 能够在url改变的同时不刷新
window.addEventListener("hashchange",function(){
console.log(location.hash)
// 根据不同的锚点值,做出不同的显示
switch(location.hash){
case "#/login":
div.innerHTML = "<h1>登录界面</h1>";
break;
case "#/register":
div.innerHTML = "<h1>注册界面</h1>";
break;
}
})
</script>
</body>
</html>