2016-05-13 4 views
0

にここで私の前の質問から私に続き:私は基本的にdiv要素内のリンクをロードするためにjQueryを使用してい How to show a page by default on page loadはdivの中で開かれたハイパーリンクをロード - 同じdivの

- これは完璧に動作します。しかし、私が今達成したいのは、ページの1つ(divで開かれている)にハイパーリンクがあるときです。ページに表示される同じdivでハイパーリンクを開くにはどうすればいいですか?

私はメニューを持っているとしましょう: ホーム|サービス|約

サービスをクリックすると、div内のページが読み込まれます。

しかし、サービスは別のページ(同じドメイン/セットアップ上)へのハイパーリンクを持っているとしましょう - 上記の質問で参照されているコードを使用しています。リンクは新しいタブで開きます...これは動作ではありませんが欲しいです。ここで

は、コードは次のとおりです。

$('[data-target]').click(function (e) { 
$.get($(this).attr('href'), function(data){ 
$('#halloffame').empty(); 
    $(data).find(".partner_body").appendTo("#halloffame"); 

}); 
e.preventDefault(); // prevent anchor from changing window.location 
    }); 
    $.get("pages/accounting-software/", function(data) { 
     $('#halloffame').empty(); 
     $(data).find(".partner_body").appendTo("#halloffame"); 

    }); 

これは私がdiv要素 "halloffame" でハイパーリンクを開くことができます。しかし、それは、ページ内のリンクを制御しない - 私は、マスターページに同じコードを使用している場合でも:誰もが私が間違って行くよどこに私を指すことができる場合

<a data-target="#halloffame" href="pages/returns/"> 

が、私はそれを感謝:)

すばらしい金曜日をお過ごしください。

+0

あなたのアンカータグの "自己_" =ターゲットを試してみたのですか? riteshmeher

+0

@riteshmeher - ありがとう、良い叫び声、私はそれを試しただけで、喜びはしなかった:(>>>完全なコード>>>>> https://gyazo.com/ca5fb1087b26d1f8cb54f6f6f0f5dc52 –

答えて

0

あなたのイベントリスナーがバインドされている、あなたがaswell新しい要素にイベントリスナーをバインドまたは取り扱い繰延イベントを使用するか必要があります(あなたのAJAX呼び出しから)新しい要素を追加するDOMを、既存の現在(例えばjQuerys onを) 。

See this answer for more details

関連する問題