0

だから私はこれを数週間調べてきましたが、何も思いつきませんでした!

私は家族の音楽ストアの Web サイトで働いており、Web サイトに「リンク」ページを追加するように依頼されました。私の目標は、ベンダーのカテゴリ (バイオリン、ギター、ピアノなど) をページの左側に表示し、カテゴリを選択すると右側にリンクが表示されるようにすることです。私が持っているその部分。ここで難しいのは、ベンダー (Fender、G&L、Yahmaha など) へのリンクをクリックすると、直接サイトに移動するのではなく、すべて同じページに移動するようにしたいのですが、そのページに埋め込まれているのは、サイト。

私はこれについて多くの研究を行ってきましたが、何も思いつきませんでした。ベンダーごとに新しいページを作成して、個々のページに埋め込むこともできますが、ベンダーの数が多いため、非常に時間がかかります。

このようなことはまったく可能ですか?私は自分自身を埋め込むことで遊んでいて、それをやめました。要するに、どのリンクをクリックしたか、その特定のページをロードしたかということです。

さらに情報が必要な場合は、私に知らせてください。役に立つかもしれないコードと同じです!

私はこれに関する私のすべての研究で死んでしまいました。

編集: 私の最終的な目標は、次のようになることだと思います。ウェブサイトはこちら: http://www.brassbellmusic.com/default.aspx

4

1 に答える 1

0

jQuery を使用してこの機能をデモするために、 JSFiddleを作成しました。

のブランド リンクのリストを反復処理しますul

$('#brandListing a')

それぞれのクリック イベントをキャプチャします。

.click(function(ev){

jQuery は、イベント オブジェクトを無名関数 ( ev) に渡します。リンクがクリックされたとき、まずリンクをたどるというデフォルトのアクションを防止する必要があります。src次に、iframe (「埋め込みページ」) の属性を、クリックされた href の値で更新します。

ev.preventDefault();
$('#embeddedBrandWebsite').attr('src', ev.target.href);

このコード サンプルを使用するには、ページに jQuery ライブラリを追加する必要がありますが、それがなくても機能を複製することは可能です。

編集

上記のサンプルは、リンクと埋め込みが同じページにある単一ページの実装用です。要求された「情報の転送」を実現するには、ターゲットの href を GET パラメーター ( brassbellmusic.com/brandEmbed.aspx?path=http%3A//www.gibson.com/) として渡すことをお勧めします。単一の「埋め込み」ページで、サーバー側で iframe を設定するsrcか、javascript を使用してこれを抽出できます。JavaScript を使用すると、次のように使用できます。

function getURLParameter(name) {
    return decodeURI(
        (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
    );
}

ソース

srcドキュメントの準備ができたら、を使用して iframe を設定しgetURLParameter('path')ます。

于 2013-08-24T19:36:19.450 に答える