我试图将IE8(及向下)重定向到另一个页面。我目前有以下内容:
<!--[if lt IE 9]>
<script type="text/javascript">
var oldURL = document.location.href;
var code = url.slice(-3);
window.location = "http://www.example.com/" + code;
</script>
<![endif]-->
当然,如果IE8访问者在地址上,这是有效的:
http://www.example.com/index.htm#!/ABC
但不是如果他们在:
http://www.example.com/index.htm#!/ABC/subpage或http://www.example.com/index.htm#!/ABC/subpage/anotherpage
我想要的代码总是遵循#!/但我无法控制它的踪迹。
我在这里找到了一些正则表达式帮助:http://txt2re.com/index-javascript.php3?s=http://www.example.com/index.htm%23!/ABC&18但是如果URL结构将来发生变化,解决方案似乎有点松懈。
我期望上面每个例子中的输出ABC。
这下一步是什么?我想了解最稳定的解决方案。
答案 0 :(得分:2)
在哈希值上使用split,它返回由&#39; /&#39;
分割的url字符串数组http://www.example.com/index.htm#!/ABC/subpage/anotherpage
var urlArray = window.location.hash.split('/');
["#!", "ABC", "subpage", "anotherpage"]
urlArray[1] -> "ABC"
答案 1 :(得分:0)
也许你想用:
window.location.hash