質問: ご覧頂き有難うございます。 基本的な内容としては下記のサイトのような実装を考えております。 リンクをクリックした際にページ遷移をフェードアウト、フェードインで表示させるというものです。 http://raining.bear-life.com/jquery/%E3%83%9A%E3%83%BC%E3%82%B8%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%80%81%E3%83%AA%E3%83%B3%E3%82%AF%E6%99%82%E3%81%AB%E3%83%95%E3%82%A7%E3%83%BC%E3%83%89%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95 ただ、下記のようなことは可能なのでしょうか? ・グローバルナビゲーションのリンクをクリックした時だけ、ページ遷移をフェード表示させる。 ・グローバルナビ以外のリンクをクリックした際には遷移時のフェードは無し フェードアウトの動作は 例えば、 .global-nav aがクリックされたら bodyをフェードアウト、と出来るのですが、 ページ遷移時のフェードインを制御する方法がどうしても思いつきません。。 もしご存知の方がおられましたらご教授頂きたく存じます。 宜しくお願い致します。
回答: ページ遷移した先で挙動を変えたい場合は、遷移元から何らかのデータを持っていかなければなりません。 今回の例で言うと、 1.グローバルナビゲーションを押して遷移した場合 2.それ以外のリンクから遷移した場合 「1か2かを判断する材料」が必要というわけです。 このような材料を遷移先に持っていく方法の一つとして「パラメータ」と呼ばれるものがあります。 リンクのURLの後ろにつけることが出来る文字列です。 例) http://hogehoge.com/member.html?g=1 「?g=1」の部分がパラメータです。 この部分を遷移元のアンカータグのhref要素の中身を変えることで、遷移先に判断材料を与えれば良いことになります。 例) グローバルナビのアンカータグ それ以外のリンクのアンカータグ そして遷移先のページで、これらのパラメータの値を受け取り判断すればよいわけですが フェードで参考にされているブログにも該当する記事がありました。 http://raining.bear-life.com/javascript/location%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%A7url%E6%83%85%E5%A0%B1%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B 「location.search」の項目を参考にしてください。 これで遷移先のページで文字列としてパラメータが受け取れますので、 あとはフェードの処理をするorしないの分岐を行えばよいです。