-1

私はフォローしていますjQuery code

 $("#tabs").tabs({
  select: function(event, ui) {                   
    window.location.replace(ui.tab.hash);
},}).addClass( "ui-tabs-vertical ui-helper-clearfix" );

属性値を追加する他のすべてのtabsjQueryの最初のタブを除いて、これにより、2 番目のタブでの読み込み中にエラーが発生します。styledisplay:noneopenlayers mapmapdivhidden

$("#tabs").tabs("widget").find('#tab-2').attr('style','display:block');

しかし、これは別の問題につながります.3番目のタブをロードしている間、2番目のタブもvisible状態にあります.この問題に対する別の解決策はありますか?

4

1 に答える 1

1

jqueryuiを使用しないと同様の問題がありました。タブの動作を制御できたので、display: none を使用してタブを非表示にするのではなく、幅と高さを 0 に設定しました。これにより、マップ (私の場合は gmaps) をレンダリングできました。

コールバックとして注目すべきもう 1 つのこと。IE は、ページの読み込み時ではなく、タブのクリック時にマップをレンダリングします。これを行う方法があると思います:http://api.jqueryui.com/tabs/#event-activate

更新: 実際には、これらのアイデアの 2 番目を実行することになりましたが、前述したように、独自のタブを作成したので、少し簡単になりました。

于 2013-05-14T11:39:49.997 に答える