Sobes.tech
Junior

JavaScript-də brauzer tarixini necə idarə etmək olar, irəli və geri hərəkət edərək?

sobes.tech Süni İntellekt

AI-dan cavab

history obyekti brauzerin sessiya tarixinə giriş imkanı verir. İdarə etmək üçün əsas metodlar:

  • history.back(): tarixdə bir səhifə geri qayıdır.
  • history.forward(): tarixdə bir səhifə irəli gedir.
  • history.go(delta): tarixdə göstərilən addım sayına keçid edir (delta mənfi ola bilər, geri qayıtmaq üçün).

İstifadə nümunəsi:

// Əvvəlki səhifəyə qayıt
history.back();

// Növbəti səhifəyə keç
history.forward();

// İki səhifə geri
history.go(-2);

// Üç səhifə irəli
history.go(3);

Həmçinin, history obyekti səhifəni yeniləmədən tarix vəziyyətini idarə etməyə imkan verir; pushStatereplaceState metodlarından istifadə edilir.

  • history.pushState(state, title, url): yeni vəziyyət əlavə edir.
    • state: tarix qeydiylə əlaqəli vəziyyət obyekti.
    • title: səhifənin başlığı (əksər brauzerlər tərəfindən nəzərə alınmır).
    • url: tarix qeydiylə əlaqəli URL.
  • history.replaceState(state, title, url): cari vəziyyəti dəyişdirir.

pushState nümunəsi:

// Yeni vəziyyət əlavə et
history.pushState({ page: 1 }, "Səhifə 1", "/page1");

// Tam yeniləmədən səhifədə əməliyyatlar

// İstifadəçi "geri" düyməsini basdıqda, `popstate` hadisəsi baş verir
window.addEventListener('popstate', function(event) {
  console.log('Vəziyyət dəyişdi:', event.state); // { page: 1 }
  // Səhifənin məzmununu vəziyyətə uyğun yenilə
});

replaceState nümunəsi:

// Cari vəziyyəti dəyişdir
history.replaceState({ tab: 'active' }, "Aktiv tab", "/active-tab");

popstate hadisəsi sessiya tarixində qeyd aktivləşdirildikdə baş verir.