2

これは以前に取り上げられたことに気づきましたが、私は自分の快適ゾーンの外にいて、自分の状況に合わせてピースをまとめることができないようです.

私はブラウザ ゲーム インターフェイスを構築しています。サイド メニューでさまざまなリンクがクリックされたときに、ajax のさまざまな .php ファイルを介して div に動的にロードする必要があります。

インターフェイスは、たとえば www.mydomain.com/interface.php にあります。

たとえば、php ファイルは www.mydomain.com/interfacepages/ にあります。

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

<!-- Navigation -->
<div class="menu">
<ul>
    <li><a href="#">Page1</a></li>
    <li><a href="#">Only a submenu container, not a real page/link.</a>
        <ul>
            <li><a href="#">Page2</a></li>
            <li><a href="#">Page3</a></li>
            <li><a href="#">Page4</a></li>
        </ul>
    </li>
    <li><a href="#">Only a submenu container, not a real page/link.</a>
        <ul class="submenu">
            <li><a href="#">Page5</a></li>
            <li><a href="#">Page6</a></li>
        </ul>
    </li>
    <li><a href="#">Page7</a></li>
</ul>
</div>
<!-- Content -->
<div class="content"></div>

jquery/ajax でリンクの名前 (または場合によっては rel 属性) をプルして、interfacepages フォルダーで一致する .php ファイルを見つけて、コンテンツ div にロードするようにします。

たとえば、リンクがinterfacepages/page1.phpを指している場合、jqueryはphpの観点からリンクを機能させず、代わりにそのphpファイルをdivに含めます。

ページの読み込み時にデフォルトの .php ファイルを読み込む必要があります。

href として何を入力すればよいかよくわかりません。

私が間違っていると言って申し訳ありませんが、おそらく追いつくべきいくつかの基本が欠けていますが、私は通常、試行錯誤しながら学ぶことを好みます(しかし、4時間後に私はここに来ることに決めました:) )

4

4 に答える 4

1

js ファイルで、 < a > タグのクリック イベントで、次の ajax コードを挿入します。

$.ajax({
            url: [link to your php file]
            type: [GET or POST]
            data: [if needed]
            success: function(html) { 
                alert(html); // display the response of your php function
            }
        });
    }
于 2013-06-06T07:55:09.520 に答える
0

単純な HTML を使用する場合は、すべてのリンクの「ターゲット」属性をフレームを指すように変更するだけで済みますが、代わりにコンテンツ div をフレームに変更する必要があります。詳細については、HTML のターゲットとフレームの属性を確認してください。

または、jQuery を好む場合。最初にすべてのリンクにリスナーをアタッチすると、コンテンツ div のコンテンツが変更されます。

jQuery load () 関数を使用して、コンテンツを div にロードできます。

関連するスニペットは次のとおりです。

$(".menu a").click(function() {
  var link = $(this).attr('href');

  $(".content").load(link);
});
于 2013-06-06T07:56:23.737 に答える