2013-03-14 40 views
1

我在腳本中使用了錨標籤,因此當我返回頁面時,我可以保存我所處的位置。問題是隻有當我點擊鏈接時纔有效。當我刷新頁面,或者回到它時,它不會。我沒有看到什麼?信不信由你......這是Chrome存在的問題 - 它實際上在IE罰款!!!(我不能相信我剛纔說的)在Chrome中不起作用的錨標籤

function parseXML(xml) 
{ 
    //find every Category and print the title 
    var output = '';  
    var ms = 0; 
    $(xml).find("category").each(function() 
    { 

     output += '<h3>' +$(this).find("title").text() + '<a name="m' + (ms+1) + '"></a> </h3> ' ; 
     var div = '<div>'; 
     output += '<ul>'; 
     $(this).find('items > item').each(function() { 
      var text = $(this).find("text").text(); 
      var slink = $(this).find("link").text(); 
      output += "<li class='subLink' src='"+ slink + "'><a href='#m"+ms+"'>" + text + "</a></li>"; 

     }); 

     output += '</ul>';  
     ms++; 
    });   
    var icons = { 
    header: "ui-icon-circle-arrow-e", 
    activeHeader: "ui-icon-circle-arrow-s" 
}; 
    var hashNum = 0; 
    if (window.location.hash != ''){ 
     hashNum = parseInt(window.location.hash.replace("#m", "")); 

    }; 
$('<div>') 
.attr('id','accordionSub') 
.html(output)  
.appendTo('#accordionSubB').delay(1).queue(function(){ 
    $("#accordionSub").accordion({ 
       heightStyle: "content", 
       collapsible: true, 
       icons: icons, 
       active: hashNum 
      }); 
}); 

} 

OUTPUT:

<h3 class="ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-accordion-icons ui-state-hover" 
role="tab" id="ui-accordion-accordionSub-header-22" aria-controls="ui-accordion-accordionSub-panel-22" 
aria-selected="false" tabindex="-1"> 
    <span class="ui-accordion-header-icon ui-icon ui-icon-circle-arrow-e"></span>Pressure Transducers 
    <a name="m23"></a> 
</h3> 
+0

有沒有什麼辦法可以真正向我們展示了什麼問題? – 2013-03-14 16:12:14

+0

不幸的是,除非你知道某處我可以上傳頁面進行查看。 – tree 2013-03-14 16:38:43

+0

http://jsfiddle.net/LgZej/2/它並不真正告訴你瀏覽器正在做什麼我知道 – tree 2013-03-14 16:52:52

回答

0

找到一個解決辦法,我不得不補充一點:

$(window).load(function(){ 
    var hashNum = 0; 
    if (window.location.hash != ''){ 
     hashNum = window.location.hash.replace("#m", ""); 
     console.log('hashNum: ' + hashNum); 
    }; 


    hashMenu = $("#m"+hashNum-1).offset().top; 

     $('html,body').animate({ 
      scrollTop: hashMenu 
    }, 1000); 

    }); 
0

在你的錨中使用id來代替名字。

HTML鏈接 - id屬性 id屬性可用於在HTML文檔中創建書籤。

提示:書籤不以任何特殊方式顯示。它們對讀者是不可見的。

例 與HTML文檔中的ID的錨:

<a id="tips">Useful Tips Section</a> 

創建同一文檔內的鏈接,「有用的提示一節」:

<a href="#tips">Visit the Useful Tips Section</a> 

或者,創建一個鏈接到另一頁的「有用提示部分」:

<a href="http://www.w3schools.com/html_links.htm#tips"> 

訪問有用的提示一節

http://www.w3schools.com/html/html_links.asp

+0

它不適用於Chrome或IE。 – tree 2013-03-14 16:38:02