0

私は自分のウェブサイトにいくつかの div を持っています - ロード時に、それらのいくつかを非表示にし、いくつかを表示したいと考えています。私はこのようにしたくないものを隠しています:

$(".divToHide").hide();

Chrome、Firefox、IE8、Opera でうまく動作します... IE6 では動作しません (以前のバージョンではまだテストしていません...) - ページをロードすると、すべての div が適切に非表示になります。それらのいずれかを表示するリンクをクリックすると、正しく表示されます。最初の div を非表示にして別の div を表示するはずの別のリンクをクリックすると、問題が発生します。最初の div のテキストは非表示になりますが、画像は残り、新しく表示される div を妨げます。これはバグだと確信しています。ページをズームインまたはズームアウトすると、非表示になるはずだった div が突然消えます。ページをロードしたときにのみ表示されます。

それを回避する方法はありますか?

編集:私はjQuery v1.3.2を使用しています

編集:残念ながら、addClass状態を示す css クラスを追加するために使用するソリューションは実際にはdisplay: none機能しません。最初は機能したように見えましたが、問題はまだ残っています。

更新:私が書いた js ファイルはここにありますが、htmlはここにあります。私が抱えている問題は、あるポートフォリオから別のポートフォリオに移動すると、最初のポートフォリオの画像がそこに残り、次のポートフォリオを妨害することです。ページを拡大/縮小しようとすると、間違いが消えます。
以前は を使用してすべてのポートフォリオを非表示にしていまし$("#divId").hide()たが、以下で指摘されているように、現在は を使用しています$(".classToHide").hide()

更新:この問題は IE8 で解決されました - 標準モードの宣言を含めるのを忘れていました... ただし、IE6 ではまだ問題があります。

4

5 に答える 5

2

ちょっと考えてみてください: 古い (IE8 より前の) バージョンの jQuery を使用していませんか?

編集:いいえ、grycz は現在のバージョンを使用しています。

于 2009-05-03T20:14:24.810 に答える
0

試す

$("#divToHide").css('display:none');

于 2009-05-04T09:49:30.903 に答える