JavaScript(js)中如何实现从一个页面重定向跳转另一个指定的页面呢?
2 个回答
-
js(JavaScript)实现从一个页面重定向跳转到另一个页面的方式有多种,比如:
1.基于windows.location对象的方式
// window.location // 相当于一个HTTP重定向请求 window.location.replace('http://www.example.com') window.location.assign('http://www.example.com') // 相当于点击页面的一个链接 window.location.href = 'http://www.example.com' document.location.href = '/path'
2.基于window.history的方式
// window.history window.history.back() window.history.go(-1)
3.基于self.location或top.location属性方式
// Probably no bueno self.location = 'http://www.example.com'; top.location = 'http://www.example.com';
4.基于jQuery的方式
// jQuery $(location).attr('href','http://www.example.com') $(window).attr('location','http://www.example.com') $(location).prop('href', 'http://www.example.com')
5.仅旧版IE支持的方式
// window.navigate; // 慎用:仅IE支持 window.navigate('top.aspx')
-
或者,为了解决跨浏览的兼容性问题,还可以写一个通用的页面重定向跳转的函数,如下:
function redirect (url) { var ua = navigator.userAgent.toLowerCase(), isIE = ua.indexOf('msie') !== -1, version = parseInt(ua.substr(4, 2), 10); // 兼容IE8及以下浏览器 if (isIE && version < 9) { var link = document.createElement('a'); link.href = url; document.body.appendChild(link); link.click(); } else { window.location.href = url; } }
调用示例:
redirect('anotherpage.aspx');