使用javascript重定向网址

时间:2017-12-19 06:49:06

标签: javascript html redirect

是否可以使用javascript重定向网址的主机名?

如果网址包含"内容/文章",则它应保留在同一网址中。否则,它应该将所有其他URL从www重定向到www1。

我认为我得到了" / content / articles" 部分,但 window.location.replace 似乎无法正常工作。

例如:



<script type="text/javascript">
	window.onload = function() {
        	if (window.location.href.indexOf("/content/articles") > -1) {
        		// Do not redirect                                
        	} else {
			// Redirect from www to www1
			window.location.replace(window.location.protocol + "//" + window.location.hostname.replace("www", "www1")+window.location.pathname);
		}
        }
</script>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:4)

您可以使用window.location.href.replace()

let url = window.location.href.replace('://www','://www1')
console.log(url);

以下是示例

<script type="text/javascript">
	window.onload = function() {
        	if (window.location.href.indexOf("/content/articles") > -1) {
        		// Do not redirect                                
        	} else {
			// Redirect from www to www1
			window.location.href = window.location.href.replace('://www','://www1');
		}
        }
</script>

replace('://www','://www1')也很好,因为它只替换第一次出现

答案 1 :(得分:0)

我无法评论所以我在这里发布@shalitha的答案是正确的,并且替换不会有任何问题,因为只有替换才会替换第一个实例。如果要替换所有实例,则需要向其添加g(全局),这是我们不想要的。 详情 - https://www.w3schools.com/jsref/jsref_replace.asp