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    436

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

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


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

и к ней в параграф дописываю 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 411

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

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


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

"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 097

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

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

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

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

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


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

верно. завыл совсем про <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 грохнуть, сыпится вся страница. Спасибо кто поможет.

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


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

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

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

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

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

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

Войти

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

Войти


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

    • От 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 - модуль для быстрого доступа к любому модулю, через удобный пункт меню.
      Руководство пользования:
       
    • От alex0410
      Подскажите пожалуйста, как можно добавить к товарам shop/ , что бы в итоге получилось sait.ru/shop/ссылка-на-товар
      Хотел перенести с вордпресс на опенкарт, товары перенес, ссылки тоже, но в вордпрессе в товаре ссылка имеет вид shop/ 
      Через категории не получится сделать, т.к. они имеют другие ссылки. Пробовал ковыряться с seo_url.php но не вышло, то ко всем ссылкам добавляет shop/, то страница не найдена.
      Установить модуль и сгенерировать не вариант, т.к. эти ссылки уже в индексе и не хотелось бы терять позиции.
      Как можно это исправить?
    • От Loys
      Добрый день! Нужны советы по следующему вопросу. Был магазин на Opencart 2.0.1.1, сейчас сделали ИМ на ocStore 2.3(последняя версия), при этом товары заливаются заново, так как структура ИМ совсем другая, то есть если раньше была ссылка brand/krossovki_leto/tovar_1, то теперь mens-shoes/tovar-1. Товаров очень много, около тысячи, поэтому интересует ваш опыт или ваши советы как лучше организовать постраничный редирект. Знаю, что сейчас будут многие писать "Ищи на форуме", я уже просмотреть достаточное количество тем, но там в основном делают редирект на 1-2 страницы, мне же нужно сделать куда больше. Готов даже руками прописывать в .htaccess, только подскажите как лучше спарсить таблицу в виде "Название товара | Ссылка". Пробовал пару бесплатных модулей для редиректа, но они криво работают, поэтому надеюсь на вашу помощь! Спасибо!
    • От AWARO
      Всем владельцам Интернет магазинов посвящается!

      Первый вопрос!

      *Советник Яндекса* (ЯС) это?
       - Несанкционированная реклама на ваших сайтах?  - Посыл в жесткий демпинг?  - Ни что иное, как дефейс сайта интернет-магазина - ЯС - Яндекс Сволочь)) Второй и самый главный вопрос!

      Кто из вас давал разрешение Яндексу, для того, чтобы их сервис *Советник яндекса* размещал свою рекламу на сторонние сервисы (включая и на сам *Яндекс Маркет* рекламу - при просмотре вашего сайта на стороне пользователя!? !? !?
      ...объясняя это недоразумение вот этим
       !?
      ----------------------------------------------
      Ещё интересный нюанс:
      Подключаем *Яндекс Директ*
      Оплачиваем компанию -
      Пользователь попадает к вам на сайт -
      Оттуда уходит на другой сайт через  *Яндекс Советник*
      Правда весело?)
       ---------------------------------------------

      Стоим у входа в Яндекс и отправляем к Гуглу
      а ещё лучше сидим на шее у каждого сотрудника яши и ...

      ----------------------------------------------
      Если вам не без разницы будущее вашего бизнеса то подключайтесь к обсуждению, дискусии а возможно в дальнейшем и к судебному иску на Яндекс
      т,к. по мимо всего прочего:
  • Последние посетители   0 пользователей онлайн

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