我正在使用asp.net mvc與ajax導航。我使用jquery地址,我可以改變地址欄像「MYPage.Com/#/Url」,但我怎麼能調用我的路線,當用戶進入該鏈接?Asp.net MVC與Ajax歷史(jQuery地址),如何從URL加載?
這可能已經問過,但我找不到它,所以請點我,如果你找到它。
我正在使用asp.net mvc與ajax導航。我使用jquery地址,我可以改變地址欄像「MYPage.Com/#/Url」,但我怎麼能調用我的路線,當用戶進入該鏈接?Asp.net MVC與Ajax歷史(jQuery地址),如何從URL加載?
這可能已經問過,但我找不到它,所以請點我,如果你找到它。
沒有爲沒有事件(至少不是我上次檢查)。您需要在JS中創建一個檢查器函數,例如(或更頻繁)每100毫秒運行一次。
var currentHash="";
function CheckHash()
{
if(currentHash!=window.location.hash)
{
currentHash=window.location.hash;
NavigateTo(currentHash); //or whatever code to execute when address behind `#` changes
}
}
CheckHash(); //Initial Run, for fast reaction on load
window.setInterval(CheckHash,100); //schedules the function to run once every 100ms
您需要使用window元素的window.onHashChange事件。最好使用像jquery bbq這樣的javascript庫來處理哈希變化。
如果您仍然想這樣做,而無需使用一個數據庫,然後在頁面加載,你應該做出,即使處理onHashChange的函數的調用。
謝謝,但是看看這個鏈接,他們似乎並不有一個計時器http://www.asual.com/jquery/address/samples/tabs/ – 2010-07-07 21:32:29
有插件內的計時器,它僅用於適用於舊版本的Firefox,Safari和Opera。 – Rostislav 2010-07-07 22:45:05