バグを修正するためにJqueryプラグインを変更しようとしています。
以下は、すべてがどのように関連付けられているかを示すコードです。
$('.' + settings.activeClass).live('click', function(){
select(this);
alert( $('#pg li.selected').height() );
.......
});
function select(el){
hideSelected(function(){
$(el).addClass('selected').removeClass('active');
$(el).animate(settings.selectedCSS, 'slow');
});
}
したがって、「選択された」クラスが追加される前の高さは約116pxです
$(el).addClass('selected').removeClass('active');
'selected'クラスが追加された後、レンダリングされたhtmlページに表示される高さは約378pxであると想定され、高さは378pxに更新されます
alert( $('#pg li.selected').height() );
ただし、高さの値を出力しようとすると、「選択された」クラスが追加される前の古い値がキャプチャされたままになります。
これは、「選択された」クラスが追加された後に高さの値を印刷するためにアラートボックスを追加した奇妙な部分です。高さの新しい値を取得するはずでしたが、明らかにそうではありません。
だから、私は解決策を考えました、多分JQueryはアフタークリックイベントのためのある種のイベントを持っていますか?またはこれに対する代替ソリューション?