netwons

لودینگ کردن سایت در زمانی که اسکرول می کنیم

netwons ۱۳۹۷/۱۰/۱۱ زبان برنامه‌نویسی پی‌اچ‌پی

بزارید با مثال بگم زمانی که آپارات را باز میکنید و اسکرول میکنید دوباره فیلم های بیشتری رو برای شما لود میکنه این قضیه رو ما چطوری میتونیم با curl دریافت کنیم من می خواهم فیلم های صفحه اول آپارات رو بگیرم اما تعداد محدودی فیلم به من میده می خواهم به صورت اتوماتیک اسکرول کنه و فیلم های بیشتری رو برای من فراخوانی کنه نمیدونم منظورم رو گرفتید یا نه

پاسخ‌ها به این تاپیک
سید جعفر اسمعیلی
سید جعفر اسمعیلیطراح و توسعه دهنده وب
۱۳۹۷/۱۰/۱۴

سلام دوست عزیز برای اینکه اسکرول بی نهایت داشه باشیم باید موقع اسکرول چک کنیم اگه اسکرول مثلا کوچکتر از10 باشد درخواست رو با ajax و یا pjax ارسال کند و پاسخ رو دریافت کند و بعد دریافت به صفحه اضافه کنید.

نمونه کد چک کردن اسکرول و ارسال درخواست با ajax  به فایل load.php:

 $(document).ready(function(){

        var load=0;
    function loading()
        {
            $.post("load.php",{load:load},function (data){
            if(data!="") {$("#infinit").append(data);}
            else {  $("#loading").empty(); }
            });
        }//end load funcs
        loading();

        $(window).scroll(function(){
            var window_top = $(window).scrollTop();
            var document_h = $(document).height();
            var window_h = $(window).height();
            var size=10;
            var window_size=document_h - window_h;

            if(window_top/(window_size)>size)
            {
                load+=2;
                loading();
            }
        });

    });

داخل فایل load.php داده رو دریافت  کنید و درخواست با curl یا هر چیزی که مد نظرتون انجام دهید.این فایل load.php

 $loading=$_POST['load'];

در آخر اینو بگم که نمونه کد با jquery است لازم ندیدم با vue بفرستم اگه نیاز بود پیام بده بفرستم 

علیرضا حسن نژاد
علیرضا حسن نژادگیک فول استک دولوپر هستم
۱۳۹۷/۱۰/۱۲

شما اول بسته به فریم ورک جاوااسکریپی که دارین کار میکنین، میتونین توی اینترنت در مورد infinit scroll جستجو کنی که بحث های گوناگون زیاد و ابزار های زیادی وجود دارن که این کار رو انجام میدن.

موفق باشی