私の質問は、jQueryがAJAXによってロードされるまで存在しないさまざまなDOMノードをどのように見つけるかについてです。
私の特定の問題は、jQueryUI tabs()スクリプトが、AJAXによってロードされたページフラグメントのtabsdivと一緒に含まれている場合にのみ機能することです。tabs divが存在する前(つまり、ajaxがロードされる前)に元のメインテンプレートページの一部としてロードされた場合、このスクリプトは機能しません。
私が何を意味するかを説明するために、ここにいくつかの簡単なコードの説明があります:
$('a.ajax').live('click', function(){
$.ajax({ url: '/get_page_with_tabs',
success: function(data){
$('div#ajax').append(data); // the content that gets replaced
}
});
});
$('div#tabs').tabs();
// this script must be part of the "data" along with the <div id="tabs></div>
// it can't be loaded along with the main template page which contains: <div id="ajax"> </div> and the $.ajax script
補足として、私は実際にPJAXを使用していますが、これは非同期divの読み込みに関してjQueryAJAXと機能的に同じように見えます。