2011-07-19 65 views
0

我加載成功的外部內容,以我的div使用jQuery刪除散列,唯一的問題是,我想不會顯示:「PastURL +#+ NEWURL」只是NEWURL從導航欄中

例如,現在如果我在我的一些鏈接的點擊,我將有:http://mydomain.com/#http://mydomain.com/loaded-content

我想表明的是剛:http://mydomain.com/loaded-content

這是我的代碼:

 jQuery(document).ready(function(){ 

     jQuery('.portfolio-item a').live('click', function(e){ 
      e.preventDefault(); 
      var link = jQuery(this).attr('href'); 
      jQuery('#contenthome').fadeOut(500).load(link + ' #content-wrapper', function(){ jQuery('#contenthome').fadeIn(500); }); 
      $('html, body').animate({scrollTop:0}, 'slow'); 
      window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length-5); 

     }); 

    }); 

任何想法? 在此先感謝!

注:

+2

這是不可能的。你可以將其設爲'http:// mydomain.com /#loaded-content' –

+1

爲什麼不直接滾動到哈希? – daryl

+0

@iliacholly和tfbox,感謝您的快速回答,可惜這是不可能的,謝謝! – aurrutia

回答

0

您可以使用下面的腳本改寫在地址欄中的URL

  • ,你只能寫
  • 這在現代瀏覽器只支持同一個域的路徑(例如Chrome,FF 5等)

-

try { 
    if (window.location.search.substring(1).length == 0) { // if no query string 
     window.history.pushState('page', browser_title, browser_url); 
    } 
} 
catch (e) { /* browser doesn't support */ } 
+0

我很確定Firefox 4也支持這個功能。 – Kayla

+0

它必須,我沒有提到它,因爲我不確定。 –

+0

沒有工作,可能是因爲我不是程序員,我不知道在哪裏粘貼代碼... – aurrutia