我正在使用以下腳本將頁面的訪問者重定向到第一次訪問的另一個頁面,但它首先加載index.html頁面,然後觸發重定向。任何人都可以指導我如何在頁面加載之前觸發此腳本?如何在頁面加載之前製作JS頁面重定向觸發器
<script type="text/javascript">
function redirect(){
var thecookie = readCookie('doRedirect');
if(!thecookie){window.location = '/coming-soon.html';
}}
function createCookie(name,value,days){if (days){
var date = new Date();date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name){
var nameEQ = name + "=";var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++){
var c = ca[i];while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);}
return null;
}
window.onload = function(){redirect();createCookie('doRedirect','true','1');}
</script>
(JS的代碼段這裏使用從Stack Overflow: JS to redirect to a splash page on first visit拍攝)
感謝。
不要在'window.onload'回調中執行此操作。只要將這段代碼放在head標籤中,那麼瀏覽器就會在解析它的時候運行它。此外,您最好在重定向之前創建cookie,以確保其執行。 – Tommi
澄清,你的意思是改變最後一行? 'function(){redirect(); createCookie('doRedirect','true','1');}' – jasonbradberry
對不起,請不要回答您最後的問題。這是什麼」? – Tommi