私が抱えている問題は、おそらくjqueryがどのように機能するかを知らないことが原因ですが、とにかく勇気を持って質問します。
私は、ajax呼び出しによってインスタンス化されるいくつかのテーブルでtablesorterを使用しています。divコンテナがフェードアウトされ、テーブルが追加され、フェードインされます。
これがajax呼び出しです
$.ajax({
url: "url",
type: "GET",
cache: false,
data: 'cmd=scriptcmd',
datatype: 'html',
success: function(data)
{
$("#middle").fadeOut('slow',function(){
$("#middle").html(data);
$("table").tablesorter({
widgets: ['zebra'],
sortList: [[3,0]]});
}).fadeIn('slow');
}
});
それはすべてうまくいきます
Tablesorterは、fadeOutコールバック中にテーブルを並べ替え、ゼブラします。
並べ替えはfadeOutコールバックで正常に機能していますが、zebraウィジェットでは機能していません。列をクリックして並べ替えると、ゼブラウィジェットがトリガーされ、正常に機能します。
setTimeoutを使用してtablesorterを呼び出すと、1ミリ秒のタイマーを使用しても正常に機能することに気付きますが、これは画面上でびくびくしていて、非常にハッキーです。
誰かが正しい方法を示すことを気にしますか?よろしくお願いします