2010-12-17 10 views
0

私は過去2時間この問題を解決しようとしてきました。私はすでにGoogle上で言及されたすべてのソリューションを試したが、運がない。Modリライトページアンカー

まず、問題から始めましょう。このプラグインを使用しようとしています: http://www.gethifi.com/blog/a-jquery-plugin-to-create-an-interactive-filterable-portfolio-like-ours

私のウェブサイトで問題は、このプラグインがAnchorタグを使用していることです。それがなければ、それは動作していないようです。 さて、私は現在取り組んでいるウェブサイト上のユーザーフレンドリーURLで作業しようとしています。アンカーは機能しません。

これが今の私の.htaccessファイルです:空想

RewriteEngine On 
RewriteBase/
RewriteRule ^([^/]*)\.html$ /mysite/category.php?cat=$1 [L] 
RewriteRule ^([^/]*)/([^/]*)\.html$ /mysite/category.php?cat=$1&lang=$2 [L] 

何も、カテゴリと言語のためのちょうどいくつかの書き換え。動作しているようです唯一の事はこれです:

RewriteEngine On 
RewriteBase/
RewriteRule ^([^/]*)\.html$ /mysite/category.php?cat=$1 [L] 
RewriteRule ^([^/]*)/([^/]*)\.html$ /mysite/category.php?cat=$1&lang=$2 [NE,R,L] 

しかし、私はこれを使用するときに、私のユーザーフレンドリーなURLもなくなっています。代わりに、私は参照してください:category.php?cat = ....

これが重要かどうか分かりませんが、私が作業しているホストを指すのに<base href="">を使用しています。

ありがとうございました。

+0

「R」フラグが問題です。それがなければうまくいかないのですか? –

+2

「機能していません」 - 説明が不十分です。 – zerkms

+1

@Pekka:もし彼がリダイレクトを受けたのではなく、単に "働いていない"のであれば、彼はそれを見て、質問でそれを指定します:-) – zerkms

答えて

0

プラグインをmod_rewriteと組み合わせて使用​​する方法が見つかりませんでしたので、別のプラグインをあきらめて使用しました。それは働くアンカーを必要としないので、見つけることができるようです。

平和。

編集:

これは私が今使っているコードです:

 $(document).ready(function() { 

      $('.menu li a').click(function() { 


       $('.menu li').removeClass('selected'); 
       $(this).parent('li').addClass('selected'); 

       thisItem = $(this).attr('rel'); 

       if(thisItem != "all") { 

        $('.item li[rel='+thisItem+']').stop() 
                  .animate({'width' : '110px', 
                     'opacity' : 1, 
                     'marginRight' : '.5em', 
                     'marginLeft' : '.5em' 
                     }); 

        $('.item li[rel!='+thisItem+']').stop() 
                  .animate({'width' : 0, 
                     'opacity' : 0, 
                     'marginRight' : 0, 
                     'marginLeft' : 0 
                     }); 
       } else { 

        $('.item li').stop() 
            .animate({'opacity' : 1, 
               'width' : '110px', 
               'marginRight' : '.5em', 
               'marginLeft' : '.5em' 
               }); 
       } 
      }) 

      $('.item li img').animate({'opacity' : 0.5}).hover(function() { 
       $(this).animate({'opacity' : 1}); 
      }, function() { 
       $(this).animate({'opacity' : 0.5}); 
      }); 

     }); 

私はdiv要素に、リストからそれを変更しました。

+0

あなたが使ったプラグインがあなたのために働いたことを世界に伝えてください。たぶん、他の人が同じ質問に遭遇するかもしれない... – Select0r

+0

@ Select0r:私は謝罪し、ここに解決策を置くことについて考えなかった。 Greetz。 – moonwalker

1

アンカー#はURLの一部ですが、Apacheは無視して書き換えを行いません。

クライアントアプローチを使用するのが唯一の回避策です。

またはお試しくださいPHP parse_url - PHP_URL_FRAGMENT