VladSI 15 Жалоба Опубликовано: November 22, 2015 при загрузке. setTimeout(function() { if (window.location.hash) { var hash = window.location.hash.substr(1); var scrollPos = $('a[name='+hash+']').offset().top; $("html, body").animate({ scrollTop: scrollPos }, 1000); } }, 1);Как встроить?Сейчас поставил это: $(document).ready(function(){ var scrollTop = $('#row_ad').offset().top; $(document).scrollTop(scrollTop);}); Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
VladSI 15 Жалоба Опубликовано: November 22, 2015 Собрал так, плавный скролл. $(document).ready(function(){ var scrollTop = $('#row_ad').offset().top;$('html, body').animate({ scrollTop: $(row_ad).offset().top }, 1200);}); Это правильно в плане кросбраузерности? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
h-i 30 Жалоба Опубликовано: November 22, 2015 Собрал так, плавный скролл. $(document).ready(function(){ var scrollTop = $('#row_ad').offset().top;$('html, body').animate({ scrollTop: $(row_ad).offset().top }, 1200);}); Это правильно в плане кросбраузерности? А зачем тут var scrollTop = $('#row_ad').offset().top;? Это же переменная, но она нигде не используется.Ну и в$('html, body').animate({ scrollTop: $(row_ad).offset().top }, 1200);$(row_ad) должно быть либо $('.row_ad') если row_ad типа class, либо $('#row_ad') если row_ad типа id (в данном случае тут похоже id). А насчёт кроссбраузерности, тут её на себя берёт сама jquery, если ветка 1.x то начиная с IE6 поддерживается почти всё. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
abushyk 694 Жалоба Опубликовано: November 22, 2015 все что написано на жиквери имеет плюс к кросбраузерности, так как жиквери именно для кроссбраузерности и задумывалась. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
VladSI 15 Жалоба Опубликовано: November 22, 2015 А зачем тут var scrollTop = $('#row_ad').offset().top;? Это же переменная, но она нигде не используется.Ну и в$('html, body').animate({ scrollTop: $(row_ad).offset().top }, 1200);$(row_ad) должно быть либо $('.row_ad') если row_ad типа class, либо $('#row_ad') если row_ad типа id (в данном случае тут похоже id). А насчёт кроссбраузерности, тут её на себя берёт сама jquery, если ветка 1.x то начиная с IE6 поддерживается почти всё.Да там id, решётку добавить значит нада?offset().top ещё подправил, а то ни туда приезжало. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
abushyk 694 Жалоба Опубликовано: November 22, 2015 Если ид то добавить решетку. И кавычки. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
VladSI 15 Жалоба Опубликовано: November 22, 2015 А насчёт кроссбраузерности, тут её на себя берёт сама jquery, если ветка 1.x то начиная с IE6 поддерживается почти всё.А переменная в $() разве не влияет? Я про неё спрашиваю, что правильней вписать document или 'html, body' Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
abushyk 694 Жалоба Опубликовано: November 22, 2015 Для animate нужно вписывать то, что должно прокрутиться, т.е. хтмл и боди. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах