2013-10-09 69 views
6

我已將intro.js實施到我的網站。但是我想在第一次訪問時纔開始旅程。可能是通過使用cookies ..網站是用html製作的沒有php ..如何在首次訪問網站時啓動intro.js遊覽

+0

我用一個如何運行介紹的例子更新了我的答案。 – Snowburnt

+0

詢問代碼的問題必須顯示對所解決問題的最小理解**。包括嘗試解決方案,爲什麼他們沒有工作,以及*期望*結果。另請參閱:[堆棧溢出問題清單](http://meta.stackexchange.com/questions/156810/stack-overflow-question-checklist) –

回答

9

JavaScript cookies是一種解決方案,但我應該指出,它只會在用戶保存cookie的情況下起作用。

//set the cookie when they first hit the site 
function setCookie(c_name,value,exdays) 
{ 
var exdate=new Date(); 
exdate.setDate(exdate.getDate() + exdays); 
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()); 
document.cookie=c_name + "=" + c_value; 
} 

//check for the cookie when user first arrives, if cookie doesn't exist call the intro. 
function getCookie(c_name) 
{ 
var c_value = document.cookie; 
var c_start = c_value.indexOf(" " + c_name + "="); 
if (c_start == -1) 
    { 
    c_start = c_value.indexOf(c_name + "="); 
    } 
if (c_start == -1) 
    { 
    c_value = null; 
    } 
else 
    { 
    c_start = c_value.indexOf("=", c_start) + 1; 
    var c_end = c_value.indexOf(";", c_start); 
    if (c_end == -1) 
    { 
c_end = c_value.length; 
} 
c_value = unescape(c_value.substring(c_start,c_end)); 
} 
return c_value; 
} 

代碼爲http://www.w3schools.com/js/js_cookies.asp

顯然有一些空白,你得填在那裏,但它是在JavaScript中的cookie工作的一個很好的起點。

編輯:

所以你想一個新的功能,把它的頭,裏面的腳本標記(如果有的話已經,剛纔複製的功能到那裏(你會希望把其他我在script標籤中提供了兩個函數))。這個函數會檢查你是否有cookie。如果你這樣做,只需返回。如果不這樣做,創建cookie並運行介紹,

<head> 
<script type="text/javascript"> 
function checkCookieIntro(){ 
    var cookie=getCookie("mySite"); 

    if (cookie==null || cookie=="") { 
     setCookie("mySite", "1",90); 
     runIntro(); //change this to whatever function you need to call to run the intro 
     } 
} 

</script> 
</head> 

現在改變你的身體是:

<body onload="checkCookieIntro()"> 

所以當身體的負荷,它會檢查,看是否有cookie存在,如果沒有,請創建一個值爲1的cookie,該值將持續90天(除非用戶將其刪除),然後運行介紹。如果cookie確實存在一個值,那麼它什麼都不做。

+0

我將巡迴開始功能添加到body onload ..所以cookie會停止該bod當我添加你的代碼後,onload .. – Aroo

+0

不,你必須添加一個條件並調用cookie檢查和創建函數。我會在幾個小時內爲你寫點東西,但是我建議你研究一下javascript,以便你能理解正在發生的事情。 – Snowburnt

相關問題