/** JS方式 **/ location.hash = 'hash'; //设置hash,该代码执行后URL后面增加“#hash”字符串 console.log(location.hash); //获取hash
/** HTML方式 **/ <a href="#hash" rel="external nofollow" >点击改变hash</a> <!-- 点击后URL后面增加“#hash”字符串 -->
<article class="container"> <section id="page1" class="page cur">第一页</section> <section id="page2" class="page">第二页</section> <section id="page3" class="page">第三页</section> </article> <nav id="nav" class="bottom-nav"> <ul> <li>第一页</li> <li>第二页</li> <li>第三页</li> </ul> </nav>
.page{ display: none; /* 其他样式省略 */}
.page.cur{ display: block;}
/* 其他样式省略 */
window.onload = function () {
var nav = document.getElementById('nav');
var navLi = nav.getElementsByTagName('li');
for(var i = 0,len = navLi.length; i < len; i++){
(function (i) {
navLi[i].onclick = function () { //点击nav中的li,改变hash值
location.hash = 'page' + (i+1);
}
})(i);
}
location.hash = 'page1'; //每次页面重新加载时都回到page1
window.onhashchange = function (e) {
//当hash变化时,执行hashchange事件,该事件具有oldURL和newURL两个事件属性,分别代表前一个URL和目前的URL
var oldHash = e.oldURL.split('#')[1]; //取得前一个hash
var newHash = e.newURL.split('#')[1]; //取得当前hash
var oldPage = document.getElementById(oldHash);
var newPage = document.getElementById(newHash);
oldPage.classList.remove('cur'); //隐藏前一个page
newPage.classList.add('cur'); //显示当前page
};
}
/**** 前面代码省略 ****/
location.hash = 'page1';
var oldHash = location.hash;
window.onhashchange = function (e) {
var newHash = location.hash;
var oldPage = document.querySelector(oldHash);
var newPage = document.querySelector(newHash);
oldPage.classList.remove('cur');
newPage.classList.add('cur');
oldHash = newHash;
};
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有