Переход к якорю
Добрый день. Делаю переход к якорю при клике на область с ссылкой. Но при клике выдается ошибка
TypeError: $(...).offset(...) is undefined destination = $(target).offset().top; И переход не происходит. Вот код $(".yakor").click(function(){ var target = $(this).find("a").attr("href"); destination = $(target).offset().top; if($.browser.safari){ $('body').animate( { scrollTop: destination }, 1100 ); }else{ $('html').animate( { scrollTop: destination }, 1100 ); } return false; }); <li class="yakor"> <a href="#tren">Тринажеры</a> </li> .... <p> <a name="tren"></a> Тренажеры </p> Заранее спасибо всем, кто поможет! |
target равен #tren
$('#tren') - это обращение по id, а не по name |
diakon,
проверьте в начале скрипта что возвращает $(this).find("a") |
Цитата:
<!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> body { height: 1000px } </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script> $(function(){ $(".yakor").click(function(){ var target = "[name='"+$(this).find("a").attr("href").substr(1)+"']", destination = $(target).offset().top; $('body, html').animate( { scrollTop: destination }, 1100 ); return false; }); }); </script> </head> <body> <li class="yakor"> <a href="#tren">Тринажеры</a> </li> .... <p> <a name="tren"></a> Тренажеры </p> </body> </html> |
Рони, спасибо! +от меня
Проблема не в # - я replace удалил его и не заработало. Но код, Рони работает. Спасибо всем, кто решил помочь! |
diakon,
$.browser.safari -- такого давно нет в jquery |
Часовой пояс GMT +3, время: 08:03. |