2013-12-11 2 views
0

У меня есть сайт с двумя страницами, я пытаюсь связать вторую страницу с первой страницей, где присутствует div, с которой я пытаюсь.Якорная бирка Ссылка на ID на другой странице с анимацией

<li class="menuitem"> 
    <a href="index.html#services">Go Back</a> 
</li> 

Он отправляется в службу div с тегом id и оставляет тег id в адресной строке.

Im пытается анимировать его к месту и удалять метку id из адресной строки.

это как страница 1 выглядит -

<div id="home"></div> 
<div id="about"></div> 
<div id="gallery"></div> 
<div id="services"></div> 
<div id="contact"></div> 

JQuery используется для соединения DIV в одной странице -

$(function() { 
    $('a[href*=#]:not([href=#])').click(function() { 
     if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) { 
      var target = $(this.hash); 
      target = target.length ? target : $('[name=' + this.hash.slice(1) +']'); 
      if (target.length) { 
       $('html,body').animate({ 
        scrollTop: target.offset().top 
       }, 1000); 
       return false; 
      } 
     } 
    }); 
}); 
+1

1. Вам нужно JavaScript или JQuery и плагинов 2. Вы могли бы сочетать контент на 1 странице учитывая, что вы только 2, гораздо легче ориентироваться и анимации и т.д. – Godinall

ответ

0

Вы не можете изменить URL после того, как загружен, вы должны играть с вашим запросом

http://api.jquery.com/focus/

Попробуйте использовать печенье запоминанию а затем с помощью JQuery вы можете сосредоточиться на том, что один

Или с помощью javscript

window.onload=getloaded(); 
function getloaded() {  
     var g=document.URL ; 
     if(g.indexOf('services')!=-1) { 
      // focus on services 
     } 
} 

или как этот

$('html,body').animate({scrollTop:$("#your element").offset().top},'slow'); 
1

с window.location.hash вы можете читать и писать хэш-значение. Так что на PageLoad вы в основном следующие:

$("html, body").animate({ 
    scrollTop: $('#'+window.location.hash).offset().top 
}, 1000); 
window.location.hash=''; 
+0

хорошую идею я не думаю, что это один –

+0

не имеют много опыт работы в jquery, я добавил jquery im using to animate to div на странице, могу ли я передать это в том, чтобы оживить службы на другой странице? –

+0

Если вы добавили вышеприведенный код на документ-загрузку, DOM-Element был идентификатором, то же самое, что и хеш будет прокручиваться. Вы меняете контент по HTTP-запросу (например, ссылку) или с помощью DOM-манипуляции (например, с помощью jQuery)? –

0

Просто используйте якорный тег с

href="my_page.html#my_anchor_name" 

, который будет прокручивать к любому HTML элементу с идентификатором, равным my_anchor_name на странице my_page.html при условии, что страница принадлежит тот же домен. Если вы хотите установить ссылку на ту же страницу, просто опустите имя страницы my_page.html.

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