Изменение url
Доброго времени суток. Как можно сделать такую вещь - есть ссылка, к примеру sitename/test/ как можно из test сделать якорь, при этом не меняя самого url. Вот более детальный пример как нужно (меню)
|
Думаю можно использовать свойства тега body - scrollTop:
var body_obj = document.getElementsByTagName('body')[0]; body_obj.scrollTop = 900 (цифра может быть другой; в зависимости от положения на странице) либо jquery: $("html, body").animate({ scrollTop: 900 }, 1000); И ссылка никуда не ведет, на ней висит событие onclick, которое и выполняет код. |
Цитата:
Цитата:
|
Цитата:
Почему нельзя оставить ссылку, ведущей к якорю, а в обработчике скроллить к этому якорю, отменив действие ссылки? |
Это не помогает, потому что у ссылки указывается href.
<a href="/temp">пример</a> и при нажатии на эту ссылку страница должна прокручиваться к нужному блоку. Первое, что приходит в голову это якоря, на этогда ссылка будет /#temp а нужно что бы та и оставалось /temp |
|
Этот вариант подходит так же как и первый. Проблема в том, что при нажатии на ссылку в урл не добавляется /gosha
|
Простите не совсем понял, что вы имеете ввиду.
Цитата:
Объясните подробно чего вы хотите добится. Ибо я так-же поддерживаю предположение danik.js, о возможном бане за данное применение. |
Зачем? - поставили такую задачу и нужно решить, я уже голову сломала( Смотрите, мы заходим на сайт, при клике на пункт меню "о компании" url страницы меняется на название сайта/about/ и страница прокручивается до нужного блока. И так с каждым пунктом меню
|
Это выпендреж. В итоге получается что по разным url\'ам доступна одна и таже страница. Ничего хорошего в этом нет.
Для этого случая лучше всего подойдут именно якоря! А юзеру абсолютно пофигу че там в адресной строке - site.ru#anchor или site.ru/anchor. Так зачем использовать худший вариант? |
Часовой пояс GMT +3, время: 04:50. |