В принципе, я хочу иметь определенные точки на своем веб-сайте, которые действуют как «магниты». Если вы находитесь рядом с одним из них, окно должно прокручиваться вверх, подобно этому плагину jQuery: http://benoit.pointet.info/stuff/jquery-scrollsnap-plugin/jQuery не регулирует положение прокрутки
Проблема заключается в том, что окно не прокручивается, даже если страница находится в диапазоне от " магнит".
здесь является JQuery:
$(document).ready(function() {
var magnets = [];
var range = 200;
var active = true;
$('.container').each(function(i,obj) {
magnets.push($(this).offset().top);
});
console.log(magnets);
var attract = function(where,time){
$('html, body').animate({
scrollTop: where
}, time);
active = false;
};
//checks the range of a magnet
var magnetic = function(what){
var top = $(window).scrollTop();
var min = top - range;
var max = top + range;
if((min <= what) && (max >= what)){
return true;
} else{
return false;
}
}
//returns, wether you are in range of a magnet from your magnets array or not
var inRange = function(){
var magnet = -1;
for(var i=0; i<magnets.length; i++){
if(magnetic(magnets[i]) == true){
magnet = i;
}
}
return magnet;
}
$(window).scroll(function() {
$('.counter').html("");
$('.counter').append("<p>"+inRange()+"</p>");
if(active == true && inRange != -1){
attract(magnets[inRange()]);
}
else if(active == false && inRange() == -1){
active = true;
}
else if(active == true && inRange() == -1){
console.log("fuck");
}
});
});
альтернатива codepen ссылка: http://codepen.io/NiclasvanEyk/pen/jEMrZr