前端路由
2016-06-08 18:12
375 查看
一、方案:通过hash
目录结构如图:
只有main,html是完整的html,其他两个都是html片段
①main.html:
②about.html
③brand.html
二、方案:通过HTML5的新api
html5中戏赠的两个api:
history.pushState
history.replaceState
都可以将页面的url在当前域内任意修改,配合window.onpopstate事件同样可以实现简单的前端路由
目录结构如图:
只有main,html是完整的html,其他两个都是html片段
①main.html:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>home</title> </head> <body> <h4>欢迎来到前端路由实现方案主页</h4> <a href="#about">跳转到about</a> <a href="#brand">跳转到brand</a> <script src="../../jquery/jquery-2.2.3.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> window.onhashchange=function(){ var target=location.hash.slice(1)+".html" $.ajax({ type:"get", url:target, dataType:"html", success:function(data){ $("body").html(data); } }) } </script> </body> </html>
②about.html
<h3>这里是关于我们</h3> <a href="#main">跳转到home</a> <a href="#brand">跳转到brand</a>
③brand.html
<h3>品牌栏目</h3> <a href="#main">跳转到home</a> <a href="#about">跳转到about</a>
二、方案:通过HTML5的新api
html5中戏赠的两个api:
history.pushState
history.replaceState
都可以将页面的url在当前域内任意修改,配合window.onpopstate事件同样可以实现简单的前端路由
相关文章推荐
- 实例讲解JavaScript中instanceof运算符的用法
- [前端框架]React
- nodejs从零开始--菜鸟爬坑之旅
- javascript浅谈数组的声明
- Bootstrap输入框组
- WordPress init admin_init 加载多次js文件后,js扩展不能运行
- js cookie 读和写
- 前端画面-下拉后滚动
- jQuery中checkbox的checked属性
- html弹出浮动层
- JavaScript DOM(三) Element 类型
- 网页展示本地图片
- node express安装
- javascript 常用函数(二)
- NodeJS 学习记录
- [Effective JavaScript 笔记]第29条:避免使用非标准的栈检查属性
- 使用caffe训练自己的数据
- JQuery常用函数及功能小结
- 安装caffe
- CSS 换行知多少: word-wrap && word-break && white-space && word-spacing