2010-12-05 10 views
1

私は私のウェブサイト全体に2つのフレームを持っています。ナビゲーションバーとメインコンテンツを持つ別のフレームのフレーム。リンクをクリックすると、他のフレーム(コンテンツフレーム)をフェードイン/フェードアウトさせたいのですが、これをどのように達成できますか?私はjqueryコードに従ってみました。ナビゲーションフレームをフェードイン/フェードアウトさせました。つまり、このコードをナビゲーションバーのフレームページに配置しているので、ナビゲーションバーのフレームをクリックすると、このフレームがコードを実行しているので、このフレームページはフェードインまたはフェードアウトしています。コンテンツを別のフレームにリダイレクトする方法はありますか? jqueryのリンクのターゲットを変更するコマンドは何ですか?jqueryでターゲットフレームのリンクを変更するには?

あなたのメインフレームが frame_mainと呼ばれていると仮定すると
$(document).ready(function() { 

$("Body").css("display", "none"); 

    $("Body").fadeIn(2000); 

$("a").click(function(event){ 
    event.preventDefault(); 
    linkLocation = this.href; 

    $("Body").fadeOut(2000, redirectPage); 
}); 

function redirectPage() { 
    window.location = linkLocation; 
} 

}); 

答えて

1

あなたの最初の質問については、例えば、あなたの体のセレクタのコンテキストを変更

$("body", top.frames["frame_main"].document).fadeOut(2000, redirectPage); 

そして2つ目の質問ではなく、window.locationあなたはtop.frames["frameName"].locationを使用する必要があります。

function redirectPage() { 
    top.frames["frame_main"].location = linkLocation; 
} 

編集:全例:

$(document).ready(function() { 

    var body = $("body", top.frames["frame_main"].document); 

    body.css("display", "none").fadeIn(2000); 

    $("a").click(function(event){ 
     event.preventDefault(); 
     linkLocation = this.href; 

     body.fadeOut(2000, redirectPage); 
    }); 

    function redirectPage() { 
     top.frames["frame_main"].location = linkLocation; 
    } 
}); 
+0

フェードでは作業していて、動作していないがフェードアウトされます。あなたはどこにどのようなコードshudを配置するかについて、このプロセスの詳細を教えてくれますか?私のコードで何が間違っているのか分かります。 – fozlu

+0

ボディセレクタをすべて更新しましたか?私は完全な答えを表示するために私の答えを更新しました。本体セレクターは一度だけ実行されました。 – cspolton

+0

たくさんの男、それは働いた、私はフェードアウトボディを更新しませんでした。私がオンラインヘルプを探していたのはこれが初めてのことでした。あなたは大歓迎です:) – fozlu

関連する問題