一、JS重定向URL
URL是指定位於互聯網上某一台計算機的完整地址,如果需要在JS中進行重定向到指定的URL,則可以使用以下代碼:
window.location.href="http://www.example.com";
上面的代碼將當前頁面重定向到指定的URL上。
也可以將重定向的URL存儲在變量中:
var url = "http://www.example.com"; window.location.href=url;
在實際應用中,有時還需要在URL後面添加參數,可以通過以下方式實現:
var url = "http://www.example.com?id=123"; window.location.href=url;
二、JS重定向不顯示中間地址
在進行JS重定向時,有時會遇到顯示中間地址的問題,可以通過以下方式解決:
window.location.replace("http://www.example.com");
上面的代碼將當前頁面重定向到指定的URL上,並且不會在瀏覽器歷史記錄中留下記錄。
三、JS重定向JS
有時候需要在JS中對JS進行重定向,可以使用以下代碼實現:
setTimeout(function(){ window.location.href="http://www.example.com" },3000);
上面的代碼表示在3秒之後將當前頁面重定向到指定的URL上。
四、JS重定向跳過當前頁
有時希望重定向跳過當前頁,可以通過以下方式實現:
window.location.replace("http://www.example.com");
如果是從指定頁面跳轉到目標頁面,則可以使用以下代碼:
var referer = document.referrer; if(referer.indexOf("http://www.example.com")!=-1){ window.location.replace("http://www.example1.com"); } else{ window.location.replace("http://www.example2.com"); }
上面的代碼表示如果從example.com跳轉到example1.com,否則跳轉到example2.com。
五、JS重定向頁面
假設我們有一個頁面需要重定向到另一個頁面,並且需要保留當前頁面中的所有數據,可以通過以下方式實現:
function redirect(){ var form = document.createElement("form"); form.setAttribute("method", "post"); form.setAttribute("action", "http://www.example.com"); var input = document.createElement('input'); input.setAttribute("name", "data"); input.setAttribute("value", "redirect"); form.appendChild(input); document.body.appendChild(form); form.submit(); }
上面的代碼創建一個表單,並將需要保留的數據作為表單中的參數,然後提交表單。
六、JS重定向做免登陸
在一些網站中,用戶登錄後需要進行redirect操作,但是有些網站需要登錄之後才能看到需要重定向的內容。此時可以通過以下方式實現:
if(!isLogin()){ window.location.href="http://www.example.com/login.html"; } else{ window.location.href="http://www.example.com/page.html"; } function isLogin(){ var token = localStorage.getItem("token"); if(token){ return true; } else{ return false; } }
上面的代碼表示如果用戶沒有登錄,則重定向到登錄頁,否則跳轉到目標頁面。
七、JS重定向和轉發
JS重定向和轉發的區別在於,重定向是完全重新載入一個頁面,而轉發則是只改變頁面的URL地址。
下面是重定向的代碼實例:
window.location.href="http://www.example.com";
下面是轉發的代碼實例:
history.pushState({},"","http://www.example.com");
八、JS重定向頁面的方法
除了以上介紹的方式,還有以下幾種JS重定向頁面的方法:
- 使用history.back()返回上一頁。
- 使用history.forward()前進到下一頁。
- 使用location.reload()重新載入當前頁。
- 使用location.hash定位到指定元素的位置。
九、JS重定向登錄驗證
在一些後台管理系統中需要進行登錄驗證,假設我們有一個需要登錄驗證的頁面,可以通過以下方式實現:
if(!isLogin()){ window.location.href="http://www.example.com/login.html"; } else{ //進行相應操作 } function isLogin(){ var token = localStorage.getItem("token"); if(token){ return true; } else{ return false; } }
上面的代碼表示如果用戶沒有登錄,則重定向到登錄頁,否則進行相應操作。
十、JS重定向瀏覽器地址選取
在一些需要上傳文件的系統中,需要選擇文件後重定向到指定頁面,並附帶文件路徑,可以通過以下方式實現:
function redirect(obj){ var file = obj.files[0]; var url = "http://www.example.com?file="+encodeURIComponent(file.webkitRelativePath); window.location.href = url; }
上面的代碼表示在選擇文件後獲取文件路徑,並將其作為參數附加在URL中,然後進行重定向。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/295462.html