Добрый вечер!
Мучаюсь чтобы поймать клик, хочу приделать scrollspy, но банально не взять клик, вот сам сайт:
https://turisol.net/dev1/index.php?option=com_jomr...
(конкретно желтое меню, если по скролить ниже)
Пытался и по дата атрибутам, там мутулс установлен, и естественно через noconflict делаю, 0 результата. Подскажите куда пожалуйста куда двигаться.
Мой код:
var lastId,
topMenu = jQuery(".nav-tabs"),
topMenuHeight = topMenu.outerHeight()+15,
// All list items
menuItems = topMenu.find('a'),
// Anchors corresponding to menu items
scrollItems = menuItems.map(function(){
var item = jQuery(jQuery(this).attr("href"));
if (item.length) { return item; }
});
console.log(scrollItems);
// Bind click handler to menu items
// so we can get a fancy scroll animation
menuItems.click(function(e){
console.log("Click");
var href = jQuery(this).attr("href"),
offsetTop = href === "#" ? 0 : jQuery(href).offset().top-topMenuHeight+1;
jQuery('html, body').stop().animate({
scrollTop: offsetTop
}, 300);
e.preventDefault();
});
// Bind to scroll
jQuery(window).scroll(function(){
// Get container scroll position
var fromTop = jQuery(this).scrollTop()+topMenuHeight;
// Get id of current scroll item
var cur = scrollItems.map(function(){
if (jQuery(this).offset().top < fromTop)
return this;
});
// Get the id of the current element
cur = cur[cur.length-1];
var id = cur && cur.length ? cur[0].id : "";
if (lastId !== id) {
lastId = id;
// Set/remove active class
menuItems
.parent().removeClass("active")
.end().filter("[href=#"+id+"]").parent().addClass("active");
}
});
// end scroll spy