在 IE 8 中,window.location.href
并不能直接用于跳转。你可以使用 window.location
对象的 protocol
和 host
属性,结合 window.location.replace
方法实现页面跳转。
例如:
// 获取当前页面 URL 对象
var currentURL = window.location.href;
// 判断是否存在页面参数
if (currentURL.indexOf('?') > -1) {
var paramsString = currentURL.split('?')[1];
var params = paramsString.split('&');
}
// 跳转到指定页面
window.location.replace(currentURL + '&goto=' + encodeURIComponent(targetURL));
需要注意的是,window.location.replace
方法会替换当前页面,而不是跳转到新页面,因此需要使用 encodeURIComponent
函数对 targetURL
进行编码。此外,由于 window.location.replace
方法会替换当前页面,因此如果 targetURL
与当前页面 URL 相同,则会直接跳转到当前页面。
领取专属 10元无门槛券
手把手带您无忧上云