sowulon

[Решено {RTFM w3::html}] Ссылки внутри страницы (<a href="#razdel1">)

Рекомендуемые сообщения

sowulon    1

Люди добрые! Поможите кто чем может!

 

Никак не могу разобраться с внутренними ссылками (внутри одного документа или статьи)

 

Вот, например, есть уже готовая статья. В статье достаточно много текста и посреди него затесались несколько городов, к которым мне нужно сделать отсылку с самого верха статьи.

 

Беру статью, нажимаю кнопочку "Источник" - вижу html - замечательно.

 

там где должна быть ссылочка, пишу:

 

<p><a href="#odessa">Одесса</a></p>
 
нахожу ниже в тексте эту злополучную Одессу
 
и к ней в параграф дописываю id получается как-то так <p id="odessa">какой-то текст</p>
 
По логике, появившаяся ссылка должна вести именно к месту указания id, верно?
 
а у меня на сайте, после нажатия на эту ссылку перебрасывает на главную, а в адресной строке вот такой урл:
 
site.ua/#odessa
 
Как же быть? Что делать? Где изменять?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
toporchillo    449

<a name="odessa" /><p>какой-то текст</p>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
rb2    408

и к ней в параграф дописываю id получается как-то так <p id="odessa">какой-то текст</p>

 

По логике, появившаяся ссылка должна вести именно к месту указания id, верно?

Нет.

Вебмастер должен опираться на стандарты, а не логику.

http://www.w3.org/TR/html401/struct/links.html#h-12.1.3

написано черным по белому: "When the _name_ or _id_ attributes of the A element are set, the element defines an anchor that may be the destination of other links."

То есть по стандарту только "A" можно использовать в качестве цели для якоря. А не любой элемент.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sowulon    1

и к ней в параграф дописываю id получается как-то так <p id="odessa">какой-то текст</p>

 

По логике, появившаяся ссылка должна вести именно к месту указания id, верно?

Нет.

Вебмастер должен опираться на стандарты, а не логику.

http://www.w3.org/TR/html401/struct/links.html#h-12.1.3

написано черным по белому: "When the _name_ or _id_ attributes of the A element are set, the element defines an anchor that may be the destination of other links."

То есть по стандарту только "A" можно использовать в качестве цели для якоря. А не любой элемент.

Вот почему-то моему сайту абсолютно фиолетово на стандарты.. Не работают внутренние ссылки, хоть ты тресни..

Пробовал в <a>, <p>, <h2>, пробовал id="" и name="" - результат один, вылет на главную и в урле #odessa

Наверное придется обойтись без внутрянок.. 

 

Даже вот так попробовал сделать:

 

<a name="odessa" /><p>какой-то текст</p>

Но понял, что делать так не стоило.. Не обратил внимание на то, что <a> сразу и открывающий, и закрывающий был :-) . После вставки этой строчки и сохранения статьи, редактор автоматом ее прописал во все параграфы, которые находились ниже этой вставки :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sowulon    1

да, если я ставлю где угодно в статье ссылку вида <p><a href="#">Текст</a></p> - после перехода меня точно также выбрасывает на главную с таким URL   site.ua/#

Может я где-то что-то выключил? Или наоборот, включил?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
freelancer    1 420

а можно это вживую посмотреть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 100

"base href" удалили?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sowulon    1

"base href" удалили?

это тот, который в header.tpl? Нет, на месте.

 

а можно это вживую посмотреть?

http://sokrates.com.ua/%D0%BE-%D0%BA%D0%BE%D0%BC%D0%BF%D0%B0%D0%BD%D0%B8%D0%B8.html

 

вот тут две ссылочки "Одесса" и "Вверх"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 100

base href делает свое хитрое дело :ugeek: 

как вариант - использовать такие ссылки в статьях

<a href="javascript:;" onclick="document.location.hash='anchor';">Anchor</a>

или переработать вывод содержимого статей/описаний для вывода корректных URLов в ссылках с якорями.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
freelancer    1 420

верно. завыл совсем про <base>

конкретно в вашем случае ссылка должна быть такой

http://sokrates.com.ua/%D0%BE-%D0%BA%D0%BE%D0%BC%D0%BF%D0%B0%D0%BD%D0%B8%D0%B8.html#odessa

либо добавьте скрипт на эту страницу

 

$(document).ready(function() {
var pathname = window.location.href;
$('a').each(function(){
var link = $(this).attr('href');
if (link.substr(0,1) == "#") {
$(this).attr('href') = pathname + link;
}
});
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sowulon    1

Спасибо Огромное! Заработало!! :eek:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
CRESH    0

Ребята привет, создал тему https://opencartforum.com/topic/60442-%D0%BD%D0%B5-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82-%D0%B0%D0%BD%D1%85%D0%BE%D1%80-%D0%BD%D1%83%D0%B6%D0%BD%D1%8B%D0%BC-%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%BC-%D0%B8-%D0%BF%D0%BB%D0%B0%D0%B2%D0%BD%D1%8B%D0%B9-%D0%BF%D0%B5%D1%80%D0%B5/ у меня та же проблема, не помогает этот пример что вы описали, да и если base грохнуть, сыпится вся страница. Спасибо кто поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Похожий контент

    • От AnorGarde
      Всем доброго дня.
      Странная ситуация сложилась в каталоге - обращаешься по одному адресу /категория_1.1, редиректит на категорию
      категория_2.1/категория_2.2/категория_2.3/категория_2.1/категория_2.2/категория_2.3/категория_2.1/категория_2.2/категория_2.3/категория_1.1/
       
      Ситуация сложилась после того, как категории из-за баги импорта потерлись. Проблема в том, что доступа к базе, если в ней проблема у меня нет и надо будет напрягать поддержку, чтобы наконец его выклянчить. Потому у меня вопрос, если кто-то сталкивался - это трабла с урлами в базе или кэш/модули или еще какая-нибудь?
    • От x7dis1
      Народ - подскажите пожалуйста куда копать. Есть сайт на опенкарте - в футере в блоке информация при нажатии на любую из ссылок - перекидывает на главную страницу. и не открывает нужную например о доставке и т.д. 

      в карте сайта так же отображается - что эти страницы есть - но при нажатии переходит опять на главную. уже всю голову сломал - куда копать?

    • От morrison4394
      Добрый день, подскажите, пожалуйста, как в статью добавить кликабельную картинку? Опенкарт 2.3
      Код у картинки такой <img src="http://xxx.ru/image/catalog/tke.png" style="width: 310px;">
    • От Ngmt

      300.00 руб
      Скачать/Купить дополнение


      FastLinker - быстрый доступ к любому модулю
      FastLinker - модуль для быстрого доступа к любому модулю, через удобный пункт меню.
      Руководство пользования:
       
      Добавил Ngmt Добавлено 12.10.2017 Категория Модули Системные требования Сайт разработчика Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.2
      2.1
      2.0 ocStore 2.2
      2.1 OpenCart.Pro, ocShop Не проверялось  
    • От Ngmt
      FastLinker - модуль для быстрого доступа к любому модулю, через удобный пункт меню.
      Руководство пользования:
       
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу