jQueryを使用してページ内のセクションを表示および非表示にしています。このアプローチはChrome、FF、Safariで機能しますが、IE8と7では機能しません。アニメーション、フェード、不透明度を試してみましょう。何もIEで動作するようです。 IE Developer Toolsのjsコンソールによれば、選択された要素には「アクティブ」というクラスがありますが、Dev Toolsのhtmlウィンドウのdomツリーを見ると、 アクティブなクラスは削除されていないか、DOMに書き直されていません。IE8以下でjQueryでクラスを追加/削除できません
マークアップ
<nav>
<ul>
<li id="foo">Show Section 1</li>
<li id="bar">Show Section 2</li>
</ul>
</nav>
<div id="items">
<section class="foo">Content Section 1</section>
<section class="bar">Content Section 2</section>
</div>
CSS
#items > section {display: none;}
.active {display: block;}
JS
$('nav li').click(function(){
var $me = $(this);
showSection($me.attr('id'));
});
showSection function(whichSection){
$('#items > section').removeClass('active');
$('#items > '+'.'+whichSection).addClass('active');
}
何かアドバイスは大歓迎です。私は厄介な締め切りにいる。乾杯。
IE8でHTML5タグを認識させるには、html5shiv(またはModernizr)を含める必要があります。 – Adam
あなたのHTMLは検証されますか?また、アダムのコメントを参照してください。 – Sparky
あなたのサンプルがどこでどのように動作するかわかりません。 – j08691