2011-12-28 6 views
1

今のところlocation.hrefhttp:/domain.com/en/であるとします。このURLは私がやっているユーザーのコピーと共有するので、もし私が、それは私が必要なものURLを知っているhttp://domain.com/en/#opened-File.html/1ハッシュナビゲーションURLの作成

こうなりたいクリックした後

$(document).ready(function(){ 
    var info = window.location.hash.match(/^#([^\/]*)\/([^-]*)-(.*)$/), 
     url="", nivel="", seccion=""; 
    if (info) { 
     url = info[1]; 
     nivel = info[3]; 
     seccion = info[2]; 
     location.href = url; 
    } 
} 

をWICHが正常に動作し、私の質問は:

  • これは良いですか?
  • これはseo-frendlyですか?
  • あなたはそれを違うのですか?

これは

$('nav a').each(function(){ 
     if(!$(this).hasClass('enlaceAnulado')){ 
     /*Recopilamos*/ 
      var href = $(this).attr('href'); 
      var id = $(this).attr('id'); 
      var parts = id.split("_"); 
      var seccion = parts[0]; 
      var nivel = parseInt(parts[1])+1; 
     /*Quitamos el enlace*/ 
      $(this).attr('href','javascript:void(0)'); 
     /*Guardamos la información.*/ 
      $(this).data('hrefnot',href); 
      $(this).data('nivel',nivel); 
      $(this).data('seccion',seccion); 
      $(this).addClass('enlaceAnulado'); 
     } 
    }); 

のでリンクは静的と一緒に動作しますが、URLが持っているかのように私は

+0

あなたの投稿に編集を提案しました。その中に、不足している '}'を追加しました。コードは "うまく動作する"ので、質問を投稿している間にこのタイプミスを推測しました。そうでない場合は、編集を元に戻してください。 – PPvG

+0

それはケースです、ありがとう!!!! –

答えて

1

検索エンジンのインデックスにAJAXを経由して、あなたのページのコンテンツをユーザーエクスペリエンスと負荷の内容を改善するために、これを行いますハッシュに続くものは何もない。ハッシュナビゲーションは、ブラウザがナビゲーション履歴を維持することを目的としています。索引付けするコンテンツを常に静的にする必要があります。これをあなたの3つの質問すべてに対する答えと考えてください。

+0

私は何をしているのかを明確にするために編集された質問です。おそらくサイトを見てみると意味があります。http://toniweb.us/gm –

+0

視覚的な変化でコンテンツを変更してもユーザーエクスペリエンスは向上しません。率直に言って、それはしばしば刺激的であると考えられています。あなたのケースでは、コンテンツを動的にする他の理由はなかったので、私の意見は、それを静的にし、 "/ en/about"、 "/ en/gallery /"などのリンクを提供することだけです –

+0

それは実際に私の呼び出しではありません... :( –

0

これは良いアプローチですか?

私の最初の傾きが

はこのSEO-やさしいです、これは(など、PHP、Pythonの、asp.net、Apacheのリライト)サーバ側のために良い仕事であると考えているのですか?

私はハッシュについて心配し、その代わりにより良いURLのプラクティスを利用します。

あなたは違うのですか?

私はサーバーの解析(mod rewriteなど)をjavascriptではなくUrlにしたいと思っています。

0

私はニキータボルコフの答えに以下を追加したいと思います:(Googleはtrying to change thatですが)

検索クローラは、一般的にJavaScriptコードを実行しないでください。これは、JavaScriptを使用して静的なページにリダイレクトすることを意味します。

location.href = url; 

...は動作しません。

ハッシュタグ付きのURLをよりSEOに対応させるには、サーバー側で行う必要があります。

+0

しかし、それは、ユーザーが自分のナビゲーションからリンクを共有する場合にのみ起こることに注意してくださいgoogleは通常のURLを読む必要があるので –

+0

ああ、 。 – PPvG

関連する問題