2014-01-22 53 views
0

所以我有這個自定義模塊,其中包含一個啓動頁面(這是一個藍色100%寬度100%的高度與CSS的幫助一些動畫圖像屏幕)。啓動頁面設置爲僅出現在主菜單頁面上(3種語言)。問題是,當我從其他網站的頁面(聯繫人等)進入主菜單時,它也會出現。
我想要的是模塊只能爲用戶顯示一次,所以如果他再次進入主頁面,他不會看到飛濺。 joomla可以這麼做嗎?使joomla加載一個模塊只有一次

+0

也不是那麼清楚,我想要做什麼。你希望這個模塊只顯示在主頁上,或者你希望每個訪問者在任何頁面上只顯示一次? – Sbpro

回答

1

是的,但這是一個功能,你只能用前端代碼處理。每次頁面加載時,您都需要使用JavaScript來檢查cookie。如果cookie存在,則不做任何操作,否則顯示啓動畫面並設置持續時間= 1年或任何適當的cookie。

你應該啓動畫面的CSS設置爲

display:none 

,然後使用JavaScript表現出來。

根據您的個人喜好,您可以使用JavaScript或jQuery庫來處理Cookie。 Here's一個普通的js例子。

如果您在使用這些功能,你的腳本會像

if (readCookie('showsplash')==null) { 
    document.getElementById('splashscreen').style.display='block'; 
    createCookie('showsplash','off',360); 
} 
+0

謝謝。我有我自己的一些jQuery代碼,所以它不是非常compatable(我想我不能混合jQuery和JS很多(我是一個初學者(大聲笑)))。但代碼正如我所願。謝謝! – Rywi

+0

你可以混合所有你想要的 - 畢竟jQuery是用javascript編寫的;當然你最好先複製現有的例子,請記住,Joomla經常加載帶有「$」前綴的mootools,所以你更安全地使用jQuery()而不是$() –

+0

抱歉打擾,我還有一個問題。我認爲,你的代碼會使cookie在360秒後過期。這就是我想要的,所以如果你稍後離開網站並再次訪問它 - 閃屏將再次出現,但似乎並未這樣做。你可以解釋爲什麼代碼沒有這樣做,並幫助我得到一個代碼,使cookie在6分鐘後過期? – Rywi