0

jQuery のセットを利用した Web サイトが必要です。メニュー ボタンのセットを使用してコンテンツを動的にロードします。

今、私が知りたいのはこれだけです:

ブロガーで見たことがありますか?URLはこんな感じ

blogger.com/blogger.g?blogID=abcd#id

#id に #overview を付けると、統計情報が表示されます。#allposts を付けると、すべての投稿が表示され、同様にコンテンツは URL の #id によってのみ異なります。多くの Web サイトがこの方法を使用して PermaLinks も提供しているのを見てきました。

どうすればいいですか?メニュー ボタンごとに #id を指定しました。これを URL に渡すと、その特定のメニューに切り替える必要があります。

注:私はPHP、js、jQuery、およびHTML5 +/- Ajaxを使用しています

PS: あれこれ使えるなんて言わないでください!私はプロではありません。それで、いくつかのアルゴリズムまたはコードを教えてください。

前もって感謝します :)

4

2 に答える 2

2

window.location.hashURL にハッシュ値が含まれます ( #id#overviewなど...)。次に、ページの読み込み時に実行される javascript を使用して window.location.hash の値を確認し、その内容に基づいて、サーバーからデータを取得する必要がある場合は ajax 呼び出しを使用してページを変更できます。

ハッシュ値はサーバーに送信されないため、それを処理するのはクライアント側のコードである必要があります。

特定のコードについては、次のようなものを使用します。

$(document).ready(function() {
    switch(window.location.hash) {
        case "#id":
            // code here
            break;
        case "#overview":
            // code here
            break;
        default:
            // code here
            break;
    }
});

そこに入る特定のコードは明らかに、何をしようとしているのかによって異なります。サーバーからデータを取得する必要がある場合は、ajax 呼び出しを発行してそのデータを取得します。

于 2012-06-17T04:35:22.133 に答える
0

これはハッシュ値と呼ばれ、ブラウザーからサーバーに送信されず、javascript によってのみアクセスできます。それらは次の方法で取得できます

var hash_val = window.location.hash;    

Javascriptもハッシュ変更のイベントを提供します

window.onhashchange = function(){
}

そして、コンテンツを変更したい場合は、

window.onload=function()
  {
   var hash_val = window.location.hash;    
    //do more ajax stuff here
  }
于 2012-06-17T04:36:58.433 に答える