2011-02-02 19 views
0

jQuery UIタブのプラグインを作成して、次と前のボタンを表示します。しかし、私は表示されている最初のタブにいくつかのロジックを適用するために、tabscreateイベントにバインドすることはできません。jQueryタブ - tabscreateイベントへのバインド

これは私のプラグインの内側と外側(ページのjQuery)に気づいた。タブは以前、私は経由して作成したイベントに追加することができますどのようにあれば作成されたので、これは

$(tabsSelector).bind("tabsshow", function (event, ui) { 
    alert("On Tab Show"); 
}); 

このdoesntの

$(tabsSelector).bind("tabscreate", function (event, ui) { 
    alert("On Tabs Creation"); 
}); 

を作品$('#tabs').tabs();

を行った後

は、それは純粋ですプラグイン?

答えて

2

あなたはちょうど方法lengthを使用してタブ数を問い合わせることができると思います。方法はselectで十分です。

実際にtabscreateイベントが必要な場合は、プラグイン内でtabs()メソッドを呼び出してラップし、そこでイベントハンドラを渡してください。このようなもの:

function CustomTabs(selector){ 
    $(selector).tabs({ 
     create: function(event, ui) { /* put your code here */ } 
    }); 
} 
+0

タブ数は$(「#タブ」)を照会することができます:-)ホープので、私はそれへのアクセス権を持っています。私のタブのナビゲーションは機能しますが、他のタブをクリックした後でなければなりません(imは 'tabsshow'イベントにバインドされています)。私は、クリックイベントを添付するためにタブが作成されているときに起動するものにバインドする必要があります。私はあなたの2番目のポイントとは何を意味するのか分かりません。 – dmce

+0

ああ、はい。あなたの編集に関して、これはそれが始まった方法であり、うまくいきました。問題は、異なるページ間で余分な機能を再利用することが難しくなったことです(必要な場所にあるすべてのタブを作成するためのコードを追加することを意味します)。 「jQuery UI documentation」(http://jqueryui.com/demos/tabs/#event-create)には「tabscreate」にバインドできると書かれていますが、それは動作しません右) – dmce

+0

私は 'tabs()'が – gor

0

あなたの方法を使用しないでください。 "$(...)。tabs({create:function(event、ui){ここのコード}})"を使用しますが、 "create"イベントが呼び出されることに注意してください) "show"イベントの後(使用している場合)。また、 "ui"(特にui.panel)は利用できません。

は、タブ(「長さ」)。それは

+0

あなたはどういう意味ですか?* UIは利用できません*?これに関する適切なjqueryのUIドキュメントを参照できますか? – Cheeso

関連する問題