2011-07-14 19 views
0

上記のように、私は提供されたjQuery .ajax()関数でAjaxタブを作ろうとしました。jQueryとajaxでCSSタブを作る

私の問題はアンカーのhref属性の値がURLにあり、URLに#tabnameという名前の私のajax関数を呼び出す方法がわかりません。 (私の意図は、誰かがサイトのリンクを保存している場合、彼は最初のタブではなくそのタブに戻ります)。

jQuery-UIを使用したくないと申し訳ありません。なぜなら、それを使用すれば、それはその1つの問題だけであり、価値がないと思うからです。理解のために

私のタブ(またはアンカー)のようなものです:

$('#main').click(function(){ 
      loadtab("main.php"); 
     }); 

     function loadTab(pageUrl) 
     { 
      //load the content into #tabcontent 
      $.ajax( 
      { 
       url: pageUrl, 
       cache: false, 
       success: function(message) 
       { 
        $('#tabcontent').empty().append(message).hide().fadeIn('slow'); 
       } 
      }); 

EDIT:

を誰かがloadTabが好きならば<a id="main" href='#main'>Mainpage</a>

私のjqueryのは、次のようになります。方法は、ここから私は(私ではない)から取ったリンクです。 http://jetlogs.org/2008/03/17/jquery-ajax-tabs/

EDIT 2:

okが、私はこのようにそれを解決:彼は入力されたURLで使用しているハッシュタグに基づいて特定のタブにユーザーを導くための

//click the first tab, so that there will be shown anything 
    //tabs is an array of my link ids 
    $('#'+tabs[0]).click(); 

    //if there is a given hash, click the matching 
    if(window.location.hash+"" != ""){ 

     var hash = window.location.hash.substr(1)+''; 
     if(jQuery.inArray(hash, tabs)){ 
      $('#'+hash).click(); 
     } 
    } 

答えて

1

、あなたが使用する必要がありますクライアント側のルーティングソリューションおそらく推測しているように、$ .ajaxを特別なパラメータで呼び出すことはこの要件を解決しません。 https://github.com/mtrpcic/pathjsをご覧ください。 これはjQueryベースのルーティングソリューションで、URL内の特定のハッシュタグを特定の関数に効果的にマップします。このチュートリアル:http://stjhimy.com/posts/22-riding-the-hash-bang-with-pathjs-and-ajax-easy-twitter-like-urlsは、JavaScriptのルーティングの使用を実証するのに役立ちます。

関連する問題