路由
<li
><a href
="#/red">turn red
</a
></li
>
<li
><a href
="#/blue">turn blue
</a
></li
>
<li
><a href
="#/green">turn green
</a
></li
>
function Router() {
this.routes
= {};
this.currentUrl
= '';
}
Router
.prototype
.route = function(path
, callback
) {
this.routes
[path
] = callback
|| function(){};
};
Router
.prototype
.refresh = function() {
console
.log(location
.hash
.slice(1));
this.currentUrl
= location
.hash
.slice(1) || '/';
if(this.currentUrl
&&this.currentUrl
!='/'){
this.routes
[this.currentUrl
]();
}
};
Router
.prototype
.init = function() {
window
.addEventListener('load', this.refresh
.bind(this), false);
window
.addEventListener('hashchange', this.refresh
.bind(this), false);
}
window
.Router
= new Router();
window
.Router
.init();
使用
Router
.route('/green', function () {
$(".content").css('background-color','green')
});
**原生js 获取路由参数
**
方法一
function getQueryString(name
) {
var reg
= new RegExp("(^|&)" + name
+ "=([^&]*)(&|$)", "i");
var r
= window
.location
.search
.substr(1).match(reg
);
if (r
!= null) return decodeURI(r
[2]);
return null;
}
var idCode
= getQueryString('id');
var title
= getQueryString('title');
$(".nav h3").text(title
);
方法二
var idArray
= window
.location
.search
.split("=");
var id
= idArray
[1];
转载请注明原文地址: https://lol.8miu.com/read-30662.html