2014-10-08 17 views
0

我正在嘗試創建一個使用AJAX動態填充div的網頁。我已經能夠簡單地用下面的AJAX代碼更新DIV內容:動態更改頁面內容並使用AJAX/jQuery設置哈希值

$(document).ready(function(){ 
    $("#projects-list a").click(function(e){ 
     e.preventDefault(); 
     var url = $(this).attr('href'); //get the link you want to load data from 
     $.ajax({ 
      type: 'GET', 
      url: url, 
      success: function(data) { 
       $('#content').fadeOut(300, function() { 
        $('#content').html(data).delay(200).fadeIn(300); 
       }); 
      } 
     }); 
    }); 
}); 

不過,我也很希望能找到一種方法來更新頁面的URL或改變哈希值。因此,例如,當用戶被給予鏈接到/projects.html時,它們將被髮送到鏈接頁面,然後當點擊鏈接時,使用AJAX改變內容並且URL將改變爲/項目.html#第一個。這樣,用戶導航到/projects.html#first他們將看到第一個項目的內容,而不是可供選擇的原始項目列表。

如果你想使用標準#,那麼你可以通過JS使用,在函數調用
+1

查看'history.js'。它以一種適用於HTML4瀏覽器的方式封裝了HTML URL重寫(通過使用這些HTML標籤)。它提供了可用於執行所需動態導航的更改事件。 – 2014-10-08 16:16:22

回答

0

做: ,一些ID居多,

,然後你可以在頁面加載檢查是否有一個#在那裏然後調用像一個特定的功能:

handleHash: function() { if (!isNaN(parseInt(window.location.hash.replace('#', '')))){ this.showDetails(window.location.hash.replace('#', '')); }