私はJQueryの初心者です(ただし、JSと他の言語でのプログラミングについてはある程度の知識があります)
。2つの目的があります。
- 非常に単純なタブ(またはコントロール用のもの)、クリックすると古い(アクティブな)タブコンテンツがフェードアウトし、次にクリックしたタブコンテンツがフェードイン(同じ場所)
- 1と同じですが、フェードの代わりに水平方向のコンテンツスライドがあります。JQuery UIは必要ありません。これは、この種の単純なものにはやり過ぎであり、学びたいからです。
目的1、JS:
$(function () {
$("div.tabs > div:gt(0)").hide();
$("div.tabs ul a:first").addClass('selected');
$('div.tabs ul a').click(function () {
$("div.tabs > div").fadeOut('normal', function () {
$("div.tabs > div").fadeIn('slow');
});
$('div.tabs ul a').removeClass('selected');
$(this).addClass('selected');
return false;
});
});
HTML:
<div class="tabs">
<ul>
<li><a href="#first">First</a></li>
<li><a href="#second">Second</a></li>
<li><a href="#third">Third</a></li>
</ul>
<div id="first">
<h2>First content</h2>
</div>
<div id="second">
<h2>Second content</h2>
</div>
<div id="third">
<h2>Third content</h2>
</div>
</div>
$("div.tabs > div")
infadeOut
とinの行ですべてのdivを突く代わりに、アクティブなdivを見つける方法はfadeIn
?
Aim2:
読んだslideUp
のslideDown
ですが、それは垂直です。おそらく使用する必要がありますanimate()
か?
どのように?それが垂直スライドで私にとって良いよりも複雑すぎる場合...