2014-02-07 45 views
0

我讀過Modify the URL without reloading the page如何操縱URL不重裝

,但我真的不明白或者也許我的腳本需要一個命令其他正常工作。

我有了這個腳本加載的內容#-DIV的內容而無需重新加載頁面:

function contentloader(dataid) { 
    $("#content").fadeOut(100).load("controller.php?id=" + dataid + "", {}, function() { 
     $(this).fadeIn("slow"); 
    }); 
} 

如何操作的URL ..像?id="sitename"如果有人點擊該鏈接的「網站名稱」 ?

還有一種可能性,將點擊的鏈接標記爲「當前」,因此如果鏈接被點擊,它將得到例如類「當前」,這只是爲了CSS。

URL修改只是爲了重新加載頁面(如果有人這樣做),他回到他所在的位置,當然還有瀏覽器中的「後退」和「前進」功能。

+0

你可以閱讀單頁面應用程序http://singlepageappbook.com/這樣的東西...然後找到一個好的框架(或寫你自己的)。我使用meteorjs和骨幹路由器。 – thinklinux

回答

0

您可以使用HTML 5來實現。我不知道是否有其他選項可用。對此http://spoiledmilk.com/blog/html5-changing-the-browser-url-without-refreshing-page/

+0

是的,我在這裏發現了另一個問題,但我不知道如何在我的腳本中實現它,這就是我的問題。 – Dustin

+0

history.pushState(PAGE_STATE,PAGE_TITLE,YOUR_URL);試試這個:) –

+0

有沒有一個地方可以閱讀有關不同的page_state的?如默認爲「0」,「第一個下一個網站」爲「1」或類似的東西?我可能對jscript太新瞭解,也許我應該擺脫ajax的東西,使用它只是因爲我想用ajax測試並學習一些新東西,但是如果這讓我感到頭暈,我應該重新考慮。 – Dustin

0

使用JavaScript核心(條件:即> 8)

var stateObj = {foo:「bar」}; history.pushState(stateObj,「page 2」,「bar.html」);