2016-12-23 3 views
0

Итак, мой сайт включает в себя двухсекционную навигацию, обе точки - это якоря, размещенные на главном сайте. Я добавил. На этом сайте есть другие ссылки, которые приводят к subsites. Теперь мне трудно получить одни и те же навигационные точки только на подсайтах для загрузки якорей при возвращении на основной сайт, на котором они были первоначально размещены. Пробовал несколько методов, найденных в Интернете, но ни один из них не работал.Якорь не загружается на новую страницу

Я также добавил гладкую прокрутку с некоторыми jquery, найденными в Интернете, а также попытался удалить предупреждение по умолчанию.

Это - мой сайт http://stefangloeggl.com, подводным страницам можно связаться, кликая на одной из первых фотографий.

Моя разметка выглядит примерно так.

<a href="index.php#work">Work</a> 
<a href="index.php#about">About</a> 

<div name="work" id="work"> 
Work 
</div> 

<div name="about" id="about"> 
Biography 
</div> 

Приятно оценить некоторую помощь по этому вопросу.

+0

Пожалуйста, создайте JSFiddle (https://jsfiddle.net/), где каждый может воспроизвести ошибку. Это увеличивает ваши шансы на получение какой-либо помощи значительно. – tiblu

+0

Я бы создал один, я просто не знаю, вариант два создать два html-сайтов, которые мне нужно будет продемонстрировать проблему. – nafets97

ответ

0

На вашей странице довольно странная структура. Кажется, что разметка вашей страницы имеет рост/ширину 100%, а ваши якоря - внутри друг друга. Лучшее решение - сделать чистую разметку с нуля.

Быстрое, но грязное решение заключается в том, чтобы добавить window.location.hash, проверяя готовность документа, затем активируйте плавный свиток.

Как это:

$(document).ready(function(){ 
if (window.location.hash.length>1) { 
    $('html, body').animate({ 
     scrollTop: $(window.location.hash).offset().top 
    }); 
} 
}); 
+0

Спасибо за помощь. Исправлена ​​проблема со вторым якорем внутри другого. Простите мне мою неопытность, но как я могу запустить ваш скрипт нажатием кнопки, который происходит на другой странице? (Я имею в виду, когда нажимается тег a на странице 1, будет ли он запускать выбранный сценарий на стр. 2?) – nafets97

+0

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

+0

Этот скрипт будет работать только на страницах, где он включен, и скрипт-хеш-раздел URL-адреса. Так что если в стр. 2 у вас есть #someid в url, он будет работать. Думаю, с вашим exp. вам лучше найти какое-то решение, например http://benalman.com/projects/jquery-hashchange-plugin/ на главной странице плагина вы можете найти пример события привязки (переместить код из моего ответа внутри этого события) и вызвать его из других мест , – MadDocNC

Смежные вопросы