いくつかのセクションがあり、jQuery を使用してそれぞれをロードしたいのですが、ナビゲーションで各セクションが選択されているときに、ページ内のいくつかの静的要素を非表示にし、他のセクションを非表示にして (以前に選択してロードしたことがある場合)、現在のセクションを表示したいと考えています。 、すべてのナビゲーション アイテムに対してクリック イベントを記述し、それらの要素のフェード アウトとフェード インを試すことでそれを行うことができますが、どうすれば簡単に行うことができますか?
私が持っているとしましょう:#background #elem1 #elem2
ナビゲーションリンクのいずれかがクリックされた場合、この3つを非表示にしたい.
そして、私は持っています: content.html#section1 #section2 #section3 #section4 ...
と
呼ばれる単一のファイルにあります
そしてライトボックス、言ってみましょう#light
ユーザーが のようなリンクをクリックしたときに#nav-section1
、次のことを実行したいとします。
フェードアウト:#background #elem1 #elem2
フェードアウト:#section2 #section3 #section4 ...
フェードイン:#light
フェードイン:#section1
私のナビゲーションは次のようになります。
<a class="navigation" id="nav-section1" name section1">Section1</a>
<a class="navigation" id="nav-section2" name section2">Section2</a>
...
jQuery は次のようにする必要があります: (ここに配置するクリックされたアイテムの名前.load
: content.html#name
)
$("a.navigation").click(function(event){
$("#light").fadeIn("slow");
$("#light").load("content.html #"+$(this).attr('name')+);
}
私はそれが間違っていることを知っており、私が望むすべてのことを行うわけではないので、誰か親切に修正してもらえますか?