2010-06-21 85 views
0

我幾乎要這樣做,但沒有足夠的智力來制定最後一步。JQuery - 獲取頁面?

這就是目前發生的情況。

1)頁面加載 2)當單擊一個鏈接時,一個散列被添加到帶有頁面標識的url。這保存到瀏覽器歷史記錄。

我有Ajax調用設置,如果我將它附加到鏈接功能,它工作正常。問題是從網址獲取ID。這是我的。

var id = urlToId(window.location); 
if (id != undefined) { 
    go(id); 
} 

function urlToId(url) { alert(url); 
    var segments = url.split('#'); alert(segments); 
    var id = segments[1]; 
    return id; 
} 

警報(URL)= http://localhost/site/index.php?p=1#1 - JavaScript錯誤:url.split不是一個函數。

我覺得,如果我能擺脫JavaScript錯誤,我應該是金。

回答

1

試試這個:

function urlToId() { 
    return window.location.hash.substr(1); 
} 
0

你的url參數指的是沒有分割函數的window.location對象(它不是一個字符串)。

嘗試window.location.hash取而代之的是,它將以字符串的形式從#開始。而不是window.location對象。

var id = hashToId(window.location.hash); 
if (id != undefined) { 
    go(id); 
} 

function hashToId(hash) { 
    return hash.slice(1); // remove the leading # 
}