2011-03-06 65 views
0

我一直試圖讓Jquery地址插件現在正常工作大約12個小時,因此我計算了它的發佈時間。我遇到的問題是後退和前進導航不起作用。 IE:點擊一個鏈接,然後點擊後退按鈕實際上沒有導航回。它雖然改變了網址。另一件讓我相信自己在做一些根本性錯誤的事情是我插入了$.address.title($(this).attr("title"));,並且它實際上並沒有改變地址。Jquery地址插件 - 歷史記錄(後退/前進)跟蹤不起作用

jQuery的位置:

$('#swNavlist a').address(); 
$('#swNavlist a').click(function() { 

    $("#swBody").block({ 
    message:"Loading", 
    css: { 
     border: 'none', 
     padding: '15px', 
     backgroundColor: '#000', 
     '-webkit-border-radius': '10px', 
     '-moz-border-radius': '10px', 
     opacity: .5, 
     color: '#fff' 
    } }); 


    var content_show = $(this).attr("href").replace(/^#/, ''); 


    $.ajax({ 
     method: "get",url: content_show, 
     //"+bvLanguage+"/ 

     success: function(html){ //so, if data is retrieved, store it in html 

      $("#swBody").html(html); //show the html inside .content div 
      $("#swBody").unblock(); 
      $.address.title($(this).attr("title")); 


     },//success 
     error: function(){ 
      $("#swBody").unblock(); 
      $("#swBody").block({ 
       message:"Error Encountered", 
       css: { 
        border: 'none', 
        padding: '15px', 
        backgroundColor: '#000', 
        '-webkit-border-radius': '10px', 
        '-moz-border-radius': '10px', 
        opacity: .5, 
        color: '#fff' 
       }, 
       timeout:1000 
      }) 
     } 
    }); //close $.ajax(
    $("#swNavlist").topZIndex(); 

});//end navigation 

HTML瀏覽:

<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> 
<head> 
    <Title>Swebits Home</title> 
    <link href="css/swCss.css" rel="styleSheet" type="text/css" /> 
    <script type="text/javascript" src="js/jquery.min.js"></script> 
    <script type="text/javascript" src="js/jquery.pngFix.js"></script> 
    <script type="text/javascript" src="js/jquery.blockUI.js"></script> 
    <script type="text/javascript" src="js/jquery.topzindex.min.js"></script> 
    <script type="text/javascript" src="js/sw.js"></script> 
    <script type="text/javascript" src="js/jquery.address-1.3.2.min.js?autoUpdate=1"></script> 



</head> 

<body> 
     <div id="swHead"> 
      <div class="leftCol"></div> 
      <div class="centerCol"> 


       <div class="navigation"> 
        <ul id="swNavlist"> 
         <li id="active"><a href="#home.html" id="current" title="Swebits Home">Home</a></li> 
         <li><a href="#webd.html" title="Swebits Web Development">Web Design</a></li> 
         <li><a href="#bla.html" title="webs.html">Web Systems</a></li> 
         <li><a href="" title="hosting.html">Hosting</a></li> 
         <li><a href="" title="photo.html">Photography</a></li> 
         <li><a href="" title="portfolio.html">Portfolio</a></li> 
         <li><a href="" title="network.html">Our Network</a></li> 
         <li><a href="" title="contact.html">Contact</a></li> 
        </ul> 
       </div> 
      </div> 
      <div class="rightCol"></div> 
     </div> 
    <div id="swContainer" class="clearfix"> 


     <div id="swCenter" class="clearfix"> 


      <div id="swBody"> 
       <?php 
        include("home.html"); 
       ?> 
      </div> 

      <div id="swFooter"> 

      </div> 

     </div> 

    </div> 

</body> 

最後,我試圖執行一個if語句,這樣,如果目標是空白的頁面重定向到「的錯誤。 HTML「,但似乎也沒有工作。

我很感激幫助!

+0

我時間不多,可能誤解了你正在做的事情,所以我不會發布這個答案。如果我正確理解你的目標,我相信你使用絕對最好的插件是http://benalman.com/projects/jquery-bbq-plugin/ – JAAulde 2011-03-06 16:45:12

回答

0

這個插件似乎和許多其他的歷史/哈希插件一樣。然而根據asual.com的例子 - 他確實調用了init()函數,即使文檔說你不必這樣做。

認爲,來源,看看是否有些事情是不適當證件

0

這裏的東西,它接縫要裝入自己的頁面(通過點擊事件觸發功能),你需要做的創建一個功能是什麼由JQ地址事件change觸發,並在其內部使用JQ地址value屬性(深度鏈接值在#之後)來設置要使用AJAX加載的正確頁面。

現在您正在告訴JQ地址您當前的頁面狀態是什麼,但您並未告訴它該如何處理該值,因此您必須自己進行更改,以便JQ地址無法在您輸入正確的網址或使用後退按鈕。

相關問題