перемещение к якорю
Здравствуйте!
Помогите плз со следующей проблемой, есть код:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript">
$(function (){
$('.tabsfree a').on('click',function(event){location += '#tab3';
event.preventDefault();
$('.block iframe')[0].src = this.href;
});
})
</script>
проблема в следующем - при клике по ссылке идет перемещение к якорю tab3, все вроде бы хорошо, но есть еще ссылки, которые ведут к этому же якорю и в общем при повторном клике к урлу добавляется второй якорь и выглядит уже так - #tab3#tab3 и естественно не срабатывает( и как сделать перемещение плавным? |
drcrash,
а проверить перед тем как window.location.hash? |
то есть создать условие?
if ( window.location.hash = "#tab3") {
$('.#tab3').remove('#tab3');
}
|
Во первых, надо делать не
location += '#tab3' а что-то типа location = location.replace(/#tab\d$/, "#tab" + theValue) А во вторых, не слишком ли накладно перезагружать страницу при каждом переходе? Вы же и сервак дергаете. |
дергается внешний урл и вставляется в код страницы.
проверил, не работает(
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript">
$(function (){
$('.tabsfree a').on('click',function(event){location = location.replace(/#tab3\d$/, "#tab3" + theValue);
event.preventDefault();
$('.block iframe')[0].src = this.href;
});
})
</script>
|
drcrash,
Я же образно выразился, зачем копипастить то было?:) я всего лишь принцип обозначил. |
drcrash,
:-?
$(function (){
$('.tabsfree a').on('click',function(event){
event.preventDefault();
var hash = '#tab3';
location.hash != hash && (location += hash);
$('.block iframe')[0].src = this.href;
});
})
|
рони,
Да, сейчас с ссылкой при кликах все ок, не плодится в конце урла #tab3#tab3#tab3 но.... и срабатывает так же, как если бы плодилось - только при первом клике( |
Цитата:
location.hash != hash && (location.hash = hash) |
рони,
тоже самое( А если в ссылке, на которую кликаю добавить в конце #tab3 ? как тогда должен выглядеть скрипт? Тогда обработку клика можно будет включить - ведь перехода на другую страницу как такового не будет (что и не нужно) и передача в .block iframe сработает. или нет? |
| Часовой пояс GMT +3, время: 05:19. |