0

私はそのようなナビゲーションを持っています:

<div class="nav">
    <ul>
        <li><a href="#">Home</a></li>
        <li><a href="#">About</a></li>
        <li><a href="#">Contact</a></li>
    </ul>
</div>

リンクをクリックすると、そのページのコンテンツがオブジェクトに挿入されます。私はもう試した

$('nav ul li a').click( function() {

    var obj={};

    $(this).nextAll('.content').insertAfter(obj);

});

言い換えれば、そのコンテンツをオブジェクトにキャッシュしようとしているので、後で何かをしたい場合は、オブジェクトで検索したいと思います。私の質問が正しく尋ねられることを願っています:)

4

2 に答える 2

0

次のように.data()を使用してコンテンツを保存できます。

$('.nav ul li a').click(function (e) {

  var url = $(this).attr("href");
  $.get(url, function (content) {
    $(this).data('content', content);
  });

  // Prevent the anchor's default click action
  e.preventDefault();
});

そして、次のようなコンテンツを表示します。

$('.nav ul li a').each(function () {

  // Open the console to view the content
  console.log($(this).data('content'));
});
于 2013-01-14T09:12:42.897 に答える
0

JavaScriptオブジェクトが実際に何であるかを知っていますか? それらはそのように DOM に挿入することはできません。また、呼び出しobj = {}によって実際にどこからでも何かをロードすることはできません。

私が理解していることから、あなたは AJAX 経由でページ コンテンツを読み込もうとしています。その場合は、jQuery を参照することをお勧めします.get()

$('nav ul li a').click( function() {
    var location = $(this).attr("href"); // get the location of the link
    $.get(location, function(data){ // call AJAX to load the page content
         $("#content").html(data); // put page content into #content
    });
    return false; // make sure the link doesn't then follow through
});
于 2013-01-14T08:28:29.797 に答える