2

こんにちは、私のサイトにアンカーがあります。私のサイトを呼び出すと、URLは次のようになります。

http://site.com/page.php

ボタンをクリックすると、非表示にしたい URL が表示されます。

http://site.com/page.php#1

mod_rewrite ツールを使用してこれを変更できることがわかりました。私は成功せずにこのルールを試しました:

RewriteEngine オン

RewriteCond %{REQUEST_URI} ^(.*)\.html$
RewriteRule ^.*\.html$ %1.php [L]

ページを html または php として呼び出し、#1.php の背後に隠すため

RewriteRule ^(.*)$ ./php#1=php$1

これを解決する方法についてアドバイスをくれる人がいれば、本当に感謝しています。どうもありがとう。

4

4 に答える 4

1

mod_rewrite を介してこれを達成することはできません。

以降の URL#はサーバーを経由しません。

それでもこれを実現したい場合は、JavaScript を使用して行うことを検討してください。

<a href="#checkthisout" onclick="scrollHere">Check this out</a>

JavaScript:

function scrollHere() {
    // Scroll to the anchor 
    //(you may need to look for some script to achieve this)

    return false; // to prevent URL overwriting
}

そのようなスクリプトの 1つがこの jQuery.scrollToです。

于 2012-07-24T10:58:06.423 に答える
0

HTML

<a href='page'>Home Page</a>

<a href='page/1'>Page 1</a>
<a href='page/2'>Page 2</a>
<a href='page/3'>Page 3</a>

として書き換え

RewriteRule ^$ page.php [L]
RewriteRule ^([a-z]+)/?([0-9]*)/?$ page.php?index=$2 [L]

そして、phpでインデックスを確認してください

<?php 
if (isset($_GET['index']))
{
      $pageNo =$_GET['index'];
}
//based on page NO display contents 

?>

于 2012-07-24T11:07:03.010 に答える
0

ハッシュタグがサーバーに送信されることはないため、ハッシュタグに基づくルールを作成することはできません。

于 2012-07-24T10:57:55.423 に答える
0

# タグを削除するには、次のようにします。

<a href="javascript:void(0);">Your text</a>.

だから「javascript:void(0);」と書くと タグの href 属性で、それだけです。

于 2012-07-24T11:05:47.183 に答える