0 Пользователей и 1 Гость просматривают эту тему.
  • 2 Ответов
  • 1369 Просмотров
*

sifoz

  • Осваиваюсь на форуме
  • 61
  • 2
Здравствуйте. Установил плагин плавного скроллинга для якоря - smooth_scroll. Работает замечательно (нет проблемы с разными ссылками на странице, как у некоторых скриптов). Но, на сайте верхнее липкое меню, и при скроллинге до якоря верхнее меню закрывает часть нужного контента. Решение простое - сделать отступ для скроллинга на высоту меню....не силён в яве, искал что-то подобное в скрипте плагина, но тщетно. Может кто подскажет где задать отступ? Вот код функции:
Код
(function(t){function e(t){return t.replace(/(:|\.)/g,"\\$1")}var l="1.4.13",o={},s={exclude:[],excludeWithin:[],offset:0,direction:"top",scrollElement:null,scrollTarget:null,beforeScroll:function(){},afterScroll:function(){},easing:"swing",speed:800,autoCoefficent:2,preventDefault:!0},n=function(e){var l=[],o=!1,s=e.dir&&"left"==e.dir?"scrollLeft":"scrollTop";return this.each(function(){if(this!=document&&this!=window){var e=t(this);e[s]()>0?l.push(this):(e[s](1),o=e[s]()>0,o&&l.push(this),e[s](0))}}),l.length||this.each(function(){"BODY"===this.nodeName&&(l=[this])}),"first"===e.el&&l.length>1&&(l=[l[0]]),l};t.fn.extend({scrollable:function(t){var e=n.call(this,{dir:t});return this.pushStack(e)},firstScrollable:function(t){var e=n.call(this,{el:"first",dir:t});return this.pushStack(e)},smoothScroll:function(l,o){if(l=l||{},"options"===l)return o?this.each(function(){var e=t(this),l=t.extend(e.data("ssOpts")||{},o);t(this).data("ssOpts",l)}):this.first().data("ssOpts");var s=t.extend({},t.fn.smoothScroll.defaults,l),n=t.smoothScroll.filterPath(location.pathname);return this.unbind("click.smoothscroll").bind("click.smoothscroll",function(l){var o=this,r=t(this),i=t.extend({},s,r.data("ssOpts")||{}),c=s.exclude,a=i.excludeWithin,f=0,h=0,u=!0,d={},p=location.hostname===o.hostname||!o.hostname,m=i.scrollTarget||(t.smoothScroll.filterPath(o.pathname)||n)===n,S=e(o.hash);if(i.scrollTarget||p&&m&&S){for(;u&&c.length>f;)r.is(e(c[f++]))&&(u=!1);for(;u&&a.length>h;)r.closest(a[h++]).length&&(u=!1)}else u=!1;u&&(i.preventDefault&&l.preventDefault(),t.extend(d,i,{scrollTarget:i.scrollTarget||S,link:o}),t.smoothScroll(d))}),this}}),t.smoothScroll=function(e,l){if("options"===e&&"object"==typeof l)return t.extend(o,l);var s,n,r,i,c=0,a="offset",f="scrollTop",h={},u={};"number"==typeof e?(s=t.extend({link:null},t.fn.smoothScroll.defaults,o),r=e):(s=t.extend({link:null},t.fn.smoothScroll.defaults,e||{},o),s.scrollElement&&(a="position","static"==s.scrollElement.css("position")&&s.scrollElement.css("position","relative"))),f="left"==s.direction?"scrollLeft":f,s.scrollElement?(n=s.scrollElement,/^(?:HTML|BODY)$/.test(n[0].nodeName)||(c=n[f]())):n=t("html, body").firstScrollable(s.direction),s.beforeScroll.call(n,s),r="number"==typeof e?e:l||t(s.scrollTarget)[a]()&&t(s.scrollTarget)[a]()[s.direction]||0,h[f]=r+c+s.offset,i=s.speed,"auto"===i&&(i=h[f]||n.scrollTop(),i/=s.autoCoefficent),u={duration:i,easing:s.easing,complete:function(){s.afterScroll.call(s.link,s)}},s.step&&(u.step=s.step),n.length?n.stop().animate(h,u):s.afterScroll.call(s.link,s)},t.smoothScroll.version=l,t.smoothScroll.filterPath=function(t){return t.replace(/^\//,"").replace(/(?:index|default).[a-zA-Z]{3,4}$/,"").replace(/\/$/,"")},t.fn.smoothScroll.defaults=s})(jQuery);

(function($) {
  $(function() {
       $('a').smoothScroll();
      })
  })(jQuery)
}
}
initJQ();
*

darkghost

  • Практически профи
  • 2100
  • 95
надо смотреть в сторону CSS --- ссылку на сайт, будет быстрее
*

Pashtetdiz

  • Осваиваюсь на форуме
  • 173
  • 4
Может кому еще пригодится...
Для отступа необходимо значение offset:0 поменять допустим на -100
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Фильтрации текста (Нужна реанимация)

Автор vetalb91

Ответов: 0
Просмотров: 155
Последний ответ 17.08.2017, 17:56:42
от vetalb91
Нужна помощь, проблема с отображением, Joomla 2.5

Автор Vasilisa11

Ответов: 9
Просмотров: 245
Последний ответ 17.08.2017, 14:36:46
от nafania_19
Извлечение настроек плагина в контроллере

Автор maksimYrievich

Ответов: 1
Просмотров: 143
Последний ответ 19.02.2017, 17:52:08
от ProtectYourSite
Требуется помощь

Автор yurkesh74

Ответов: 1
Просмотров: 130
Последний ответ 15.02.2017, 12:14:27
от vipiusss
Нужна помощь

Автор артур

Ответов: 1
Просмотров: 127
Последний ответ 11.02.2017, 19:47:04
от hels