Проблема с внутренними якорями и ссылками - PullRequest
0 голосов
/ 18 декабря 2009

Я создал сайт типа брошюры со ссылками на различные разделы на странице.

http://www.leoniepalmer.com/

При нажатии на пункт меню в правом верхнем углу все отлично работает!

Теперь у меня есть вторая страница на

http://www.leoniepalmer.com/our-gourmet-tours/

И я хочу, чтобы меню затем вернулось домой к соответствующему якору, то есть, нажав «О», вы перейдете к

http://www.leoniepalmer.com/#about

К сожалению (по крайней мере, в FF 3.5.6), он, кажется, добавляет его к URL, и он становится довольно уродливым, а также не собирается туда, где должен!

Может ли быть это правило в моем .htaccess, которое добавляет косую черту к страницам без таковой?

   # Add trailing slash if missing
rewriteRule ^(([a-z0-9\-]+/)*[a-z0-9\-]+)$ $1/ [NC,R=301,L]

Как я могу изменить его для работы, или здесь есть что-то еще?

UPDATE

Я не думаю, что ответ вообще полезен.

Вы можете создать ссылку на Id с помощью фрагмента #anchor.

1 Ответ

1 голос
/ 18 декабря 2009

ОК, я думаю, это потому, что вы используете тег <div> в качестве цели ссылки. Правильно, именованные теги, являющиеся целью ссылок на местоположение на странице, также являются тегами <a>, ваш синтаксис похож на <a name="about">About Leonie and Stef Palmer</a>

Вот источник:

источник

This creates an anchor around the text "This is the location of anchor one.". Usually, the contents of A are not rendered in any special way when A defines an anchor only.

Having defined the anchor, we may link to it from the same or another document. URIs that designate anchors contain a "#" character followed by the anchor name (the fragment identifier). Here are some examples of such URIs:

An absolute URI: http://www.mycompany.com/one.html#anchor-one
A relative URI: ./one.html#anchor-one or one.html#anchor-one
When the link is defined in the same document: #anchor-one

На всякий случай, вы можете сделать ссылку на панели навигации на полный документ:

<a href="http://www.leoniepalmer.com/index.php#about">About</a>

Этот вариант использования не только описан выше, но и экономит Apache. Включение полного пути позволяет браузеру переходить прямо к странице, тогда как отсутствие имени документа означает, что браузер должен спросить Apache на вашем сервере, как называется страница, и затем перейти туда - 2 подключения по цене 1

...