2011-01-11 5 views
0

他に誰かが以下のシナリオを経験しましたか?例のためjQuery + CSS + IEの問題:ページが読み込まれているときに隠された要素が短時間で表示される

は、ここでは非常に基本的な説明です:

#menuHolderは、メニュー項目(#itemA#itemB#itemC、... #itemZ)が含まれてい

CSSで、私は隠さへ#menuHolder'sオーバーフローを設定しています。

jQueryを使用して、#menuHolderをminHeightに設定してから、特定の要素がマウスオーバーしたときにmaxHeightを300に展開します。

FF、SafariやChromeで問題はありません...しかし、ここではIEで何が起こるかです:一瞬

#itemA#itemB#itemC、... #itemZは、ページなど互いの上に表示されますIEにロード中です。その後、それらは消え、正常な動作をします。

オーバーフロー:hiddenまたはminHeightのいずれかが、ページが読み込まれるまで認識されないかのようです。

アイデア?

おかげ B

+0

ここで、ページでminHeightを設定していますか? – Michael

+0

minHeightとmaxHeightとは何ですか? Javascriptのプロパティはどこかで使用されていますか? CSSの最小高と最大高を意味しますか? – typeof

+0

申し訳ありませんが、minHeightとmaxHeightは、私のJavaScriptで使用している単純な変数です。 –

答えて

0

すなわちMIN-高さ

ソリューションはその

min-height:100px; 
height:100px; /* for ie7 */ 
height:auto !important; /* for all others */ 

のようないくつかのCSSを使用することです知っているいけない(少なくとも私の記憶が正しければ7まで)それあなたの目標をより良いイベントになるでしょう。例えば、いくつかの条件付きコメントトリックを含む条件付きコメントがあります。http://html5boilerplate.com

0

多分、 jereryを使用して現在表示されていないコンテナで使用されている画像をプリロードしてから、jqueryでマウスオーバーが発生したときにminとmaxの代わりに適切な高さを使用します。

0

いくつかのケースでは、このようなものは動作します:ページのロード中に現れてはならない要素で

、マークアップでそれを隠す:あなたはjqueryのを適用する前に、次に

<ul id='my_element' style='visibility:hidden'> 

$me = $('#my_element'); // cache it to improve performance 
$('#some_other_element').click(function() { 
    $me('style','visibility:visible').hide(); 
    $me.slideDown(800); 
}); 

IEのサポートには、このような悪意のあるものは必要ありません。それまでは、これが役立つことを願っています。

0

古いjQueryデータ型(1.6.xなど)にはまだ完全な解決策がありません。表データのbVisibility:falseプロパティを使用しているか、列の可視性を動的に調整します。 fnSetColumnVis(1、false);

jquery datatables hide column

誰もが、これはDataTableの新しいバージョンで解決されている知っていますか?

関連する問題