اسکرول کردن در قالب وان اسکرول
سلام
من یک قالب وان اسکرول طراحی کردم و ربطی به جوملا و ورد پرس و... نداره
سایتم ساده هست
توی قالب اومدم چند تا قسمت تعریف کردم که هر قسمت به اندازه یک صفحه سایت هست
و به هر قسمت یک id دادم
میخوام هروقت توی هر id که هستم وقتی اسکرول بالا میکنم مسقیم بره به id بالایی و هر وقت اسکرول پایین میکنم مستقیم بره به پایینی
لطفا کمکم کنید.
نقل قول: اسکرول کردن در قالب وان اسکرول
تا اینجاش را رفتم ولی با اولین اسکرول میره به آخرین id
$(function () { var lastScroll = 0;
$(window).scroll(function (event) {
var st = $(this).scrollTop();
if (st > lastScroll) {
if (st > 0 && st < ($(window).height())) {
$(window).stop().scrollTop($('#Chap').offset().top );
}
if (st > $(window).height() && ($(window).height() * 2)) {
$(window).stop().scrollTop($('#soft').offset().top );
}
if (st > ($(window).height() * 2) && ($(window).height() * 3)) {
$(window).stop().scrollTop($('#adv').offset().top) ;
}
}
else {
if (st > $(window).height() && ($(window).height() * 2)) {
$(window).stop().scrollTop($('#home').offset().top );
}
if (st > ($(window).height() * 2) && ($(window).height() * 3)) {
$(window).stop().scrollTop($('#chap').offset().top );
}
}
lastScroll = st;
});
});
نقل قول: اسکرول کردن در قالب وان اسکرول
من نمیدونم مشکلت چیه چون نمیتونم تست کنم و کد هم زیاده و محاسبات ریاضی داره که با نگاه کردن نمیشه فهمید چیه مشکل
ولی دیباگ کردن و فهمیدن مشکل سادست
شما میدونی که با اولین اسکرول فلان قطعه کد باید اجرا بشه ولی نمیشه و قطعه دیگری اجرا میشه
کافیه که مسیر اجرا رو چک کنی ببینی کجا از مسیر اصلی کد های اجرا شده خارج میشن
با این شکل که توی مسیری که باید اجرا بشه alert میکنییک چیزی رو مثلا اینجوری alert گزاری میکنی کد رو ( یا کنسول لاگ اگه بلدی با کنسول کار کنی )
if (st > lastScroll) {
alert(1);
}
else {
alert(2);
}
و به همین شکل بقیه قسمت ها رو و متوجه میشی که کدوم مسیر کد داره اجرا میشه و اگه غلط داره میره یه مسیر رو بررسی میکنی که چرا غلط میره ..... در کل بجای منظور اینه که بجای اینکه بشینی کد رو نگاه کنی شروع کن به خروجی گرفتن از داده های تو کد (ملا آفست ها ) و مسیر های کد